时序时空数据库TSDB

    管理接口

    TSDB数据库的管理操作通过管理接口进行调用,包括创建数据库、删除数据库和获取数据库信息。在Python SDK中使用TsdbAdminClient类实现对管理接口的封装。

    新建TsdbAdminClient

    import baidubce.protocol
    from baidubce.bce_client_configuration import BceClientConfiguration
    from baidubce.auth.bce_credentials import BceCredentials
    from baidubce.services.tsdb.tsdb_admin_client import TsdbAdminClient
     
    HOST = 'tsdb.<region>.baidubce.com'
    AK = '<your ak>'
    SK = '<your sk>'
     
    ###########optional config#############
    protocol=baidubce.protocol.HTTP
    # protcol= baidubce.protocol.HTTPS
    connection_timeout_in_mills=None
    send_buf_size=None
    recv_buf_size=None
    retry_policy=None
    #######################################
     
     
     
    config = BceClientConfiguration(
            credentials=BceCredentials(AK, SK),
            endpoint=HOST,
            protocol=protocol,
            connection_timeout_in_mills=connection_timeout_in_mills,
            send_buf_size=send_buf_size,
            recv_buf_size=recv_buf_size,
            retry_policy=retry_policy)
     
    tsdb_admin_client = TsdbAdminClient(config)

    创建时序数据库

    使用如下代码创建数据库:

    # 创建数据库
    database_name = 'pythonsdksample'  # 数据库名称
    description = 'description'        # 数据库描述。可选
    ingest_datapoints_monthly = 1      # 月写入数据点数额度,单位,点/百万
    store_bytes_quota = 0              # 字节存储空间额度,单位,byte。 可选,默认为0
    purchase_length = 1                # 购买时长,单位,月
    coupon_name = ''                   # 代金券编号。可选,如填写,则默认优先使用代金券付款
     
    client_token = 'testtttt'          # 任意指定字符串,用于保证创建的幂等性。即,不会因网络重试等问题导致重复创建
    try:
        result = tsdb_admin_client.create_database(
                client_token=client_token,
                description=description,
                database_name=database_name,
                ingest_datapoints_monthly=ingest_datapoints_monthly,
                purchase_length=purchase_length,
                store_bytes_quota=store_bytes_quota,
                coupon_name=coupon_name)
        print result                   # 创建成功会返回订单号、数据库id、花费金额、到期时间的信息
    except BaseException as e:
        print e                        # 如果创建失败,会抛出异常,异常中含有错误的详细信息

    删除时序数据库

    使用如下代码删除数据库:

    # 删除指定数据库
    database_id = 'tsdb-xxxxxx'  # database_id 可以官网控制台数据库的详细页查看
    try:
        response = tsdb_admin_client.delete_database(database_id)
        print response
    except BaseException as e:
        print e                  # 删除失败会在异常中包含详细的错误信息

    获取时序数据库实例

    使用如下代码获取时序数据库实例:

    # 获取数据库实例
    database_id = 'tsdb-xxxxxx'
    print tsdb_admin_client.get_database(database_id)

    返回结果:

    {'status': u'Active', 'autoExport': False, 'databaseId': u'tsdb-xxxxx', 'endpoint': u'pythonsdksample.tsdb-xxxxx.tsdb.iot.bj.baidubce.com', 'createTime': u'2018-07-20T08:57:53Z', 'description': u'', 'databaseName': u'pythonsdksample', 'quota': {ingestDataPointsMonthly:1,storeBytesQuota:0}, 'expiredTime': u'2018-08-20T08:57:54Z'}

    获取时序数据库实例列表

    使用如下代码获取时序数据库实例列表:

    # 获取数据库实例列表
    result = tsdb_admin_client.get_all_databases()
    print result

    返回结果:

    [{'status': u'Active', 'autoExport': False, 'databaseId': u'tsdb-xxxxx', 'endpoint': u'pythonsdksample.tsdb-xxxxx.tsdb.iot.bj.baidubce.com', 'createTime': u'2018-07-20T08:57:53Z', 'description': u'', 'databaseName': u'pythonsdksample', 'quota': {ingestDataPointsMonthly:1,storeBytesQuota:0}, 'expiredTime': u'2018-08-20T08:57:54Z'},{...},..
    上一篇
    写入数据点的Gzip压缩说明
    下一篇
    版本说明