このトピックでは、Python 用 Tablestore SDK を使用して Tablestore データテーブルを作成する方法について説明します。
使用方法
データテーブルを作成した後、データに対して操作を実行する前に、データテーブルがロードされるまで待機してください。そうしないと、操作は失敗します。このプロセスには通常数秒かかります。
前提条件
クライアントが初期化されています。詳細については、「Tablestore クライアントを初期化する」をご参照ください。
メソッドの説明
def create_table(self, table_meta, table_options, reserved_throughput, secondary_indexes=[])
サンプルコード
次のサンプルコードは、String タイプのプライマリキー列が 1 つ含まれる test_table という名前のテーブルを作成します。
# データテーブルの作成には、少なくとも 1 つのプライマリキー列が必要です。
schema_of_primary_key = [('id', 'STRING')]
# データテーブルのスキーマ情報を構築します。
table_meta = TableMeta('test_table', schema_of_primary_key)
# データテーブルの構成情報を構築します。
table_options = TableOptions(time_to_live=-1, max_version=1, max_time_deviation=86400, allow_update=True)
# データテーブルを作成する場合は、予約済みの読み取りおよび書き込みスループットを指定する必要があります。デフォルト値は 0 です(このパラメーターをゼロ以外の値に設定でき、設定は CU モードの高性能インスタンスのデータテーブルに対してのみ有効になります)。
reserved_throughput = ReservedThroughput(CapacityUnit(0,0))
try:
# リクエストを開始します。
client.create_table(table_meta, table_options, reserved_throughput)
print("テーブルの作成に成功しました。") # テーブルの作成に成功しました。
except Exception as e:
print("テーブルの作成に失敗しました。 %s" % e) # テーブルの作成に失敗しました。
また、データテーブルを作成するときに、次のサンプルコードを参照して特定の設定を構成することもできます。
事前定義された列を追加する
defined_columns = [('name', 'STRING')] # データテーブルのスキーマ情報を構築します。 table_meta = TableMeta('test_table', schema_of_primary_key, defined_columns)
セカンダリインデックスを追加する
# セカンダリインデックスリストを構築します。 secondary_indexes = [ # インデックス名、インデックスプライマリキー列、インデックス事前定義列、およびインデックスタイプを指定します。 SecondaryIndexMeta('test_table_index', ['id', 'name'], [], index_type= SecondaryIndexType.LOCAL_INDEX) ] # リクエストを開始します。 client.create_table(table_meta, table_options, reserved_throughput, secondary_indexes)