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(感測器)的範例用法¶
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 陳述式。