scylladb / scylla-bench

42 stars 34 forks source link

Extend scylla-bench to create tables (keyspaces) with tablets enabled #132

Closed avelanarius closed 8 months ago

avelanarius commented 8 months ago

Tablets is an upcoming feature of ScyllaDB. Keyspaces created with tablets (https://github.com/scylladb/scylladb/blob/master/docs/cql/ddl.rst#the-tablets-property-label-cautionexperimental) organize the data in a different fashion than regular ring-based keyspaces. Scylla-bench should be extended to be able to create keyspaces with tablets enable so we can better test this functionality.

fruch commented 8 months ago

@xemul do we really need this with modern scylla ?

xemul commented 8 months ago

We still need to start Scylla with --experimental-feature tablets (and consistent-topology-chagnes). Not more than that tough

avelanarius commented 8 months ago

Not more than that tough

I'm not sure I follow you - this issue is just about making sure that scylla-bench can emit CREATE KEYSPACE ... WITH ... AND tablets = {'initial': X} - that the tool has some command line argument to control that.

avelanarius commented 8 months ago

Or is there some setting in Scylla that turns it on by default for all new keyspaces? (I missed this if this was added)

fruch commented 8 months ago

Or is there some setting in Scylla that turns it on by default for all new keyspaces? (I missed this if this was added)

see https://github.com/scylladb/scylladb/pull/16364

so to enable tablets one needs only to enable the feature.

if you want to change the numbers of initial, you can use the keyspace creation for that.

we can overcome that as well in SCT for example, and pre create the schema (we already have code for that. s-b schema isn't that complex, and doesn't change much)

so it's a nice to have feature, to pass in extra arguments to create schema, but not a must

roydahan commented 8 months ago

I don't think there is a need to support tablets in any of the tools at the moment. If a such a need arises, we can reopen this to discussion.

mykaul commented 8 months ago

I don't think there is a need to support tablets in any of the tools at the moment. If a such a need arises, we can reopen this to discussion.

Why not? @roydahan - I fail to see the reason we would not have it in all tools.

roydahan commented 8 months ago

I fail to see why the client would need to define it from the client side. Like many other schema parameters we don't control from the outside.

If there is a demand for the long term to test it with various configurations, it will make sense.