目次
Batch処理とは?
Batch処理は、複数のCassandraクエリをひとまとめにして、一度の通信で処理する手法です。これにより、ネットワークの遅延が減少し、アプリケーションの応答時間が向上する可能性があります。Batch処理の利点
Batch処理の注意点
CassandraにおけるBatch処理の種類
Cassandraでは、主に以下の2種類のBatch処理が存在します。Unlogged Batch
Unlogged Batchは、各クエリが独立して実行される形式です。一部のクエリが失敗しても、他のクエリの処理は影響を受けません。Logged Batch
Logged Batchは、全てのクエリが原子的に実行される形式です。一部のクエリが失敗すると、全てのクエリがロールバックされます。Batchの種類 | 特徴 | 用途 |
---|---|---|
Unlogged Batch | 各クエリが独立 | 高速な読み取り・書き込み |
Logged Batch | 全てのクエリが原子的 | データ整合性が重要な場合 |
具体的な使用例
Unlogged Batchの例
BEGIN BATCH
INSERT INTO users (id, name, age) VALUES (1, '山田', 30);
INSERT INTO users (id, name, age) VALUES (2, '鈴木', 25);
APPLY BATCH;
Logged Batchの例
BEGIN BATCH
INSERT INTO orders (id, product, quantity) VALUES (1, 'リンゴ', 3);
INSERT INTO inventory (product, stock) VALUES ('リンゴ', 100) IF EXISTS;
APPLY BATCH;
コメント