Loading...

Skytable 0.8.3: Full-spectrum perf analysis, better backups

May 31, 2024
By Sayan Nandan

We’re extremely happy to announce the release of Skytable 0.8.3. This release adds several utility features that will enable easier administration of Skytable.

A new benchmark engine

Skytable’s benchmarking system has been completely rewritten from the ground up to enable sophisticated and precise measurements of database performance. The previous releases of the benchmarking tool only provided basic metrics such as seeing the QPS along with the max and min latency. With this update, Skytable users can go deep into performance analysis with several available metrics such as stability of throughput and latency distributions.

Here’s a report of the INSERT benchmark from a run on my laptop:

---------
1. INSERT  
---------
Throughput (raw)  : 604,919.1298 queries/sec
Throughput (full) : 601,931.1540 queries/sec
Queries executed  : 1,000,000
Server latency
    mean  (ms): 0.15865472600000002
    min   (ms): 0.009
    max   (ms): 8.48
    stdev (ms): 0.08350835581851242
Full latency
    mean  (ms): 0.15865472600000002
    min   (ms): 0.009
    max   (ms): 8.48
    stdev (ms): 0.08350835581851242
Latency distribution
    Server: 99% <= 0.443 ms, 95% <= 0.299 ms, 90% <= 0.252 ms, 85% <= 0.228 ms, 80% <= 0.21 ms, 75% <= 0.196 ms, 70% <= 0.184 ms, 65% <= 0.173 ms, 60% <= 0.162 ms, 55% <= 0.153 ms, 50% <= 0.144 ms
    Full  : 99% <= 0.443 ms, 95% <= 0.299 ms, 90% <= 0.252 ms, 85% <= 0.228 ms, 80% <= 0.21 ms, 75% <= 0.196 ms, 70% <= 0.184 ms, 65% <= 0.173 ms, 60% <= 0.162 ms, 55% <= 0.153 ms, 50% <= 0.144 ms

As you can see, we now dive deep into the latency distribution, the mean, median and maximum latencies along with information on the standard deviation of the latencies which can enable you to see how consistent the latencies are. The server and full latencies are also reported, which is the time it takes for the client to first receive a response from the server and the time it takes for the full response to be received from the server respectively.

Unlike the previous output, we believe this new utility will enable you to dive deep into performance analysis and find any performance bottlenecks, such as slow I/O (for example, when full latency » server latency).

Easier backup and restore

We’ve made it incredibly simple to backup and restore data. To back data up, you can simply run:

skyd backup --to /path/to/backup --kind direct

On the other hand, to restore you can simply run:

skyd restore --from /path/to/backup

Both the backup and restore utilities have several safeguards in place to ensure that you don’t accidentally restore invalid backups. See the skyd backup -h and skyd restore -h help menus for more information.

Looking ahead

This release enables powerful performance analysis along with easier administration operations. We also made several fixes and improvements under the hood which improves the stability of the engine. Also do note that you’ll see a lot of clustering related terminology (for example, the restore tool checks the hostname) and this is normal! We’re preparing for a full rollout of the distributed engine and we are very excited for you to try it out too!

As always, please go ahead and download the latest release, try it out and send us any bug reports or suggestions. We’ll see you at the next release :)



Last updated on: May 31, 2024
2 min read
Get our source code here
Share this post:
Top