Apache Cassandra 连接

Apache Cassandra 连接类型可以连接到 Apache Cassandra

默认连接 ID

Cassandra hook 和 Cassandra operator 默认使用 cassandra_default

配置连接

主机 (必需)

要连接的主机。可以通过逗号分隔列表指定多个主机。

Schema (必需)

在数据库中使用的 Schema (keyspace) 名称。

登录 (必需)

用于连接的用户名。

密码 (必需)

用于连接的密码。

端口 (必需)

用于连接的端口。

Extra (可选)

可在 Cassandra 连接中使用的额外参数(以 JSON 字典形式)。支持以下非标准 Python 参数的额外参数:

  • load_balancing_policy - 此参数指定要使用的负载均衡策略。有四种可用的策略:RoundRobinPolicyDCAwareRoundRobinPolicyAllowListRoundRobinPolicyTokenAwarePolicyRoundRobinPolicy 是默认的负载均衡策略。

  • load_balancing_policy_args - 此参数指定正在使用的负载均衡策略的参数。

  • cql_version - 此参数指定 Cassandra 的 CQL 版本。

  • protocol_version - 此参数指定要使用的本机协议的最大版本。

  • ssl_options - 此参数指定与 SSL 相关的详细信息,如果 Cassandra 中启用了 SSL。

Extra 字段示例

  1. 指定 ssl_options

如果在 Cassandra 中启用了 SSL,可在 Extra 字段中传递一个字典作为 ssl.wrap_socket() 的关键字参数。例如

{
  "ssl_options": {
    "ca_certs": "PATH/TO/CA_CERTS"
  }
}
  1. 指定 load_balancing_policyload_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"
  }
}

AllowListRoundRobinPolicy

{
  "load_balancing_policy": "AllowListRoundRobinPolicy",
  "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": {}
  }
}

此条目是否有帮助?