StarRocks可以滿足企業級使用者的多種分析需求。本文介紹StarRocks的應用情境及其解決方案。
適用情境
OLAP多維分析
- 使用者行為分析
- 使用者畫像、標籤分析、圈人
- 高維業務指標報表
- 自助式報表平台
- 業務問題探查分析
- 跨主題業務分析
- 財務報表
- 系統監控分析
即時數倉
- 電商大促資料分析
- 教育行業的直播品質分析
- 物流行業的運單分析
- 金融行業績效分析、指標計算
- 廣告投放分析
- 管理駕駛艙
- 探針分析APM(Application Performance Management)
高並發查詢
- 廣告主報表分析
- 零售行業渠道人員分析
- SaaS行業面向使用者分析報表
- Dashboard多頁面分析
統一分析
通過使用一套系統解決多維分析、高並發查詢、預計算、即時分析查詢等情境,降低系統複雜度和多技術棧開發與維護成本。
使用StarRocks統一管理資料湖和資料倉儲,將高並發和即時性要求很高的業務放在StarRocks中進行分析,也可以使用External Catalog和外部表格進行資料湖上的分析。
典型情境的解決方案
OLAP通用情境解決方案
業務背景:該方案適用於多種業務情境,包括GMV、訂單、物流、客戶分析、推薦系統、使用者畫像情境。支援離線匯入和即時匯入兩種方式來處理資料。
原有解決方案:通過多種OLAP引擎滿足不同的情境。煙囪式搭建各自業務,導致營運難度大,開發人員需要投入大量的時間和精力。
統一OLAP引擎:使用StarRocks統一OLAP引擎來滿足各類分析需求。相較於原有解決方案,我們的解決方案營運更加簡單,並且使用MySQL協議,可以對接各種BI工具,從而實現資料的快速分析和處理。
即時資料分析情境解決方案
步驟如下:
即時攝入:通過直接讀取Kafka資料來實現。提供了Flink-Connector來支援Flink資料流的直接寫入,並保證了exactly-once語義。此外,還支援Flink CDC來捕捉TP資料更新,並即時地將結果更新到StarRocks中。
資料分析:實現了即時資料分析產生的資料可以直接用於Serving,從而實現了即時和離線資料的統一融合。
即時資料建模:提供了即時資料建模彙總表,以支援即時彙總能力。強大的引擎和最佳化器保證了資料庫在即時資料建模時的高效性。
即時更新:採用了delete-and-insert的即時更新策略,且在讀取時無需進行主鍵合并,相較於採用了merge-on-read(unique)的合并策略,效能提升了3~15倍。
湖倉分析情境解決方案
查詢層:複用了當前StarRocks的CBO和查詢引擎能力,使得查詢計算效能達到了Trino的3~5倍。
中繼資料管理:
支援Multi-Catalog管理,無縫對接HMS,同時支援自訂Catalog,便於和雲廠商的DLF對接。
支援通用的Parquet、ORC、CSV等標準格式,實現了延遲物化和小檔案合并讀寫。
支援多種資料湖格式,例如Hudi、Iceberg、DeltaLake和Paimon。
步驟如下:
即時攝入:屏蔽了底層資料來源的細節,支援異構資料來源資料聯合分析,同時支援即時和離線資料的聯合分析。
查詢加速:採用了就近計算策略,例如運算式下推和彙總下推,以及分部署讀取/資料來源針對性最佳化策略。支援向量化解釋ORC、Parquet格式,字典過濾、延遲物化等技術。
測試結果:進行了TPC-H和Hive查詢等測試,與Presto(OR)相比,在同等條件下,效能提升了3~5倍以上,並且僅使用Presto資源的三分之一即可獲得相同的效能體驗。