開發與維運

SDK使用指南

Data使用指南

參數設置

shard數量設置

​ Shard表示對一個Topic進行數據傳輸的併發通道,每個Shard啟用以後會佔用一定的服務端資源,建議按需申請Shard數量

​ shard數量評估指標

  • ​ QPS:單shard寫入QPS 限制為2000次/s
  • ​ Throughput:單shard每秒吞吐量最大為 5M/S
Topic生命週期設置

​ 生命週期代表數據有效期,DataHub Topic數據超過有效期則失效,無法消費

​ 有效期單位為天,範圍為1-7天,可通過管控臺頁面修改數據有效期

SDK規範

​ 主要說明DataHub 讀寫代碼編寫規範

寫入數據

接口選擇

​ 針對服務端版本>=2.12的,推薦使用putRecordsByShard接口寫入數據,putRecordsByShard接口寫入失敗會直接拋出異常來告知用戶

​ 針對服務端版本<2.12的,只能使用putRecords接口,用戶需要判斷PutRecordsResult結果來確認數據是否寫入成功

寫入方式
其他
  • batch寫入,減少資源請求消耗

    • DataHub單shard寫入QPS 限制為2000次/s,每次batch請求量為4M,請根據數據大小選擇合適的批量寫入條數,提高寫入效率
  • 重試機制

    • 為了增強程序健壯性,有必要對寫入數據增加重試機制,避免由於網絡、升級等其他原因造成的短暫不可用
    • 部分可重試錯誤:例如server busy,server unavailable等,因此建議遇到DatahubClientException和LimitExceededException時,可以在代碼邏輯中添加重試邏輯,但應嚴格限制重試次數。

讀取數據

消費方式
  • ​ 協同消費(推薦)

    • 協同消費同樣支持自動分配shard消費數據
  • 使用SDK關聯訂閱消費DataHub數據

    • 適用情況:需要消費指定shard數據
注意事項
  • 一個shard只能被一個線程消費
  • 一個訂閱創建後只需要初始化一次offset,多次初始化會生成新的session,無法提交點位

Leave a Reply

Your email address will not be published. Required fields are marked *