通过Python操作Serverless表
本章节主要介绍使用Python语言操作Serverless表。
使用须知
仅支持GeminiDB兼容DynamoDB接口的Serverless表。
前提条件
- 已成功创建GeminiDB Serverless终端节点。
- 已创建弹性云服务器,创建弹性云服务器的方法,请参见《弹性云服务器快速入门》中“创建弹性云服务器”章节。
- 弹性云服务器上已经安装Python环境。
连接示例
将下面代码示例中的IP地址(***.***.***.***)替换为终端节点列表查到的IP。
下面代码示例中的region替换为实际的region。
Python样例如下:
#!/usr/bin/python
import boto3
url = 'http://***.***.***.***'
dynamodb = boto3.resource('dynamodb',
endpoint_url=url,
aws_access_key_id='ak',
aws_secret_access_key='sk',
region_name="region")
创建Serverless表示例
在连接Serverless成功后,创建Serverless表的Python样例如下:
#!/usr/bin/python
import boto3
TABLE_NAME = 'test_table'
table = dynamodb.create_table(
AttributeDefinitions=[
{
'AttributeName': 'id',
'AttributeType': 'S'
},
],
BillingMode='PROVISIONED',
TableName=TABLE_NAME,
KeySchema=[
{
'AttributeName': 'id',
'KeyType': 'HASH'
},
],
)
写Serverless表示例
创建Serverless表成功后,写Serverless表的Python样例如下:
#!/usr/bin/python
import boto3
for i in range(0, 100):
dynamodb.batch_write_item(RequestItems={
TABLE_NAME: [
{
'PutRequest': {
'Item': {
'id': str(i), 'x': {'hello': 'world'}
}
},
}
]
})
查询Serverless表示例
查询Serverless表的Python样例如下:
#!/usr/bin/python
import boto3
for i in range(0, 100):
print(dynamodb.batch_get_item(RequestItems={
TABLE_NAME: {'Keys': [{'id': str(i)}]}
}))