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 語句

本條目有幫助嗎?