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
5s
Connection timeout.
dbname
Alias for keyspace
.
debug_queries
no
Whether 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-quorum
Write consistency when deleting from the database.
delete_fallback_consistency
local-quorum
Write consistency when deleting from the database fails with primary consistency.
execution_retry_interval
0
If the driver supports speculative execution policy, configures constant speculative execution policy.
execution_retry_times
0
If the driver supports speculative execution policy, configures constant speculative execution policy.
heartbeat_interval
5s
How often to send keepalive packets to cassandra nodes.
host
Host or IP address to connect. Can appear multiple times.
idle_timeout
0
How long to idle before disconnecting.
keyspace
Specifies the keyspace name to use.
latency_aware_routing
no
When 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
warn
critical
, error
, warn
, info
, debug
, trace
Driver log level.
log_retries
no
Whether 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
-1
When 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
9042
CQL port to use.
read_consistency
local-quorum
Read consistency.
read_fallback_consistency
local-quorum
Read consistency if primary consistency fails.
request_timeout
60s
How 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
none
none
, cert
, cert-ip
Configure 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
, 5
Cassandra 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
5s
Emit warning if query takes longer than this.
write_consistency
local-quorum
Write consistency when updating or inserting to the database.
write_fallback_consistency
local-quorum
Write 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]
}
}