用戶端初始化

更新時間:
Copy as MD

LindormTSDBClientLindorm時序引擎的Java用戶端,用於讀寫Lindorm時序引擎的資料。使用Java Native SDK發起Lindorm時序引擎讀寫請求前,您需要初始化一個LindormTSDBClient執行個體,並根據需要修改ClientOptions的預設配置項。

建立LindormTSDBClient

建立LindormTSDBClient時,需要指定資料庫連接地址。Lindorm時序引擎串連地址的擷取方法,請參見查看串連地址

在建立LindormTSDBClient時還可以配置連線逾時時間、攢批寫入的批次大小、最大重試次數等選擇性參數,樣本如下。

// 擷取Lindorm時序引擎的HTTP串連地址
String url = "http://ld-bp1489gr5t*****-proxy-tsdb.lindorm.rds.aliyuncs.com:8242";
// 使用者名稱
String username = "username";
// 使用者密碼
String password = "password";
// 訪問的資料庫
String db = "default";

// ClientOptions參數的具體含義和預設值,可以參考'配置LindormTSDBClient'章節
ClientOptions options = ClientOptions
                // 必選
                .newBuilder(url)
                // 若執行個體未開啟鑒權,則可選;否則必選
                .setUsername(username)
                // 若執行個體未開啟鑒權,則可選;否則必選
                .setPassword(password)
                // 可選
                .setNumBatchThreads(8)
                // 可選
                .setMaxRetries(3)
                // 可選
                .setRetryBackoffMs(1000)
                 // 可選
                .setRequestTimeoutMs(30000)
                 // 可選
                .setConnectTimeoutMs(30000)
                 // 可選
                .setMaxWaitTimeMs(300)
                 // 可選
                .setBatchSize(500)
                 // 可選
                .setMaxPointBatches(32) 
                 // 可選    
                .setDefaultDatabase(db)
                 // 可選
                .setQueryChunkSize(1000)
                 // 可選
                .setSchemaPolicy(SchemaPolicy.WEAK)
                .build();

// 建立LindormTSDBClient執行個體,LindormTSDBClient安全執行緒,可以重複使用,無需頻繁建立和銷毀
LindormTSDBClient client = LindormTSDBFactory.connect(options);

// 關閉LindormTSDBClient執行個體
client.shutdown();

配置LindormTSDBClient

ClientOptionsLindormTSDBClient的配置類,您可通過此類來配置連線逾時、非同步攢批寫入的批次大小、最大重試次數等參數。可設定的參數如下:

參數

是否必填

描述

方法

url

必填

Lindorm時序引擎的串連地址。

ClientOptions.Builder()

username

Lindorm時序引擎開啟鑒權,則必須指定。

使用者名稱。

ClientOptions.Builder#setUsername

password

Lindorm時序引擎開啟鑒權,則必須指定。

密碼。

ClientOptions.Builder#setPassword

numBatchThreads

可選

攢批非同步寫入的線程數,預設為8。

ClientOptions.Builder#setNumBatchThreads

maxRetries

可選

當寫入遇到服務端內部錯誤或者網路錯誤時最大重試次數,預設值為3。

ClientOptions.Builder#setMaxRetries

retryBackoffMs

可選

寫入失敗後重試等待時間,單位為毫秒,預設值為1000,即失敗後等待1000毫秒後再嘗試發送資料。

ClientOptions.Builder#setRetryBackoffMs

requestTimeoutMs

可選

請求逾時時間,單位為毫秒,預設值為30000。

ClientOptions.Builder#setRequestTimeoutMs

connectTimeoutMs

可選

連線逾時時間,單位為毫秒,預設值為30000。

ClientOptions.Builder#setConnectTimeoutMs

maxWaitTimeMs

可選

資料點攢批時在隊列中的最大等待時間,單位為毫秒,預設值為300。

ClientOptions.Builder#setMaxWaitTimeMs

batchSize

可選

攢批寫入時每次向服務端發送的批次大小,預設值為500。

ClientOptions.Builder#setBatchSize

maxPointBatches

可選

攢批寫入時隊列中儲存的最大批數,預設值為32。

說明

隊列中儲存的最大點數為:maxPointBatches乘以batchSize。如果儲存超出最大點數會阻塞寫入。

ClientOptions.Builder#setMaxPointBatches

defaultDatabase

可選

讀寫預設資料庫,預設值為default;Lindorm時序引擎執行個體會預設建立一個名為default的資料庫。

ClientOptions.Builder#setDefaultDatabase

queryChunkSize

可選

預設每批返回的行數,預設值為1000。

ClientOptions.Builder#setQueryChunkSize

schemaPolicy

可選

Schema約束策略,可設定以下三種策略:STRONG、WEAKNONE。預設為STRONG策略。

說明

SchemaPolicy詳細介紹,參見Schema約束

ClientOptions.Builder#setSchemaPolicy