您可以使用创建表(CreateTable)接口根据给定的表的结构信息创建相应的表。

说明
  • 创建表后需要 1 分钟进行加载,在此期间对该表的读/写数据操作均会失败。应用程序应该等待表加载完毕后再进行数据操作。
  • 创建表格存储的表时必须指定表的主键。主键包含 1~4 个主键列,每一个主键列都有名字和类型。

接口

       说明:根据表信息创建表。

        ``table_meta``是``tablestore.metadata.TableMeta``类的实例,它包含表名和PrimaryKey的schema,
        请参考``TableMeta``类的文档。当创建了一个表之后,通常要等待1分钟时间使partition load完成,才能进行各种操作。
        ``table_options``是``tablestore.metadata.TableOptions``类的示例,它包含time_to_live,max_version和max_time_deviation三个参数。
        ``reserved_throughput``是``tablestore.metadata.ReservedThroughput``类的实例,表示预留读写吞吐量。

        返回:无。

        def create_table(self, table_meta, reserved_throughput):
			
说明 表格存储的表在被创建之后需要几秒钟进行加载,创建成功后需要等待几秒钟后再做其他操作。

示例

创建一个有 2 个主键列,数据保留1年(60 * 60 * 24 * 365=31536000秒),最大版本数3,写入时间戳偏移小于1天(86400秒),预留读写吞吐量为 (0,0) 的表。

    # 创建主键列的schema,包括PK的个数,名称和类型
    # 第一个PK列为整数,名称是pk0,这个同时也是分片列
    # 第二个PK列为整数,名称是pk1。其他可选的类型包括STRING,BINARY,这里使用INTEGER。
    schema_of_primary_key = [('pk0', 'INTEGER'), ('pk1', 'INTEGER')]

    # 通过表名和主键列的schema创建一个tableMeta
    table_meta = TableMeta('SampleTable', schema_of_primary_key)

    # 创建TableOptions,数据保留31536000秒,超过后自动删除;最大3个版本;写入时指定的版本值和当前标准时间相差不能超过1天。
    table_options = TableOptions(31536000, 3, 86400)

    # 设定预留读吞吐量为0,预留写吞吐量为0
    reserved_throughput = ReservedThroughput(CapacityUnit(0, 0))

    # 调用client的create_table接口,如果没有抛出异常,则说明成功,否则失败
    try:
        ots_client.create_table(table_meta, table_options, reserved_throughput)
        print "create table succeeded"
    # 处理异常
    except Exception:
        print "create table failed."
			

详细代码请参见CreateTable@GitHub