Apache Cassandra 連線¶
Apache Cassandra 連線類型啟用與 Apache Cassandra 的連線。
預設連線 ID¶
Cassandra hook 和 Cassandra 運算子預設使用 cassandra_default
。
設定連線¶
- 主機 (必填)
要連線的主機。可以將多個主機指定為逗號分隔的列表。
- Schema (必填)
要在資料庫中使用的 schema (keyspace) 名稱。
- 登入 (必填)
要連線的使用者名稱。
- 密碼 (必填)
要連線的密碼。
- 埠號 (必填)
要連線的埠號。
- 額外 (選填)
可用於 Cassandra 連線的額外參數 (以 JSON 字典形式)。支援以下超出標準 Python 參數的參數
load_balancing_policy
- 此參數指定要使用的負載平衡策略。有四種可用的策略:RoundRobinPolicy
、DCAwareRoundRobinPolicy
、WhiteListRoundRobinPolicy
和TokenAwarePolicy
。RoundRobinPolicy
是預設的負載平衡策略。load_balancing_policy_args
- 此參數指定要使用的負載平衡策略的引數。cql_version
- 此參數指定 Cassandra 的 CQL 版本。protocol_version
- 此參數指定要使用的原生協定的最大版本。ssl_options
- 此參數指定與 SSL 相關的詳細資訊 (如果在 Cassandra 中啟用)。
額外欄位的範例¶
指定
ssl_options
如果 Cassandra 中啟用了 SSL,請在額外欄位中傳入一個 dict 作為 ssl.wrap_socket()
的 kwargs。例如
{
"ssl_options": {
"ca_certs": "PATH/TO/CA_CERTS"
}
}
指定
load_balancing_policy
和load_balancing_policy_args
預設負載平衡策略為 RoundRobinPolicy
。以下是一些指定不同 LB 策略的範例
DCAwareRoundRobinPolicy
{
"load_balancing_policy": "DCAwareRoundRobinPolicy",
"load_balancing_policy_args": {
"local_dc": "LOCAL_DC_NAME",
"used_hosts_per_remote_dc": "SOME_INT_VALUE"
}
}
WhiteListRoundRobinPolicy
{
"load_balancing_policy": "WhiteListRoundRobinPolicy",
"load_balancing_policy_args": {
"hosts": ["HOST1", "HOST2", "HOST3"]
}
}
TokenAwarePolicy
{
"load_balancing_policy": "TokenAwarePolicy",
"load_balancing_policy_args": {
"child_load_balancing_policy": "CHILD_POLICY_NAME",
"child_load_balancing_policy_args": {}
}
}