OTSClient是Tablestore服務的用戶端,它為調用者提供了一系列的方法,可以用來動作表、讀寫單行資料、讀寫多行資料等。
確定Endpoint
Endpoint是阿里雲Tablestore服務各個執行個體的網域名稱地址,目前支援下列形式。
樣本 | 解釋 |
---|---|
http://sun.cn-hangzhou.ots.aliyuncs.com | HTTP協議,公網網路訪問杭州地區的sun執行個體。 |
https://sun.cn-hangzhou.ots.aliyuncs.com | HTTPS協議,公網網路訪問杭州地區的sun執行個體。 |
注意 除了公網可以訪問外,也支援私網地址。更多請參見服務地址。
請按照如下步驟擷取執行個體的Endpoint:
配置密鑰
要接入阿里雲的Tablestore服務,您需要擁有一個有效存取金鑰進行簽名認證。目前支援下面三種方式:
- 阿里雲帳號的AccessKey ID和AccessKey Secret。建立步驟如下:
- 在阿里雲官網註冊阿里雲帳號。
- 建立AccessKey ID和AccessKey Secret。具體操作,請參見擷取AccessKey。
- 被授予訪問Tablestore許可權的RAM使用者的AccessKey ID和AccessKey Secret。建立步驟如下:
- 使用阿里雲帳號前往存取控制RAM,建立一個新的RAM使用者或者使用已經存在的RAM使用者。
- 使用阿里雲帳號授予RAM使用者訪問Tablestore的許可權。
- RAM使用者被授權後,即可使用自己的AccessKey ID和AccessKey Secret訪問。
- 從STS擷取的臨時訪問憑證。擷取步驟如下:
- 應用的伺服器通過訪問RAM/STS服務,擷取一個臨時的AccessKey ID、AccessKey Secret和SecurityToken發送給使用方。
- 使用方使用上述臨時密鑰訪問Tablestore服務。
初始化對接
- 介面
""" 初始化``OTSClient``執行個體。 ``end_point``是Tablestore服務的地址(例如'https://instance.cn-hangzhou.ots.aliyun.com:80'),必須以'https://'開頭。 ``access_key_id``是訪問Tablestore服務的AccessKeyID,通過官方網站申請或通過管理員擷取。 ``access_key_secret``是訪問Tablestore服務的AccessKeySecret,通過官方網站申請或通過管理員擷取。 ``instance_name``是要訪問的執行個體名,通過官方網站控制台建立或通過管理員擷取。 ``sts_token``是訪問Tablestore服務的STS token,從阿里雲STS服務擷取,具有有效期間,到期後需要重新擷取。 ``encoding``請求參數的字串編碼類別型,預設值為utf8。 ``socket_timeout``是串連池中每個串連的Socket逾時,單位為秒,可以為int或float。預設值為50。 ``max_connection``是串連池的最大串連數。預設值為50。 ``logger_name``用來在請求中列印DEBUG日誌,或者在出錯時列印ERROR日誌。 ``retry_policy``定義了重試策略,預設的重試策略為DefaultRetryPolicy。你您可以繼承RetryPolicy來實現自己的重試策略,詳情請參見DefaultRetryPolicy的代碼。 """ class OTSClient(object): def __init__(self, endpoint, access_key_id, access_key_secret, instance_name, **kwargs):
- 樣本
######### 設定記錄檔名稱和重試策略 ######### # 記錄檔名稱為table_store.log,重試策略是WriteRetryPolicy,會對寫重試。 ots_client = OTSClient('endpoint', 'access_key_id', 'access_key_secret', 'instance_name', logger_name = 'table_store.log', retry_policy = WriteRetryPolicy()) ######### 使用STS ######### ots_client = OTSClient('endpoint', 'STS.K8h*******GB77', 'CkuDj******Wn6', 'instance_name', sts_token = 'CAISjgJ1q6Ft5B2y********OFcsLLuw==')
HTTPS
- 從2.0.8版本開始支援HTTPS。
- OpenSSL版本最少為0.9.8j,推薦OpenSSL 1.0.2d。
- Python 2.0.8發布包中包含了certifi包直接安裝使用。如果需要更新根憑證請從根憑證下載最新的根憑證。