日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

什么是EMR Serverless StarRocks

EMR Serverless StarRocks是開源StarRocks在阿里云上的全托管服務,您可以通過其靈活地創建和管理實例以及數據。本文為您介紹StarRocks的核心特性,并詳述EMR Serverless StarRocks在此基礎之上所引入的諸多增強功能與服務優勢。

前置概念

閱讀本文前,您可能需要了解如下概念:

StarRocks介紹

StarRocks是一款支持MySQL協議的分析型數據庫,它集成了向量化處理、MPP架構、代價基礎優化器(CBO)、智能物化視圖和實時更新的列式存儲技術,從而實現了快速、實時、高效的多維數據分析。您可以輕松地將實時或離線數據源導入到StarRocks中,也可以直接對數據湖中的多種數據格式進行分析。由于其與MySQL協議的兼容性,您可以簡便地使用MySQL客戶端和常用BI工具進行接入。此外,StarRocks還提供水平擴展能力,并具備高可用、高可靠和易于運維的特點,適用于實時數據倉庫、OLAP報表、數據湖分析等多種業務場景。

StarRocks特性

MPP分布式執行框架

StarRocks采用MPP(Massively Parallel Processing)分布式執行框架。在這一架構下,一條查詢請求會被拆分成多個物理計算單元,在多臺機器上并行執行。每個執行節點擁有獨享的資源,包括CPU與內存。MPP框架能夠使得單個查詢請求充分利用所有執行節點的資源,因此隨著集群水平的擴展,單個查詢的性能可以不斷提升。

全面向量化引擎

StarRocks的計算層全面采用了向量化技術,將所有算子、函數、掃描過濾和導入導出模塊進行了系統性優化。向量化引擎最大化了CPU的處理能力,通過列式數據組織和處理方式極大地提升效率。數據的存儲和內存中的組織、SQL算子的計算都基于列式實現,使得CPU緩存使用更有效,減少了虛函數調用和分支判斷,從而實現更順暢的CPU指令流水線操作。

利用CPU提供的SIMD(Single Instruction Multiple Data)指令,StarRocks的全面向量化引擎以更少的指令執行更多的數據操作,標準測試集驗證表明,這能夠讓執行算子的性能整體提升3到10倍。

除了算子全面向量化之外,StarRocks執行引擎中還包含了額外的優化技術,例如“Operation on Encoded Data”。此技術允許直接在編碼后的字段上,無需解碼,執行各類算子,包括關聯、聚合、表達式計算等。這顯著降低了SQL執行過程中的計算復雜度,使相關查詢速度提升了2倍以上。

存儲計算分離

StarRocks 3.0版本支持了全新的存算分離模式,實現了計算資源與存儲資源的完全解耦,提升了系統的靈活性、性能和可靠性,同時降低了成本。

在存儲計算分離模式中,存儲和計算成為了獨立服務,可以單獨進行伸縮,有效避免了傳統存算一體模式中由于等比例擴縮容帶來的資源浪費問題。這種解耦使計算節點能在幾秒內動態伸縮,極大地提高了資源利用率。

對于存儲層,StarRocks利用了對象存儲的幾乎無限容量和高可用性特點,不僅支持多種云上對象存儲,也兼容HDFS,確保數據的大規模存儲和持久化。

StarRocks的存儲計算分離模式保留了與傳統存算一體模式相同的功能,無論是數據寫入還是熱數據查詢性能均可相比肩。在此模式下,您同樣能夠應對數據更新、數據湖分析、物化視圖加速等多樣化的數據場景需求。

CBO優化器

在多表關聯查詢場景下,即使擁有高性能的執行引擎也不足以保證最佳的執行效能。這是因為在此類場景中,不同執行計劃的效率差異可能相差極大,尤其是隨著關聯表數量的增加,有效執行計劃的數量也呈指數級增長,從而使得尋找最優執行計劃成為一個復雜度極高的NP-Hard問題。因此,一款能夠準確選擇最佳查詢計劃的優秀查詢優化器對于實現最優的多表查詢性能至關重要。

StarRocks設計并實現了一個全新的、基于代價的優化器(CBO,Cost Based Optimizer)。該優化器采用Cascades-like架構,深度定制以充分利用StarRocks全面向量化的執行引擎,并引入了眾多創新優化措施。CBO不僅能實現公共表達式的復用和相關子查詢的重寫,還支持Lateral Join、Join Reorder以及針對Join操作的分布式執行策略選取,以及優化了低基數詞典編碼等關鍵性能提升功能。目前,這款優化器已經能夠全面支持TPC-DS的99條SQL語句。

得益于這款先進的CBO,StarRocks相較于同類產品在應對多表關聯查詢,尤其是復雜多表關聯查詢方面表現出色,極大地發揮了向量化執行引擎的性能潛力。

可實時更新的列式存儲引擎

StarRocks采用了先進的列式存儲引擎,將相同類型的數據以按列的方式進行連續存放。這種存儲方法使數據能夠采用更為高效的編碼策略,不僅提升了數據的壓縮率,降低了存儲成本,同時也減少了查詢過程中的磁盤I/O需求,顯著提升查詢速度。在典型的OLAP場景中,由于查詢通常只聚焦于特定幾個列,列式存儲額外減少了讀取非必要列的數據量,從而能夠在很大程度上削減磁盤I/O的負擔,實現大幅度的吞吐量節省。

StarRocks能夠實現秒級的導入延遲,提供近乎實時的數據處理能力。其存儲引擎在導入數據的同時保障了ACID事務特性,保證了批量導入的原子性,確保操作要么全部導入成功,要么全部導入失敗。這種設計允許多個事務并行處理,同時提供快照隔離(Snapshot Isolation)級別的事務隔離保護。

StarRocks的存儲引擎還特別適用于Partial Update和Upsert等操作。使用Delete-and-Insert的實現方式,通過主鍵索引快速過濾數據,避免讀取階段的Sort和Merge操作。此外,該引擎還能夠利用其他二級索引,在大規模數據更新的場景下,依然能夠保持對查詢請求的超高速響應。

智能物化視圖

  • 自動化數據同步與實時更新:StarRocks支持使用物化視圖進行查詢加速和數倉分層。StarRocks的物化視圖能夠實現自動同步。每當原始表中的數據發生任何變更,物化視圖能即時感知并自動完成相應的更新操作,確保與原表數據始終保持一致。此外,StarRocks還具備智能選擇物化視圖的功能。在查詢規劃階段,若檢測到有能夠提升查詢效率的物化視圖存在,StarRocks將自動執行查詢改寫,確保使用最優物化視圖進行查詢。

  • 靈活創建與管理物化視圖:StarRocks物化視圖支持按需靈活創建與刪除。您可以在使用過程中視實際使用情況來判斷是否需要創建或刪除物化視圖。整個過程在后臺自動完成,無需人工干預。

  • 簡化ETL流程與數據處理:StarRocks的物化視圖能夠替代傳統的ETL建模流程。您無需在上游應用中進行數據轉換操作,便可以直接在使用物化視圖的過程中實現數據的轉換與加工,簡化了數據處理流程。

數據湖分析

StarRocks不僅能高效地分析本地存儲的數據,也可以作為計算引擎直接分析數據湖中的數據。您可以通過StarRocks提供的External Catalog,輕松查詢存儲在Apache Hive、Apache Iceberg、Apache Hudi、Delta Lake等數據湖上的數據,無需進行數據遷移。支持Parquet、ORC、CSV等文件格式;也支持HDFS、S3、OSS等存儲方式。

在數據湖分析場景中,StarRocks主要負責數據的計算分析,而數據湖則主要負責數據的存儲、組織和維護。使用數據湖的優勢在于可以使用開放的存儲格式和靈活多變的Schema定義方式,可以讓BI、AI、AdHoc、報表等業務維持在統一的單點身份可信(Single Source of Truth),而StarRocks作為數據湖的計算引擎,可以充分發揮向量化引擎和CBO(Cost Based Optimizer)的優勢,大大提升了數據湖分析的性能。

Serverless StarRocks增強特性

EMR Serverless StarRocks主要在企業級功能方面做了以下增強:

  • 全托管的免運維產品服務形態,大大降低了運維和使用的復雜度以及成本。

  • 可視化的StarRocks實例管理控制臺,使得實例的整體運維和管理更加方便。

  • 可視化的監控及運維能力。

  • 支持大、小版本自動升級,方便StarRocks進行版本升級管理。

  • 增加EMR StarRocks Manager,提供了企業級的StarRocks管理能力:

    • 安全能力:支持用戶及權限管理。

    • 診斷分析:支持可視化慢SQL,及SQL查詢分析能力。

    • 數據管理:提供數據庫、表、分區、分片、任務的查詢能力,方便運維管理。