We have put in our best efforts to make Skytable really fast — but usage patterns can greatly affect how well Skytable performs for you, and how well you are able to exploit the on metal performance that Skytable can provide. Here are some quick pointers to get maximum performance:
Try to have a lesser number of tables
The number of tables you can create is virtually unlimited, but however, creating a huge number of tables (say over 60,000) can hurt performance.
Try to use default connection level containers
Although you are free to run actions by specifying the table to use, it has a runtime cost because the table has to be looked up and errors need to be handled. Instead, try using default containers wherever possible. For example, if you have a table
cakesin a keyspace
birthdayand your application will be using this table for the most part, it's a good idea to run
use birthday:cakesafter connecting and then using the actions without specifying a table (or keyspace). This avoids the lookup and error handling cost.
If you know your data in keymap tables has valid unicode, try using the
binstrtype instead. This is because unicode validation adds a very small runtime cost