SonicBase. In-memory embedded or distributed streaming sql database

Range Query Benchmark

In this benchmark we create a range query that selects the entire database and we iterate over all the results on a 4, 8, 16, and 32 server cluster.


PreparedStatement stmt = con.prepareStatement("select persons.id1, id2 from persons where id1 >= 0 order by id1 asc);
ResultSet rs = stmt.executeQuery();
for (int i = 0; ; i++) {
    if (!rs.next()) {
        break;
    }
}
            
Metric 4-server 8-server 16-server 32-server
Record size 120 bytes 120 bytes 120 bytes 120 bytes
Record count 750 million 1.5 billion 3 billion 6 billion
Server total mem 60g 60g 60g 60g
Server xmx 36g 36g 36g 36g
Resident mem 52g 52g 52g 52g
Client machine count 8 16 32 64
Cores per client machine 4 4 4 4
Cores per server machine 8 8 8 8
Call rate 9 mil/sec 19 mil/sec 33 mil/sec 68 mil/sec
Call latency 55 micros 54 micros 64 micros 59 micros
Threads per client 16 16 16 16
Shard Count 4 8 15 32
Replica Count 1 1 1 1