Apache Cassandra Operator

Apache Cassandra 是一个开源的分布式 NoSQL 数据库,它可以在需要扩展性和高可用性而不牺牲性能时使用。它在商用硬件或云基础设施上提供线性扩展性和容错能力,使其成为关键任务数据的完美平台。它支持多数据中心复制,延迟较低。

前提条件

要使用 Operator,您必须配置一个 Cassandra 连接

等待表创建

CassandraTableSensor Operator 用于检查 Cassandra 集群中是否存在表。

使用 table 参数(在下面的示例中设置于 default_args 中)探测直到找到提供的表。使用点号表示法指定特定的键空间。

等待记录创建

CassandraRecordSensor Operator 用于检查 Cassandra 集群中表中是否存在记录。

使用 table 参数(在下面的示例中设置于 default_args 中)指定记录所在的键空间和表。使用点号表示法指定特定的键空间。

使用 keys 参数探测直到找到提供的记录。记录的存在性通过键值对来确定。在给定示例中,我们正在寻找 p1 列中值为 v1p2 列中值为 v2 的记录。

这些 Sensor 的使用示例

tests/system/apache/cassandra/example_cassandra_dag.py

with DAG(
    dag_id=DAG_ID,
    schedule=None,
    start_date=datetime(2021, 1, 1),
    default_args={"table": "keyspace_name.table_name"},
    catchup=False,
    tags=["example"],
) as dag:
    table_sensor = CassandraTableSensor(task_id="cassandra_table_sensor")

    record_sensor = CassandraRecordSensor(task_id="cassandra_record_sensor", keys={"p1": "v1", "p2": "v2"})

参考

更多信息,请参阅 Cassandra 查询语言 (CQL) SELECT 语句

本条目有帮助吗?