From 9b113ffd3ecb5d7d31184e8ea0afe2b452b9800f Mon Sep 17 00:00:00 2001 From: Avi Kivity Date: Tue, 14 Feb 2017 14:32:53 +0200 Subject: [PATCH] config: enable new sharding algorithm for new deployments Set murmur3_partitioner_ignore_msb_bits to 12 (enabling the new sharding algorithm), but do this in scylla.yaml rather than the built-in defaults. This avoids changing the configuration for existing clusters, as their scylla.yaml file will not be updated during the upgrade. Message-Id: <20170214123253.3933-1-avi@scylladb.com> --- conf/scylla.yaml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/conf/scylla.yaml b/conf/scylla.yaml index 23b22521d1..7d02952b65 100644 --- a/conf/scylla.yaml +++ b/conf/scylla.yaml @@ -783,3 +783,23 @@ commitlog_total_space_in_mb: -1 # By default, Scylla binds all interfaces to the prometheus API # It is possible to restrict the listening address to a specific one # prometheus_address: 0.0.0.0 + +# Distribution of data among cores (shards) within a node +# +# Scylla distributes data within a node among shards, using a round-robin +# strategy: +# [shard0] [shard1] ... [shardN-1] [shard0] [shard1] ... [shardN-1] ... +# +# Scylla versions 1.6 and below used just one repetition of the pattern; +# this intefered with data placement among nodes (vnodes). +# +# Scylla versions 1.7 and above use 4096 repetitions of the pattern; this +# provides for better data distribution. +# +# the value below is log (base 2) of the number of repetitions. +# +# Set to 0 to avoid rewriting all data when upgrading from Scylla 1.6 and +# below. +# +# Keep at 12 for new clusters. +murmur3_partitioner_ignore_msb_bits: 12