airflow.contrib.hooks.cassandra_hook¶
Module Contents¶
- 
class airflow.contrib.hooks.cassandra_hook.CassandraHook(cassandra_conn_id='cassandra_default')[source]¶
- Bases: - airflow.hooks.base_hook.BaseHook,- airflow.utils.log.logging_mixin.LoggingMixin- Hook used to interact with Cassandra - Contact points can be specified as a comma-separated string in the ‘hosts’ field of the connection. - Port can be specified in the port field of the connection. - If SSL is enabled in Cassandra, pass in a dict in the extra field as kwargs for - ssl.wrap_socket(). For example:- { 'ssl_options' : { 'ca_certs' : PATH_TO_CA_CERTS } } - Default load balancing policy is RoundRobinPolicy. To specify a different LB policy: - - DCAwareRoundRobinPolicy { 'load_balancing_policy': 'DCAwareRoundRobinPolicy', 'load_balancing_policy_args': { 'local_dc': LOCAL_DC_NAME, // optional 'used_hosts_per_remote_dc': SOME_INT_VALUE, // optional } } - 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, // optional 'child_load_balancing_policy_args': { ... } // optional } } - For details of the Cluster config, see cassandra.cluster.