Is it recommended to have a clustering and partitioning for tables?

Is it recommended to have a clustering and partitioning for tables?

For tables that have a “stable” size - e.g. think of “master data” - partitioning doesn’t make so much sense.

For tables which are constantly growing, like time series data, partitioning is beneficial. One advantage is that you can adjust the number of shards for new partitions. Another that deleting whole partitions is cheap, compared to deleting individual documents.

Using a custom CLUSTERED BY column is for more advanced use-cases, where you have a good reason to use it.

Documentation on partitions:
https://crate.io/docs/crate/reference/en/latest/general/ddl/partitioned-tables.html
https://crate.io/docs/crate/reference/en/latest/sql/statements/create-table.html?highlight=clustered#partitioned-by

Documentation on custom clustered by:
https://crate.io/docs/crate/reference/en/latest/sql/statements/create-table.html?highlight=clustered#clustered