github.com/apache/beam/sdks/v2@v2.48.2/java/io/hadoop-format/src/test/resources/cassandra.yaml (about) 1 # 2 # Licensed to the Apache Software Foundation (ASF) under one 3 # or more contributor license agreements. See the NOTICE file 4 # distributed with this work for additional information 5 # regarding copyright ownership. The ASF licenses this file 6 # to you under the Apache License, Version 2.0 (the 7 # "License"); you may not use this file except in compliance 8 # with the License. You may obtain a copy of the License at 9 # 10 # http://www.apache.org/licenses/LICENSE-2.0 11 # 12 # Unless required by applicable law or agreed to in writing, 13 # software distributed under the License is distributed on an 14 # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 # KIND, either express or implied. See the License for the 16 # specific language governing permissions and limitations 17 # under the License. 18 # 19 20 # Cassandra storage config YAML required for Embedded Cassandra server test 21 22 # NOTE: 23 # See http://wiki.apache.org/cassandra/StorageConfiguration for 24 # full explanations of configuration directives 25 # /NOTE 26 27 # The name of the cluster. This is mainly used to prevent machines in 28 # one logical cluster from joining another. 29 cluster_name: 'beam' 30 31 # This defines the number of tokens randomly assigned to this node on the ring 32 # The more tokens, relative to other nodes, the larger the proportion of data 33 # that this node will store. You probably want all nodes to have the same number 34 # of tokens assuming they have equal hardware capability. 35 # 36 # If you leave this unspecified, Cassandra will use the default of 1 token for legacy compatibility, 37 # and will use the initial_token as described below. 38 # 39 # Specifying initial_token will override this setting on the node's initial start, 40 # on subsequent starts, this setting will apply even if initial token is set. 41 # 42 # If you already have a cluster with 1 token per node, and wish to migrate to 43 # multiple tokens per node, see http://wiki.apache.org/cassandra/Operations 44 num_tokens: 1 45 46 # Triggers automatic allocation of num_tokens tokens for this node. The allocation 47 # algorithm attempts to choose tokens in a way that optimizes replicated load over 48 # the nodes in the datacenter for the replication strategy used by the specified 49 # keyspace. 50 # 51 # The load assigned to each node will be close to proportional to its number of 52 # vnodes. 53 # 54 # Only supported with the Murmur3Partitioner. 55 # allocate_tokens_for_keyspace: KEYSPACE 56 57 # initial_token allows you to specify tokens manually. While you can use # it with 58 # vnodes (num_tokens > 1, above) -- in which case you should provide a 59 # comma-separated list -- it's primarily used when adding nodes # to legacy clusters 60 # that do not have vnodes enabled. 61 # initial_token: 62 63 # See http://wiki.apache.org/cassandra/HintedHandoff 64 # May either be "true" or "false" to enable globally 65 hinted_handoff_enabled: true 66 # When hinted_handoff_enabled is true, a blocklist of data centers that will not 67 # perform hinted handoff 68 #hinted_handoff_disabled_datacenters: 69 # - DC1 70 # - DC2 71 # this defines the maximum amount of time a dead host will have hints 72 # generated. After it has been dead this long, new hints for it will not be 73 # created until it has been seen alive and gone down again. 74 max_hint_window_in_ms: 10800000 # 3 hours 75 76 # Maximum throttle in KBs per second, per delivery thread. This will be 77 # reduced proportionally to the number of nodes in the cluster. (If there 78 # are two nodes in the cluster, each delivery thread will use the maximum 79 # rate; if there are three, each will throttle to half of the maximum, 80 # since we expect two nodes to be delivering hints simultaneously.) 81 hinted_handoff_throttle_in_kb: 1024 82 83 # Number of threads with which to deliver hints; 84 # Consider increasing this number when you have multi-dc deployments, since 85 # cross-dc handoff tends to be slower 86 max_hints_delivery_threads: 2 87 88 # Directory where Cassandra should store hints. 89 # If not set, the default directory is $CASSANDRA_HOME/data/hints. 90 # hints_directory: /var/lib/cassandra/hints 91 hints_directory: target/cassandra/hints 92 93 # How often hints should be flushed from the internal buffers to disk. 94 # Will *not* trigger fsync. 95 hints_flush_period_in_ms: 10000 96 97 # Maximum size for a single hints file, in megabytes. 98 max_hints_file_size_in_mb: 128 99 100 # Compression to apply to the hint files. If omitted, hints files 101 # will be written uncompressed. LZ4, Snappy, and Deflate compressors 102 # are supported. 103 #hints_compression: 104 # - class_name: LZ4Compressor 105 # parameters: 106 # - 107 108 # Maximum throttle in KBs per second, total. This will be 109 # reduced proportionally to the number of nodes in the cluster. 110 batchlog_replay_throttle_in_kb: 1024 111 112 # Authentication backend, implementing IAuthenticator; used to identify users 113 # Out of the box, Cassandra provides org.apache.cassandra.auth.{AllowAllAuthenticator, 114 # PasswordAuthenticator}. 115 # 116 # - AllowAllAuthenticator performs no checks - set it to disable authentication. 117 # - PasswordAuthenticator relies on username/password pairs to authenticate 118 # users. It keeps usernames and hashed passwords in system_auth.credentials table. 119 # Please increase system_auth keyspace replication factor if you use this authenticator. 120 # If using PasswordAuthenticator, CassandraRoleManager must also be used (see below) 121 authenticator: AllowAllAuthenticator 122 123 # Authorization backend, implementing IAuthorizer; used to limit access/provide permissions 124 # Out of the box, Cassandra provides org.apache.cassandra.auth.{AllowAllAuthorizer, 125 # CassandraAuthorizer}. 126 # 127 # - AllowAllAuthorizer allows any action to any user - set it to disable authorization. 128 # - CassandraAuthorizer stores permissions in system_auth.permissions table. Please 129 # increase system_auth keyspace replication factor if you use this authorizer. 130 authorizer: AllowAllAuthorizer 131 132 # Part of the Authentication & Authorization backend, implementing IRoleManager; used 133 # to maintain grants and memberships between roles. 134 # Out of the box, Cassandra provides org.apache.cassandra.auth.CassandraRoleManager, 135 # which stores role information in the system_auth keyspace. Most functions of the 136 # IRoleManager require an authenticated login, so unless the configured IAuthenticator 137 # actually implements authentication, most of this functionality will be unavailable. 138 # 139 # - CassandraRoleManager stores role data in the system_auth keyspace. Please 140 # increase system_auth keyspace replication factor if you use this role manager. 141 role_manager: CassandraRoleManager 142 143 # Validity period for roles cache (fetching granted roles can be an expensive 144 # operation depending on the role manager, CassandraRoleManager is one example) 145 # Granted roles are cached for authenticated sessions in AuthenticatedUser and 146 # after the period specified here, become eligible for (async) reload. 147 # Defaults to 2000, set to 0 to disable caching entirely. 148 # Will be disabled automatically for AllowAllAuthenticator. 149 roles_validity_in_ms: 2000 150 151 # Refresh interval for roles cache (if enabled). 152 # After this interval, cache entries become eligible for refresh. Upon next 153 # access, an async reload is scheduled and the old value returned until it 154 # completes. If roles_validity_in_ms is non-zero, then this must be 155 # also. 156 # Defaults to the same value as roles_validity_in_ms. 157 # roles_update_interval_in_ms: 2000 158 159 # Validity period for permissions cache (fetching permissions can be an 160 # expensive operation depending on the authorizer, CassandraAuthorizer is 161 # one example). Defaults to 2000, set to 0 to disable. 162 # Will be disabled automatically for AllowAllAuthorizer. 163 permissions_validity_in_ms: 2000 164 165 # Refresh interval for permissions cache (if enabled). 166 # After this interval, cache entries become eligible for refresh. Upon next 167 # access, an async reload is scheduled and the old value returned until it 168 # completes. If permissions_validity_in_ms is non-zero, then this must be 169 # also. 170 # Defaults to the same value as permissions_validity_in_ms. 171 # permissions_update_interval_in_ms: 2000 172 173 # Validity period for credentials cache. This cache is tightly coupled to 174 # the provided PasswordAuthenticator implementation of IAuthenticator. If 175 # another IAuthenticator implementation is configured, this cache will not 176 # be automatically used and so the following settings will have no effect. 177 # Please note, credentials are cached in their encrypted form, so while 178 # activating this cache may reduce the number of queries made to the 179 # underlying table, it may not bring a significant reduction in the 180 # latency of individual authentication attempts. 181 # Defaults to 2000, set to 0 to disable credentials caching. 182 credentials_validity_in_ms: 2000 183 184 # Refresh interval for credentials cache (if enabled). 185 # After this interval, cache entries become eligible for refresh. Upon next 186 # access, an async reload is scheduled and the old value returned until it 187 # completes. If credentials_validity_in_ms is non-zero, then this must be 188 # also. 189 # Defaults to the same value as credentials_validity_in_ms. 190 # credentials_update_interval_in_ms: 2000 191 192 # The partitioner is responsible for distributing groups of rows (by 193 # partition key) across nodes in the cluster. You should leave this 194 # alone for new clusters. The partitioner can NOT be changed without 195 # reloading all data, so when upgrading you should set this to the 196 # same partitioner you were already using. 197 # 198 # Besides Murmur3Partitioner, partitioners included for backwards 199 # compatibility include RandomPartitioner, ByteOrderedPartitioner, and 200 # OrderPreservingPartitioner. 201 # 202 partitioner: org.apache.cassandra.dht.Murmur3Partitioner 203 204 # Directories where Cassandra should store data on disk. Cassandra 205 # will spread data evenly across them, subject to the granularity of 206 # the configured compaction strategy. 207 # If not set, the default directory is $CASSANDRA_HOME/data/data. 208 # data_file_directories: 209 # - /var/lib/cassandra/data 210 data_file_directories: 211 - target/cassandra/data 212 213 # commit log. when running on magnetic HDD, this should be a 214 # separate spindle than the data directories. 215 # If not set, the default directory is $CASSANDRA_HOME/data/commitlog. 216 # commitlog_directory: /var/lib/cassandra/commitlog 217 commitlog_directory: target/cassandra/commitlog 218 cdc_raw_directory: target/cassandra/cdc_raw 219 # policy for data disk failures: 220 # die: shut down gossip and client transports and kill the JVM for any fs errors or 221 # single-sstable errors, so the node can be replaced. 222 # stop_paranoid: shut down gossip and client transports even for single-sstable errors, 223 # kill the JVM for errors during startup. 224 # stop: shut down gossip and client transports, leaving the node effectively dead, but 225 # can still be inspected via JMX, kill the JVM for errors during startup. 226 # best_effort: stop using the failed disk and respond to requests based on 227 # remaining available sstables. This means you WILL see obsolete 228 # data at CL.ONE! 229 # ignore: ignore fatal errors and let requests fail, as in pre-1.2 Cassandra 230 disk_failure_policy: stop 231 232 # policy for commit disk failures: 233 # die: shut down gossip and Thrift and kill the JVM, so the node can be replaced. 234 # stop: shut down gossip and Thrift, leaving the node effectively dead, but 235 # can still be inspected via JMX. 236 # stop_commit: shutdown the commit log, letting writes collect but 237 # continuing to service reads, as in pre-2.0.5 Cassandra 238 # ignore: ignore fatal errors and let the batches fail 239 commit_failure_policy: stop 240 241 # Maximum size of the native protocol prepared statement cache 242 # 243 # Valid values are either "auto" (omitting the value) or a value greater 0. 244 # 245 # Note that specifying a too large value will result in long running GCs and possbily 246 # out-of-memory errors. Keep the value at a small fraction of the heap. 247 # 248 # If you constantly see "prepared statements discarded in the last minute because 249 # cache limit reached" messages, the first step is to investigate the root cause 250 # of these messages and check whether prepared statements are used correctly - 251 # i.e. use bind markers for variable parts. 252 # 253 # Do only change the default value, if you really have more prepared statements than 254 # fit in the cache. In most cases it is not neccessary to change this value. 255 # Constantly re-preparing statements is a performance penalty. 256 # 257 # Default value ("auto") is 1/256th of the heap or 10MB, whichever is greater 258 prepared_statements_cache_size_mb: 259 260 # Maximum size of the Thrift prepared statement cache 261 # 262 # If you do not use Thrift at all, it is safe to leave this value at "auto". 263 # 264 # See description of 'prepared_statements_cache_size_mb' above for more information. 265 # 266 # Default value ("auto") is 1/256th of the heap or 10MB, whichever is greater 267 thrift_prepared_statements_cache_size_mb: 268 269 # Maximum size of the key cache in memory. 270 # 271 # Each key cache hit saves 1 seek and each row cache hit saves 2 seeks at the 272 # minimum, sometimes more. The key cache is fairly tiny for the amount of 273 # time it saves, so it's worthwhile to use it at large numbers. 274 # The row cache saves even more time, but must contain the entire row, 275 # so it is extremely space-intensive. It's best to only use the 276 # row cache if you have hot rows or static rows. 277 # 278 # NOTE: if you reduce the size, you may not get you hottest keys loaded on startup. 279 # 280 # Default value is empty to make it "auto" (min(5% of Heap (in MB), 100MB)). Set to 0 to disable key cache. 281 key_cache_size_in_mb: 282 283 # Duration in seconds after which Cassandra should 284 # save the key cache. Caches are saved to saved_caches_directory as 285 # specified in this configuration file. 286 # 287 # Saved caches greatly improve cold-start speeds, and is relatively cheap in 288 # terms of I/O for the key cache. Row cache saving is much more expensive and 289 # has limited use. 290 # 291 # Default is 14400 or 4 hours. 292 key_cache_save_period: 14400 293 294 # Number of keys from the key cache to save 295 # Disabled by default, meaning all keys are going to be saved 296 # key_cache_keys_to_save: 100 297 298 # Row cache implementation class name. 299 # Available implementations: 300 # org.apache.cassandra.cache.OHCProvider Fully off-heap row cache implementation (default). 301 # org.apache.cassandra.cache.SerializingCacheProvider This is the row cache implementation availabile 302 # in previous releases of Cassandra. 303 # row_cache_class_name: org.apache.cassandra.cache.OHCProvider 304 305 # Maximum size of the row cache in memory. 306 # Please note that OHC cache implementation requires some additional off-heap memory to manage 307 # the map structures and some in-flight memory during operations before/after cache entries can be 308 # accounted against the cache capacity. This overhead is usually small compared to the whole capacity. 309 # Do not specify more memory that the system can afford in the worst usual situation and leave some 310 # headroom for OS block level cache. Do never allow your system to swap. 311 # 312 # Default value is 0, to disable row caching. 313 row_cache_size_in_mb: 0 314 315 # Duration in seconds after which Cassandra should save the row cache. 316 # Caches are saved to saved_caches_directory as specified in this configuration file. 317 # 318 # Saved caches greatly improve cold-start speeds, and is relatively cheap in 319 # terms of I/O for the key cache. Row cache saving is much more expensive and 320 # has limited use. 321 # 322 # Default is 0 to disable saving the row cache. 323 row_cache_save_period: 0 324 325 # Number of keys from the row cache to save. 326 # Specify 0 (which is the default), meaning all keys are going to be saved 327 # row_cache_keys_to_save: 100 328 329 # Maximum size of the counter cache in memory. 330 # 331 # Counter cache helps to reduce counter locks' contention for hot counter cells. 332 # In case of RF = 1 a counter cache hit will cause Cassandra to skip the read before 333 # write entirely. With RF > 1 a counter cache hit will still help to reduce the duration 334 # of the lock hold, helping with hot counter cell updates, but will not allow skipping 335 # the read entirely. Only the local (clock, count) tuple of a counter cell is kept 336 # in memory, not the whole counter, so it's relatively cheap. 337 # 338 # NOTE: if you reduce the size, you may not get you hottest keys loaded on startup. 339 # 340 # Default value is empty to make it "auto" (min(2.5% of Heap (in MB), 50MB)). Set to 0 to disable counter cache. 341 # NOTE: if you perform counter deletes and rely on low gcgs, you should disable the counter cache. 342 counter_cache_size_in_mb: 343 344 # Duration in seconds after which Cassandra should 345 # save the counter cache (keys only). Caches are saved to saved_caches_directory as 346 # specified in this configuration file. 347 # 348 # Default is 7200 or 2 hours. 349 counter_cache_save_period: 7200 350 351 # Number of keys from the counter cache to save 352 # Disabled by default, meaning all keys are going to be saved 353 # counter_cache_keys_to_save: 100 354 355 # saved caches 356 # If not set, the default directory is $CASSANDRA_HOME/data/saved_caches. 357 # saved_caches_directory: /var/lib/cassandra/saved_caches 358 saved_caches_directory: target/cassandra/saved_caches 359 360 # commitlog_sync may be either "periodic" or "batch." 361 # 362 # When in batch mode, Cassandra won't ack writes until the commit log 363 # has been fsynced to disk. It will wait 364 # commitlog_sync_batch_window_in_ms milliseconds between fsyncs. 365 # This window should be kept short because the writer threads will 366 # be unable to do extra work while waiting. (You may need to increase 367 # concurrent_writes for the same reason.) 368 # 369 # commitlog_sync: batch 370 # commitlog_sync_batch_window_in_ms: 2 371 # 372 # the other option is "periodic" where writes may be acked immediately 373 # and the CommitLog is simply synced every commitlog_sync_period_in_ms 374 # milliseconds. 375 commitlog_sync: periodic 376 commitlog_sync_period_in_ms: 1 377 378 # The size of the individual commitlog file segments. A commitlog 379 # segment may be archived, deleted, or recycled once all the data 380 # in it (potentially from each columnfamily in the system) has been 381 # flushed to sstables. 382 # 383 # The default size is 32, which is almost always fine, but if you are 384 # archiving commitlog segments (see commitlog_archiving.properties), 385 # then you probably want a finer granularity of archiving; 8 or 16 MB 386 # is reasonable. 387 # Max mutation size is also configurable via max_mutation_size_in_kb setting in 388 # cassandra.yaml. The default is half the size commitlog_segment_size_in_mb * 1024. 389 # 390 # NOTE: If max_mutation_size_in_kb is set explicitly then commitlog_segment_size_in_mb must 391 # be set to at least twice the size of max_mutation_size_in_kb / 1024 392 # 393 commitlog_segment_size_in_mb: 32 394 395 # Compression to apply to the commit log. If omitted, the commit log 396 # will be written uncompressed. LZ4, Snappy, and Deflate compressors 397 # are supported. 398 #commitlog_compression: 399 # - class_name: LZ4Compressor 400 # parameters: 401 # - 402 403 # any class that implements the SeedProvider interface and has a 404 # constructor that takes a Map<String, String> of parameters will do. 405 seed_provider: 406 # Addresses of hosts that are deemed contact points. 407 # Cassandra nodes use this list of hosts to find each other and learn 408 # the topology of the ring. You must change this if you are running 409 # multiple nodes! 410 - class_name: org.apache.cassandra.locator.SimpleSeedProvider 411 parameters: 412 # seeds is actually a comma-delimited list of addresses. 413 # Ex: "<ip1>,<ip2>,<ip3>" 414 - seeds: "127.0.0.1" 415 416 # For workloads with more data than can fit in memory, Cassandra's 417 # bottleneck will be reads that need to fetch data from 418 # disk. "concurrent_reads" should be set to (16 * number_of_drives) in 419 # order to allow the operations to enqueue low enough in the stack 420 # that the OS and drives can reorder them. Same applies to 421 # "concurrent_counter_writes", since counter writes read the current 422 # values before incrementing and writing them back. 423 # 424 # On the other hand, since writes are almost never IO bound, the ideal 425 # number of "concurrent_writes" is dependent on the number of cores in 426 # your system; (8 * number_of_cores) is a good rule of thumb. 427 concurrent_reads: 32 428 concurrent_writes: 32 429 concurrent_counter_writes: 32 430 431 # For materialized view writes, as there is a read involved, so this should 432 # be limited by the less of concurrent reads or concurrent writes. 433 concurrent_materialized_view_writes: 32 434 435 # Maximum memory to use for sstable chunk cache and buffer pooling. 436 # 32MB of this are reserved for pooling buffers, the rest is used as an 437 # cache that holds uncompressed sstable chunks. 438 # Defaults to the smaller of 1/4 of heap or 512MB. This pool is allocated off-heap, 439 # so is in addition to the memory allocated for heap. The cache also has on-heap 440 # overhead which is roughly 128 bytes per chunk (i.e. 0.2% of the reserved size 441 # if the default 64k chunk size is used). 442 # Memory is only allocated when needed. 443 # file_cache_size_in_mb: 512 444 445 # Flag indicating whether to allocate on or off heap when the sstable buffer 446 # pool is exhausted, that is when it has exceeded the maximum memory 447 # file_cache_size_in_mb, beyond which it will not cache buffers but allocate on request. 448 449 # buffer_pool_use_heap_if_exhausted: true 450 451 # The strategy for optimizing disk read 452 # Possible values are: 453 # ssd (for solid state disks, the default) 454 # spinning (for spinning disks) 455 # disk_optimization_strategy: ssd 456 457 # Total permitted memory to use for memtables. Cassandra will stop 458 # accepting writes when the limit is exceeded until a flush completes, 459 # and will trigger a flush based on memtable_cleanup_threshold 460 # If omitted, Cassandra will set both to 1/4 the size of the heap. 461 # memtable_heap_space_in_mb: 2048 462 # memtable_offheap_space_in_mb: 2048 463 464 # Ratio of occupied non-flushing memtable size to total permitted size 465 # that will trigger a flush of the largest memtable. Larger mct will 466 # mean larger flushes and hence less compaction, but also less concurrent 467 # flush activity which can make it difficult to keep your disks fed 468 # under heavy write load. 469 # 470 # memtable_cleanup_threshold defaults to 1 / (memtable_flush_writers + 1) 471 # memtable_cleanup_threshold: 0.11 472 473 # Specify the way Cassandra allocates and manages memtable memory. 474 # Options are: 475 # heap_buffers: on heap nio buffers 476 # offheap_buffers: off heap (direct) nio buffers 477 # offheap_objects: off heap objects 478 memtable_allocation_type: heap_buffers 479 480 # Total space to use for commit logs on disk. 481 # 482 # If space gets above this value, Cassandra will flush every dirty CF 483 # in the oldest segment and remove it. So a small total commitlog space 484 # will tend to cause more flush activity on less-active columnfamilies. 485 # 486 # The default value is the smaller of 8192, and 1/4 of the total space 487 # of the commitlog volume. 488 # 489 # commitlog_total_space_in_mb: 8192 490 491 # This sets the amount of memtable flush writer threads. These will 492 # be blocked by disk io, and each one will hold a memtable in memory 493 # while blocked. 494 # 495 # memtable_flush_writers defaults to one per data_file_directory. 496 # 497 # If your data directories are backed by SSD, you can increase this, but 498 # avoid having memtable_flush_writers * data_file_directories > number of cores 499 #memtable_flush_writers: 1 500 501 # A fixed memory pool size in MB for for SSTable index summaries. If left 502 # empty, this will default to 5% of the heap size. If the memory usage of 503 # all index summaries exceeds this limit, SSTables with low read rates will 504 # shrink their index summaries in order to meet this limit. However, this 505 # is a best-effort process. In extreme conditions Cassandra may need to use 506 # more than this amount of memory. 507 index_summary_capacity_in_mb: 508 509 # How frequently index summaries should be resampled. This is done 510 # periodically to redistribute memory from the fixed-size pool to sstables 511 # proportional their recent read rates. Setting to -1 will disable this 512 # process, leaving existing index summaries at their current sampling level. 513 index_summary_resize_interval_in_minutes: 60 514 515 # Whether to, when doing sequential writing, fsync() at intervals in 516 # order to force the operating system to flush the dirty 517 # buffers. Enable this to avoid sudden dirty buffer flushing from 518 # impacting read latencies. Almost always a good idea on SSDs; not 519 # necessarily on platters. 520 trickle_fsync: false 521 trickle_fsync_interval_in_kb: 10240 522 523 # TCP port, for commands and data 524 # For security reasons, you should not expose this port to the internet. Firewall it if needed. 525 storage_port: 7000 526 527 # SSL port, for encrypted communication. Unused unless enabled in 528 # encryption_options 529 # For security reasons, you should not expose this port to the internet. Firewall it if needed. 530 ssl_storage_port: 7001 531 532 # Address or interface to bind to and tell other Cassandra nodes to connect to. 533 # You _must_ change this if you want multiple nodes to be able to communicate! 534 # 535 # Set listen_address OR listen_interface, not both. Interfaces must correspond 536 # to a single address, IP aliasing is not supported. 537 # 538 # Leaving it blank leaves it up to InetAddress.getLocalHost(). This 539 # will always do the Right Thing _if_ the node is properly configured 540 # (hostname, name resolution, etc), and the Right Thing is to use the 541 # address associated with the hostname (it might not be). 542 # 543 # Setting listen_address to 0.0.0.0 is always wrong. 544 # 545 # If you choose to specify the interface by name and the interface has an ipv4 and an ipv6 address 546 # you can specify which should be chosen using listen_interface_prefer_ipv6. If false the first ipv4 547 # address will be used. If true the first ipv6 address will be used. Defaults to false preferring 548 # ipv4. If there is only one address it will be selected regardless of ipv4/ipv6. 549 listen_address: localhost 550 # listen_interface: eth0 551 # listen_interface_prefer_ipv6: false 552 553 # Address to broadcast to other Cassandra nodes 554 # Leaving this blank will set it to the same value as listen_address 555 # broadcast_address: 1.2.3.4 556 557 # When using multiple physical network interfaces, set this 558 # to true to listen on broadcast_address in addition to 559 # the listen_address, allowing nodes to communicate in both 560 # interfaces. 561 # Ignore this property if the network configuration automatically 562 # routes between the public and private networks such as EC2. 563 # listen_on_broadcast_address: false 564 565 # Internode authentication backend, implementing IInternodeAuthenticator; 566 # used to allow/disallow connections from peer nodes. 567 # internode_authenticator: org.apache.cassandra.auth.AllowAllInternodeAuthenticator 568 569 # Whether to start the native transport server. 570 # Please note that the address on which the native transport is bound is the 571 # same as the rpc_address. The port however is different and specified below. 572 start_native_transport: true 573 # port for the CQL native transport to listen for clients on 574 # For security reasons, you should not expose this port to the internet. Firewall it if needed. 575 native_transport_port: 9042 576 # Enabling native transport encryption in client_encryption_options allows you to either use 577 # encryption for the standard port or to use a dedicated, additional port along with the unencrypted 578 # standard native_transport_port. 579 # Enabling client encryption and keeping native_transport_port_ssl disabled will use encryption 580 # for native_transport_port. Setting native_transport_port_ssl to a different value 581 # from native_transport_port will use encryption for native_transport_port_ssl while 582 # keeping native_transport_port unencrypted. 583 # native_transport_port_ssl: 9142 584 # The maximum threads for handling requests when the native transport is used. 585 # This is similar to rpc_max_threads though the default differs slightly (and 586 # there is no native_transport_min_threads, idle threads will always be stopped 587 # after 30 seconds). 588 # native_transport_max_threads: 128 589 # 590 # The maximum size of allowed frame. Frame (requests) larger than this will 591 # be rejected as invalid. The default is 256MB. If you're changing this parameter, 592 # you may want to adjust max_value_size_in_mb accordingly. 593 # native_transport_max_frame_size_in_mb: 256 594 595 # The maximum number of concurrent client connections. 596 # The default is -1, which means unlimited. 597 # native_transport_max_concurrent_connections: -1 598 599 # The maximum number of concurrent client connections per source ip. 600 # The default is -1, which means unlimited. 601 # native_transport_max_concurrent_connections_per_ip: -1 602 603 # Whether to start the thrift rpc server. 604 start_rpc: true 605 606 # The address or interface to bind the Thrift RPC service and native transport 607 # server to. 608 # 609 # Set rpc_address OR rpc_interface, not both. Interfaces must correspond 610 # to a single address, IP aliasing is not supported. 611 # 612 # Leaving rpc_address blank has the same effect as on listen_address 613 # (i.e. it will be based on the configured hostname of the node). 614 # 615 # Note that unlike listen_address, you can specify 0.0.0.0, but you must also 616 # set broadcast_rpc_address to a value other than 0.0.0.0. 617 # 618 # For security reasons, you should not expose this port to the internet. Firewall it if needed. 619 # 620 # If you choose to specify the interface by name and the interface has an ipv4 and an ipv6 address 621 # you can specify which should be chosen using rpc_interface_prefer_ipv6. If false the first ipv4 622 # address will be used. If true the first ipv6 address will be used. Defaults to false preferring 623 # ipv4. If there is only one address it will be selected regardless of ipv4/ipv6. 624 rpc_address: 127.0.0.1 625 # rpc_interface: eth1 626 # rpc_interface_prefer_ipv6: false 627 628 # port for Thrift to listen for clients on 629 rpc_port: 9160 630 631 # RPC address to broadcast to drivers and other Cassandra nodes. This cannot 632 # be set to 0.0.0.0. If left blank, this will be set to the value of 633 # rpc_address. If rpc_address is set to 0.0.0.0, broadcast_rpc_address must 634 # be set. 635 # broadcast_rpc_address: 1.2.3.4 636 637 # enable or disable keepalive on rpc/native connections 638 rpc_keepalive: true 639 640 # Cassandra provides two out-of-the-box options for the RPC Server: 641 # 642 # sync -> One thread per thrift connection. For a very large number of clients, memory 643 # will be your limiting factor. On a 64 bit JVM, 180KB is the minimum stack size 644 # per thread, and that will correspond to your use of virtual memory (but physical memory 645 # may be limited depending on use of stack space). 646 # 647 # hsha -> Stands for "half synchronous, half asynchronous." All thrift clients are handled 648 # asynchronously using a small number of threads that does not vary with the amount 649 # of thrift clients (and thus scales well to many clients). The rpc requests are still 650 # synchronous (one thread per active request). If hsha is selected then it is essential 651 # that rpc_max_threads is changed from the default value of unlimited. 652 # 653 # The default is sync because on Windows hsha is about 30% slower. On Linux, 654 # sync/hsha performance is about the same, with hsha of course using less memory. 655 # 656 # Alternatively, can provide your own RPC server by providing the fully-qualified class name 657 # of an o.a.c.t.TServerFactory that can create an instance of it. 658 rpc_server_type: sync 659 660 # Uncomment rpc_min|max_thread to set request pool size limits. 661 # 662 # Regardless of your choice of RPC server (see above), the number of maximum requests in the 663 # RPC thread pool dictates how many concurrent requests are possible (but if you are using the sync 664 # RPC server, it also dictates the number of clients that can be connected at all). 665 # 666 # The default is unlimited and thus provides no protection against clients overwhelming the server. You are 667 # encouraged to set a maximum that makes sense for you in production, but do keep in mind that 668 # rpc_max_threads represents the maximum number of client requests this server may execute concurrently. 669 # 670 # rpc_min_threads: 16 671 # rpc_max_threads: 2048 672 673 # uncomment to set socket buffer sizes on rpc connections 674 # rpc_send_buff_size_in_bytes: 675 # rpc_recv_buff_size_in_bytes: 676 677 # Uncomment to set socket buffer size for internode communication 678 # Note that when setting this, the buffer size is limited by net.core.wmem_max 679 # and when not setting it, it is defined by net.ipv4.tcp_wmem 680 # See: 681 # /proc/sys/net/core/wmem_max 682 # /proc/sys/net/core/rmem_max 683 # /proc/sys/net/ipv4/tcp_wmem 684 # /proc/sys/net/ipv4/tcp_wmem 685 # and: man tcp 686 # internode_send_buff_size_in_bytes: 687 # internode_recv_buff_size_in_bytes: 688 689 # Frame size for thrift (maximum message length). 690 thrift_framed_transport_size_in_mb: 15 691 692 # Set to true to have Cassandra create a hard link to each sstable 693 # flushed or streamed locally in a backups/ subdirectory of the 694 # keyspace data. Removing these links is the operator's 695 # responsibility. 696 incremental_backups: false 697 698 # Whether or not to take a snapshot before each compaction. Be 699 # careful using this option, since Cassandra won't clean up the 700 # snapshots for you. Mostly useful if you're paranoid when there 701 # is a data format change. 702 snapshot_before_compaction: false 703 704 # Whether or not a snapshot is taken of the data before keyspace truncation 705 # or dropping of column families. The STRONGLY advised default of true 706 # should be used to provide data safety. If you set this flag to false, you will 707 # lose data on truncation or drop. 708 auto_snapshot: true 709 710 # Granularity of the collation index of rows within a partition. 711 # Increase if your rows are large, or if you have a very large 712 # number of rows per partition. The competing goals are these: 713 # 1) a smaller granularity means more index entries are generated 714 # and looking up rows withing the partition by collation column 715 # is faster 716 # 2) but, Cassandra will keep the collation index in memory for hot 717 # rows (as part of the key cache), so a larger granularity means 718 # you can cache more hot rows 719 column_index_size_in_kb: 64 720 # Per sstable indexed key cache entries (the collation index in memory 721 # mentioned above) exceeding this size will not be held on heap. 722 # This means that only partition information is held on heap and the 723 # index entries are read from disk. 724 # 725 # Note that this size refers to the size of the 726 # serialized index information and not the size of the partition. 727 column_index_cache_size_in_kb: 2 728 729 # Number of simultaneous compactions to allow, NOT including 730 # validation "compactions" for anti-entropy repair. Simultaneous 731 # compactions can help preserve read performance in a mixed read/write 732 # workload, by mitigating the tendency of small sstables to accumulate 733 # during a single long running compactions. The default is usually 734 # fine and if you experience problems with compaction running too 735 # slowly or too fast, you should look at 736 # compaction_throughput_mb_per_sec first. 737 # 738 # concurrent_compactors defaults to the smaller of (number of disks, 739 # number of cores), with a minimum of 2 and a maximum of 8. 740 # 741 # If your data directories are backed by SSD, you should increase this 742 # to the number of cores. 743 #concurrent_compactors: 1 744 745 # Throttles compaction to the given total throughput across the entire 746 # system. The faster you insert data, the faster you need to compact in 747 # order to keep the sstable count down, but in general, setting this to 748 # 16 to 32 times the rate you are inserting data is more than sufficient. 749 # Setting this to 0 disables throttling. Note that this account for all types 750 # of compaction, including validation compaction. 751 compaction_throughput_mb_per_sec: 16 752 753 # When compacting, the replacement sstable(s) can be opened before they 754 # are completely written, and used in place of the prior sstables for 755 # any range that has been written. This helps to smoothly transfer reads 756 # between the sstables, reducing page cache churn and keeping hot rows hot 757 sstable_preemptive_open_interval_in_mb: 50 758 759 # Throttles all outbound streaming file transfers on this node to the 760 # given total throughput in Mbps. This is necessary because Cassandra does 761 # mostly sequential IO when streaming data during bootstrap or repair, which 762 # can lead to saturating the network connection and degrading rpc performance. 763 # When unset, the default is 200 Mbps or 25 MB/s. 764 # stream_throughput_outbound_megabits_per_sec: 200 765 766 # Throttles all streaming file transfer between the datacenters, 767 # this setting allows users to throttle inter dc stream throughput in addition 768 # to throttling all network stream traffic as configured with 769 # stream_throughput_outbound_megabits_per_sec 770 # When unset, the default is 200 Mbps or 25 MB/s 771 # inter_dc_stream_throughput_outbound_megabits_per_sec: 200 772 773 # How long the coordinator should wait for read operations to complete 774 read_request_timeout_in_ms: 5000 775 # How long the coordinator should wait for seq or index scans to complete 776 range_request_timeout_in_ms: 10000 777 # How long the coordinator should wait for writes to complete 778 write_request_timeout_in_ms: 2000 779 # How long the coordinator should wait for counter writes to complete 780 counter_write_request_timeout_in_ms: 5000 781 # How long a coordinator should continue to retry a CAS operation 782 # that contends with other proposals for the same row 783 cas_contention_timeout_in_ms: 1000 784 # How long the coordinator should wait for truncates to complete 785 # (This can be much longer, because unless auto_snapshot is disabled 786 # we need to flush first so we can snapshot before removing the data.) 787 truncate_request_timeout_in_ms: 60000 788 # The default timeout for other, miscellaneous operations 789 request_timeout_in_ms: 10000 790 791 # Enable operation timeout information exchange between nodes to accurately 792 # measure request timeouts. If disabled, replicas will assume that requests 793 # were forwarded to them instantly by the coordinator, which means that 794 # under overload conditions we will waste that much extra time processing 795 # already-timed-out requests. 796 # 797 # Warning: before enabling this property make sure to ntp is installed 798 # and the times are synchronized between the nodes. 799 cross_node_timeout: false 800 801 # Set socket timeout for streaming operation. 802 # The stream session is failed if no data/ack is received by any of the participants 803 # within that period, which means this should also be sufficient to stream a large 804 # sstable or rebuild table indexes. 805 # Default value is 86400000ms, which means stale streams timeout after 24 hours. 806 # A value of zero means stream sockets should never time out. 807 # streaming_socket_timeout_in_ms: 86400000 808 809 # phi value that must be reached for a host to be marked down. 810 # most users should never need to adjust this. 811 # phi_convict_threshold: 8 812 813 # endpoint_snitch -- Set this to a class that implements 814 # IEndpointSnitch. The snitch has two functions: 815 # - it teaches Cassandra enough about your network topology to route 816 # requests efficiently 817 # - it allows Cassandra to spread replicas around your cluster to avoid 818 # correlated failures. It does this by grouping machines into 819 # "datacenters" and "racks." Cassandra will do its best not to have 820 # more than one replica on the same "rack" (which may not actually 821 # be a physical location) 822 # 823 # IF YOU CHANGE THE SNITCH AFTER DATA IS INSERTED INTO THE CLUSTER, 824 # YOU MUST RUN A FULL REPAIR, SINCE THE SNITCH AFFECTS WHERE REPLICAS 825 # ARE PLACED. 826 # 827 # IF THE RACK A REPLICA IS PLACED IN CHANGES AFTER THE REPLICA HAS BEEN 828 # ADDED TO A RING, THE NODE MUST BE DECOMMISSIONED AND REBOOTSTRAPPED. 829 # 830 # Out of the box, Cassandra provides 831 # - SimpleSnitch: 832 # Treats Strategy order as proximity. This can improve cache 833 # locality when disabling read repair. Only appropriate for 834 # single-datacenter deployments. 835 # - GossipingPropertyFileSnitch 836 # This should be your go-to snitch for production use. The rack 837 # and datacenter for the local node are defined in 838 # cassandra-rackdc.properties and propagated to other nodes via 839 # gossip. If cassandra-topology.properties exists, it is used as a 840 # fallback, allowing migration from the PropertyFileSnitch. 841 # - PropertyFileSnitch: 842 # Proximity is determined by rack and data center, which are 843 # explicitly configured in cassandra-topology.properties. 844 # - Ec2Snitch: 845 # Appropriate for EC2 deployments in a single Region. Loads Region 846 # and Availability Zone information from the EC2 API. The Region is 847 # treated as the datacenter, and the Availability Zone as the rack. 848 # Only private IPs are used, so this will not work across multiple 849 # Regions. 850 # - Ec2MultiRegionSnitch: 851 # Uses public IPs as broadcast_address to allow cross-region 852 # connectivity. (Thus, you should set seed addresses to the public 853 # IP as well.) You will need to open the storage_port or 854 # ssl_storage_port on the public IP firewall. (For intra-Region 855 # traffic, Cassandra will switch to the private IP after 856 # establishing a connection.) 857 # - RackInferringSnitch: 858 # Proximity is determined by rack and data center, which are 859 # assumed to correspond to the 3rd and 2nd octet of each node's IP 860 # address, respectively. Unless this happens to match your 861 # deployment conventions, this is best used as an example of 862 # writing a custom Snitch class and is provided in that spirit. 863 # 864 # You can use a custom Snitch by setting this to the full class name 865 # of the snitch, which will be assumed to be on your classpath. 866 endpoint_snitch: SimpleSnitch 867 868 # controls how often to perform the more expensive part of host score 869 # calculation 870 dynamic_snitch_update_interval_in_ms: 100 871 # controls how often to reset all host scores, allowing a bad host to 872 # possibly recover 873 dynamic_snitch_reset_interval_in_ms: 600000 874 # if set greater than zero and read_repair_chance is < 1.0, this will allow 875 # 'pinning' of replicas to hosts in order to increase cache capacity. 876 # The badness threshold will control how much worse the pinned host has to be 877 # before the dynamic snitch will prefer other replicas over it. This is 878 # expressed as a double which represents a percentage. Thus, a value of 879 # 0.2 means Cassandra would continue to prefer the static snitch values 880 # until the pinned host was 20% worse than the fastest. 881 dynamic_snitch_badness_threshold: 0.1 882 883 # request_scheduler -- Set this to a class that implements 884 # RequestScheduler, which will schedule incoming client requests 885 # according to the specific policy. This is useful for multi-tenancy 886 # with a single Cassandra cluster. 887 # NOTE: This is specifically for requests from the client and does 888 # not affect inter node communication. 889 # org.apache.cassandra.scheduler.NoScheduler - No scheduling takes place 890 # org.apache.cassandra.scheduler.RoundRobinScheduler - Round robin of 891 # client requests to a node with a separate queue for each 892 # request_scheduler_id. The scheduler is further customized by 893 # request_scheduler_options as described below. 894 request_scheduler: org.apache.cassandra.scheduler.NoScheduler 895 896 # Scheduler Options vary based on the type of scheduler 897 # NoScheduler - Has no options 898 # RoundRobin 899 # - throttle_limit -- The throttle_limit is the number of in-flight 900 # requests per client. Requests beyond 901 # that limit are queued up until 902 # running requests can complete. 903 # The value of 80 here is twice the number of 904 # concurrent_reads + concurrent_writes. 905 # - default_weight -- default_weight is optional and allows for 906 # overriding the default which is 1. 907 # - weights -- Weights are optional and will default to 1 or the 908 # overridden default_weight. The weight translates into how 909 # many requests are handled during each turn of the 910 # RoundRobin, based on the scheduler id. 911 # 912 # request_scheduler_options: 913 # throttle_limit: 80 914 # default_weight: 5 915 # weights: 916 # Keyspace1: 1 917 # Keyspace2: 5 918 919 # request_scheduler_id -- An identifier based on which to perform 920 # the request scheduling. Currently the only valid option is keyspace. 921 # request_scheduler_id: keyspace 922 923 # Enable or disable inter-node encryption 924 # JVM defaults for supported SSL socket protocols and cipher suites can 925 # be replaced using custom encryption options. This is not recommended 926 # unless you have policies in place that dictate certain settings, or 927 # need to disable vulnerable ciphers or protocols in case the JVM cannot 928 # be updated. 929 # FIPS compliant settings can be configured at JVM level and should not 930 # involve changing encryption settings here: 931 # https://docs.oracle.com/javase/8/docs/technotes/guides/security/jsse/FIPS.html 932 # NOTE: No custom encryption options are enabled at the moment 933 # The available internode options are : all, none, dc, rack 934 # 935 # If set to dc cassandra will encrypt the traffic between the DCs 936 # If set to rack cassandra will encrypt the traffic between the racks 937 # 938 # The passwords used in these options must match the passwords used when generating 939 # the keystore and truststore. For instructions on generating these files, see: 940 # http://download.oracle.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html#CreateKeystore 941 # 942 server_encryption_options: 943 internode_encryption: none 944 keystore: conf/.keystore 945 keystore_password: cassandra 946 truststore: conf/.truststore 947 truststore_password: cassandra 948 # More advanced defaults below: 949 # protocol: TLS 950 # algorithm: SunX509 951 # store_type: JKS 952 # cipher_suites: [TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA] 953 # require_client_auth: false 954 # require_endpoint_verification: false 955 956 # enable or disable client/server encryption. 957 client_encryption_options: 958 enabled: false 959 # If enabled and optional is set to true encrypted and unencrypted connections are handled. 960 optional: false 961 keystore: conf/.keystore 962 keystore_password: cassandra 963 # require_client_auth: false 964 # Set trustore and truststore_password if require_client_auth is true 965 # truststore: conf/.truststore 966 # truststore_password: cassandra 967 # More advanced defaults below: 968 # protocol: TLS 969 # algorithm: SunX509 970 # store_type: JKS 971 # cipher_suites: [TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA] 972 973 # internode_compression controls whether traffic between nodes is 974 # compressed. 975 # can be: all - all traffic is compressed 976 # dc - traffic between different datacenters is compressed 977 # none - nothing is compressed. 978 internode_compression: dc 979 980 # Enable or disable tcp_nodelay for inter-dc communication. 981 # Disabling it will result in larger (but fewer) network packets being sent, 982 # reducing overhead from the TCP protocol itself, at the cost of increasing 983 # latency if you block for cross-datacenter responses. 984 inter_dc_tcp_nodelay: false 985 986 # TTL for different trace types used during logging of the repair process. 987 tracetype_query_ttl: 86400 988 tracetype_repair_ttl: 604800 989 990 # UDFs (user defined functions) are disabled by default. 991 # As of Cassandra 3.0 there is a sandbox in place that should prevent execution of evil code. 992 enable_user_defined_functions: false 993 994 # Enables scripted UDFs (JavaScript UDFs). 995 # Java UDFs are always enabled, if enable_user_defined_functions is true. 996 # Enable this option to be able to use UDFs with "language javascript" or any custom JSR-223 provider. 997 # This option has no effect, if enable_user_defined_functions is false. 998 enable_scripted_user_defined_functions: false 999 1000 # The default Windows kernel timer and scheduling resolution is 15.6ms for power conservation. 1001 # Lowering this value on Windows can provide much tighter latency and better throughput, however 1002 # some virtualized environments may see a negative performance impact from changing this setting 1003 # below their system default. The sysinternals 'clockres' tool can confirm your system's default 1004 # setting. 1005 windows_timer_interval: 1 1006 1007 1008 # Enables encrypting data at-rest (on disk). Different key providers can be plugged in, but the default reads from 1009 # a JCE-style keystore. A single keystore can hold multiple keys, but the one referenced by 1010 # the "key_alias" is the only key that will be used for encrypt opertaions; previously used keys 1011 # can still (and should!) be in the keystore and will be used on decrypt operations 1012 # (to handle the case of key rotation). 1013 # 1014 # It is strongly recommended to download and install Java Cryptography Extension (JCE) 1015 # Unlimited Strength Jurisdiction Policy Files for your version of the JDK. 1016 # (current link: http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html) 1017 # 1018 # Currently, only the following file types are supported for transparent data encryption, although 1019 # more are coming in future cassandra releases: commitlog, hints 1020 transparent_data_encryption_options: 1021 enabled: false 1022 chunk_length_kb: 64 1023 cipher: AES/CBC/PKCS5Padding 1024 key_alias: testing:1 1025 # CBC IV length for AES needs to be 16 bytes (which is also the default size) 1026 # iv_length: 16 1027 key_provider: 1028 - class_name: org.apache.cassandra.security.JKSKeyProvider 1029 parameters: 1030 - keystore: conf/.keystore 1031 keystore_password: cassandra 1032 store_type: JCEKS 1033 key_password: cassandra 1034 1035 1036 ##################### 1037 # SAFETY THRESHOLDS # 1038 ##################### 1039 1040 # When executing a scan, within or across a partition, we need to keep the 1041 # tombstones seen in memory so we can return them to the coordinator, which 1042 # will use them to make sure other replicas also know about the deleted rows. 1043 # With workloads that generate a lot of tombstones, this can cause performance 1044 # problems and even exaust the server heap. 1045 # (http://www.datastax.com/dev/blog/cassandra-anti-patterns-queues-and-queue-like-datasets) 1046 # Adjust the thresholds here if you understand the dangers and want to 1047 # scan more tombstones anyway. These thresholds may also be adjusted at runtime 1048 # using the StorageService mbean. 1049 tombstone_warn_threshold: 1000 1050 tombstone_failure_threshold: 100000 1051 1052 # Log WARN on any batch size exceeding this value. 5kb per batch by default. 1053 # Caution should be taken on increasing the size of this threshold as it can lead to node instability. 1054 batch_size_warn_threshold_in_kb: 5 1055 1056 # Fail any batch exceeding this value. 50kb (10x warn threshold) by default. 1057 batch_size_fail_threshold_in_kb: 50 1058 1059 # Log WARN on any batches not of type LOGGED than span across more partitions than this limit 1060 unlogged_batch_across_partitions_warn_threshold: 10 1061 1062 # Log a warning when compacting partitions larger than this value 1063 compaction_large_partition_warning_threshold_mb: 100 1064 1065 # GC Pauses greater than gc_warn_threshold_in_ms will be logged at WARN level 1066 # Adjust the threshold based on your application throughput requirement 1067 # By default, Cassandra logs GC Pauses greater than 200 ms at INFO level 1068 gc_warn_threshold_in_ms: 1000 1069 1070 # Maximum size of any value in SSTables. Safety measure to detect SSTable corruption 1071 # early. Any value size larger than this threshold will result into marking an SSTable 1072 # as corrupted. 1073 # max_value_size_in_mb: 256 1074