天天看點

基于Tablestore的一站式物聯網存儲解決方案-資料湖分析

背景

在共享充電寶場景中,一些日常的運維操作可能會要求存儲系統能夠提供快速的OLAP解決方案。例如運維人員可能不具備開發環境,但會有一些簡單查詢或計算的需求。、表格存儲Tablestore控制台提供了主鍵查詢和多元索引查詢兩種方式。在已經建立了多元索引的表上,可以通過Tablestore控制台實作快速查詢;在未建立多元索引的表上,則不能直接根據屬性列進行查詢、計算。是以,需要存儲系統能夠提供便捷的SQL通路能力。

實作方案

采用DLA+Tablestore+OSS的方案實作使用SQL語言對Tablestore中的資料進行查詢分析。DLA(Data Lake Analytic)提供了分布式SQL查詢計算服務,可對複雜的SQL查詢進行拆分,産生多個子任務并發執行,提升資料查詢速度。Tablestore作為資料存儲主庫,打通了與DLA之間的連接配接,可接受DLA的各類查詢任務。OSS是一款分布式對象存儲系統,在此方案中用于儲存DLA查詢結果。三者之間的關系圖如下:

基于Tablestore的一站式物聯網存儲解決方案-資料湖分析

實作步驟

開通服務

  1. 開通表格存儲Tablestore服務,請參考文檔 開通表格存儲服務 。若已經開通請忽略。
  2. 開通OSS服務,請參考文檔 開通OSS服務
  3. 開通DLA服務,請參考文檔 開通DLA服務

建立Tablestore資料源

  1. 登入 DLA官網 ,進入DLA控制台。
  2. 點選中繼資料管理,選擇Tablestore資料源。
基于Tablestore的一站式物聯網存儲解決方案-資料湖分析
  1. 填寫排程配置,搜尋Tablestore執行個體,自動映射表schema,點選建立。
基于Tablestore的一站式物聯網存儲解決方案-資料湖分析
  1. 選擇對應的中繼資料,點選進入SQL控制台。
基于Tablestore的一站式物聯網存儲解決方案-資料湖分析
  1. 編寫SQL語句
基于Tablestore的一站式物聯網存儲解決方案-資料湖分析

SQL查詢示例

  • 示例:查詢10條已下線的機櫃記錄
基于Tablestore的一站式物聯網存儲解決方案-資料湖分析
  • 示例:查詢使用者手機号為15130755023的所有訂單記錄
基于Tablestore的一站式物聯網存儲解決方案-資料湖分析
  • 示例:查詢機櫃D1911624846530008的時序記錄
基于Tablestore的一站式物聯網存儲解決方案-資料湖分析

SQL結果存儲

  1. OSS官網 ,進入OSS控制台。
  2. 選擇Bucket檔案,檢視SQL結果存儲檔案。
基于Tablestore的一站式物聯網存儲解決方案-資料湖分析

小結

DLA分布式SQL查詢計算服務基于Tablestore的範圍查詢與過濾器的方式,可以在無多元索引的前提下,将複雜的SQL查詢拆解為多個子任務并發執行,進而完成對表格存儲Tablestore中的資料進行SQL查詢分析。同時可以使用OSS服務儲存SQL查詢結果,避免一些耗時查詢的重複執行。