Search K
Appearance
Appearance
Driver name cassandra.
Driver for Apache Cassandra CQL server.
To compile support for this driver, you need to have DataStax C/C++ driver and headers installed.
connect_timeout 5sConnection timeout.
dbname Alias for keyspace.
debug_queries noWhether to log CQL queries.
Note
This setting behaves differently than other boolean settings. The feature is enabled by presence of the keyword in connect string, so to disable this feature, you must remove the keyword completely.
delete_consistency local-quorumWrite consistency when deleting from the database.
delete_fallback_consistency local-quorumWrite consistency when deleting from the database fails with primary consistency.
execution_retry_interval 0If the driver supports speculative execution policy, configures constant speculative execution policy.
execution_retry_times 0If the driver supports speculative execution policy, configures constant speculative execution policy.
heartbeat_interval 5sHow often to send keepalive packets to cassandra nodes.
host Host or IP address to connect. Can appear multiple times.
idle_timeout 0How long to idle before disconnecting.
keyspace Specifies the keyspace name to use.
latency_aware_routing noWhen turned on, latency-aware routing tracks the latency of queries to avoid sending new queries to poorly performing Cassandra nodes.
Note
The feature is enabled by presence of the keyword in connect string, so to disable this feature, you must remove the keyword completely.
log_level warncritical, error, warn, info, debug, traceDriver log level.
log_retries noWhether to log about failed requests that are retried (which may or may not succeed after the retry).
Note
This setting behaves differently than other boolean settings.
The feature is enabled by presence of the keyword in connect string, so to disable this feature, you must remove the keyword completely.
metrics Path where to write JSON metrics.
num_threads Set number of IO threads to handle query requests.
page_size -1When a query returns many rows, it can be sometimes inefficient to return them as a single response message. Instead, the driver can break the results into pages which get returned as they are needed.
This setting controls the size of each page.
Set to -1 to disable.
password Password for authentication.
port 9042CQL port to use.
read_consistency local-quorumRead consistency.
read_fallback_consistency local-quorumRead consistency if primary consistency fails.
request_timeout 60sHow long to wait for a query to finish.
ssl_ca Path to SSL certificate authority file to use to validate peer certificate.
ssl_cert_file Path to a certificate file to use for authenticating against the remote server.
ssl_private_key_file Path to private key matching ssl_cert_file to use for authenticating against the remote server.
ssl_verify nonenone, cert, cert-ipConfigure the peer certificate validation method.
Options:
| Method | Description |
|---|---|
none | Disables validation. |
cert | Validate that the certificate is valid. |
cert-ip | Validate that the certificate is valid and has Common Name or Subject Alternate Name for the IP address. |
user Username for authentication.
version 3, 4, 5Cassandra protocol version to use. It is good idea to specify this to avoid warnings about version handshake if the driver supports a higher protocol version than the server.
Note
If you want to use server-side prepared statements, you need to use at least 4.
warn_timeout 5sEmit warning if query takes longer than this.
write_consistency local-quorumWrite consistency when updating or inserting to the database.
write_fallback_consistency local-quorumWrite consistency when updating or inserting to the database fails with primary consistency.
Consistency levels in Cassandra can be configured to manage availability versus data accuracy.
any Note
Not supported for reads.
local-serial Allows reading the current (and possibly uncommitted) state of data without proposing a new addition or update.
If a SERIAL read finds an uncommitted transaction in progress, it will commit the transaction as part of the read.
Local serial is confined to datacenter.
serial Allows reading the current (and possibly uncommitted) state of data without proposing a new addition or update.
If a SERIAL read finds an uncommitted transaction in progress, it will commit the transaction as part of the read.
one Returns a response from the closest replica, as determined by the snitch.
two Returns the most recent data from two of the closest replicas.
three Returns the most recent data from three of the closest replicas.
local-quorum Returns the record after a quorum of replicas in the current datacenter as the coordinator has reported.
quorum Returns the record after a quorum of replicas from all datacenters has responded.
each-quorum Note
Not supported for reads.
all Returns the record after all replicas have responded. The read operation will fail if a replica does not respond.
any At least one node must succeed in the operation.
local-serial Note
Not supported for writes.
serial Note
Not supported for writes.
one Operation must be at least in commit log and one memory table of one replica.
two Operation must be at least in commit log and one memory table of two replicas.
three Operation must be at least in commit log and one memory table of three replicas.
local-quorum A write must be written to the commit log and memory table on a quorum of replica nodes in the same datacenter as the coordinator.
quorum A write must be written to the commit log and memory table on a quorum of replica nodes across all datacenters.
each-quorum A write must be written to the commit log and memory table on a quorum of replica nodes in each datacenter.
all A write must be written to the commit log and memtable on all replica nodes in the cluster for that partition.
This describes the format of the JSON output produced when the metrics configuration option is activated.
Source: https://docs.datastax.com/en/developer/cpp-driver/latest/api/struct.CassMetrics/index.html
{
"Requests": {
# Minimum in microseconds
"min": [Number: integer],
# Maximum in microseconds
"max": [Number: integer],
# Mean in microseconds
"mean": [Number: integer],
# Standard deviation in microseconds
"stddev": [Number: integer],
# Median in microseconds
"median": [Number: integer],
# 75th percentile in microseconds
"percentile_75th": [Number: integer],
# 95th percentile in microseconds
"percentile_95th": [Number: integer],
# 98th percentile in microseconds
"percentile_98th": [Number: integer],
# 99th percentile in microseconds
"percentile_99th": [Number: integer],
# 99.9th percentile in microseconds
"percentile_999th": [Number: integer],
# Mean rate in requests per second
"mean_rate": [Number: fraction],
# 1 minute rate in requests per second
"one_minute_rate": [Number: fraction],
# 5 minute rate in requests per second
"five_minute_rate": [Number: fraction],
# 15 minute rate in requests per second
"fifteen_minute_rate": [Number: fraction]
},
"stats": {
# The total number of connections
"total_connections": [Number: integer],
# The number of connections available to take requests
"available_connections": [Number: integer],
# Occurrences when requests exceeded a pool's water mark
"exceeded_pending_requests_water_mark": [Number: integer],
# Occurrences when number of bytes exceeded a connection's water mark
"exceeded_write_bytes_water_mark": [Number: integer]
},
"queries": {
# Number of queries sent to Cassandra
"sent": [Number: integer],
# Number of successful responses
"recv_ok": [Number: integer],
# Number of requests that couldn’t be sent, because the local
# Cassandra driver’s queue was full.
"recv_err_queue_full": [Number: integer],
# Number of requests that didn’t succeed because the Cassandra
# driver couldn’t connect to the server.
"recv_err_no_hosts": [Number: integer],
# Number of requests that didn’t succeed because the Cassandra
# driver timed out while waiting for response from server.
"recv_err_client_timeout": [Number: integer],
# Number of requests that didn’t succeed because the Cassandra
# server reported a timeout communicating with other nodes.
"recv_err_server_timeout": [Number: integer],
# Number of requests which couldn’t succeed, because not enough
# Cassandra nodes were available for the consistency level.
"recv_err_server_unavailable": [Number: integer]
# Number of requests which couldn’t succeed for other reasons.
"recv_err_other": [Number: integer]
},
"errors": {
# Occurrences of a connection timeout
"connection_timeouts": [Number: integer],
# [No description provided]
"pending_request_timeouts": [Number: integer],
# Occurrences of requests that timed out waiting for a connection
"request_timeouts": [Number: integer]
}
}