Hpt validating performance tools speed dating funny or die
We wanted to be mindful of provisioning our clusters, scaling them either horizontally (by adding nodes) or vertically (by upgrading the instance types), and operating under different workloads and conditions, such as node failures, network partitions, etc.
As new data store systems appear in the market, they tend to report performance numbers for the “sweet spot”, and are usually based on optimized hardware and benchmark configurations.
NDBench aids in simulating the performance benchmark by mimicking several production use cases.
There were also some additional requirements; for example, as we upgrade our data store systems (such as Cassandra upgrades) we wanted to test the systems prior to deploying them in production.
Understanding the performance implications of new microservices on our backend systems was also a difficult task.
We needed a framework that could assist us in determining the behavior of our data store systems under various workloads, maintenance operations and instance types.
In Figure 4, we showcase the three phases of the migration process by using NDBench’s long-running benchmark capability.
NDBench-core is the core component of NDBench, where one can further tune workload settings.
A screenshot of the NDBench Runner (Web UI) is shown in Figure 2.
A couple of months ago, we finished the Cassandra migration from version 2.0 to 2.1.
Prior to starting the process, it was imperative for us to understand the performance gains that we would achieve, as well as the performance hit we would incur during the rolling upgrade of our Cassandra instances.
Being a cloud-native database team, we want to make sure that our systems can provide high availability under multiple failure scenarios, and that we are utilizing our instance resources optimally.