すべてのプロダクト
Search
ドキュメントセンター

Tablestore:複数のデータ行を同時に削除するにはどうすればよいですか?

最終更新日:Apr 29, 2025

Tablestore では、プライマリキー情報に基づいて複数のデータ行を同時に削除したり、データテーブルのデータの Time To Live(TTL)を構成して期限切れのデータを自動的に削除したりできます。

重要

削除されたデータは回復できません。ご注意ください。

プライマリキー情報に基づいてデータを削除する

Tablestore では、プライマリキー情報に基づいて複数のデータ行を同時に削除できます。次の手順を実行して、複数のデータ行を同時に削除できます。

  1. ビジネス要件に基づいて適切なメソッドを選択し、削除するデータのプライマリキー情報をクエリします。

    • プライマリキー値が指定された範囲内にあるデータを削除するには、 GetRange 操作を呼び出してデータをクエリし、データのプライマリキー情報を取得します。詳細については、「データの読み取り」をご参照ください。

    • 検索インデックスが作成されたデータテーブルから特定の条件を満たすデータを削除するには、検索インデックスを使用してデータをクエリし、データのプライマリキー情報を取得します。詳細については、「基本的なクエリ」をご参照ください。

    • データテーブルからすべてのデータを削除するには、データテーブルを削除し、同じ構成のデータテーブルを作成することをお勧めします。

      GetRange 操作を呼び出し、開始プライマリキーを INF_MIN に、終了プライマリキーを INF_MAX に設定して、テーブル内のすべてのデータをスキャンすることもできます。この方法では、テーブル内のすべてのデータのプライマリキー情報を取得できます。ただし、これには大量の計算リソースが消費されます。ご注意ください。

  2. 行のプライマリキー情報に基づいて複数のデータ行を同時に削除するには、 BatchWriteRow 操作を呼び出します。詳細については、「データの書き込み」をご参照ください。

TTL を構成して期限切れのデータを自動的に削除する

TTL はデータテーブルの属性であり、データテーブル内のデータの保持期間を指定します。属性列のデータが TTL を超える期間保持されている場合、システムは自動的にデータを削除します。行のすべての属性列のデータが TTL を超える場合、システムは自動的に行を削除します。

手順:

  1. データを削除するデータテーブルの TTL を変更するには、 UpdateTable 操作を呼び出します。

    重要

    データテーブルに検索インデックスまたはセカンダリインデックスが作成されている場合、検索インデックスまたはセカンダリインデックスの TTL は、データテーブルの TTL 以下である必要があります。データテーブルの TTL を変更する場合は、検索インデックスまたはセカンダリインデックスの TTL がデータテーブルの TTL 以下であることを確認してください。

  2. 保持期間が TTL を超えるデータは無効なデータと見なされます。システムは無効なデータを非同期で自動的に削除します。

    システムがまだデータを削除していない場合でも、無効なデータを読み取ることはできません。