Apache Cassandra Operators(運算子)

Apache Cassandra 是一個開放原始碼的分散式 NoSQL 資料庫,當您需要可擴展性和高可用性且不犧牲效能時,可以使用它。它在通用硬體或雲端基礎架構上提供線性擴展性和容錯能力,使其成為任務關鍵資料的完美平台。它支援多資料中心複製,並具有較低的延遲。

先決條件

若要使用 Operators(運算子),您必須設定 Cassandra 連線

等待表格建立完成

CassandraTableSensor operator(運算子)用於檢查 Cassandra 叢集中是否存在表格。

使用 table 參數(在以下範例的 default_args 中設定)來輪詢直到找到提供的表格。使用點表示法來指定特定的 Keyspace(鍵空間)。

等待紀錄建立完成

CassandraRecordSensor operator(運算子)用於檢查 Cassandra 叢集中表格是否存在紀錄。

使用 table 參數(在以下範例的 default_args 中設定)來提及紀錄的 Keyspace(鍵空間)和表格。使用點表示法來指定特定的 Keyspace(鍵空間)。

使用 keys 參數來輪詢直到找到提供的紀錄。紀錄的存在是使用鍵值對來識別的。在給定的範例中,我們正在尋找欄位 p1 中的值 v1 以及欄位 p2 中的 v2

這些 Sensors(感測器)的範例用法

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 Query Language (CQL) SELECT 陳述式

這個條目是否有幫助?