Reading above example that sounds easy to answer, right? But unfortunately it isn't. The above example is an extreme example, real-world usage will in most cases not be that compressible and the network speed is typically variable. On a 100MBit network for example, ZIP compression makes the transfer slower by a factor of 2 because the compression takes longer than the actual transfer.

NexusDB lets you set the compression type and batch mode and size on a per client basis. This gives you full control of how a client uses them and thus you can tweak the client for different network connections.

To figure out the best settings, each application and its data needs to be looked at by the developer. The best way to do this is by having an application option (e.g. ini file) that allows enabling and tweaking of the 2 or 3 properties involved. Our tests show that for connections below 2Mbit compression and batch modes become the way to go. Using speeds between 2Mbit and 10Mbit leaves both modes at about the same result, while for everything above 10Mbit the compression should be better left alone.

Home | Site Contents | Documentation | NexusDB Manual V4 | Architecture and Concepts | NexusDB Concepts | Transports | Selecting the correct Transport