New in version 5.0.0.
Groonga has Limitations against table size. You can't add 268,435,455 more records in one table.
Groonga supports time based sharding to resolve the limitation.
It works in the same database. It doesn't work with multiple databases. It means that this sharding feature isn't for distributing large data to multiple hosts.
Sharding is implemented in
sharding plugin. The plugin is written
in mruby. You need to enable mruby when you build Groonga.
You can confirm whether your Groonga supports mruby or not by
--version command line argument of
groonga executable file:
% groonga --version groonga 5.0.5 [...,mruby,...] configure options: <...>
If you find
mruby, your Groonga supports mruby.
sharding plugin requires some rules against table and column. You
need to follow these rules. They are described later.
|Logical table||It's a table that consists of shards. It doesn't exist in Groonga database. It just exists in our minds.|
|Logical table name||The name of logical table. It's prefix of shard names. For
It's a table that has records in a day or month. One shard has only partial records.
Shard name (= table name) must follow