全部產品
Search
文件中心

E-MapReduce:快速使用存算分離版執行個體

更新時間:Dec 20, 2025

存算分離版執行個體適用於對儲存成本高度敏感且對查詢效率要求相對較低的業務情境,例如OLAP多維分析及資料倉儲應用。此外,該執行個體也適合查詢儲存於Apache Hive、Apache Iceberg、Apache Hudi以及Apache Paimon等多種資料湖中的資料,涵蓋OSS、OSS-HDFS及HDFS等多個平台。通過該執行個體,無需進行資料移轉即可實現快速的資料湖查詢與分析,其效能較Presto高出3到5倍。該執行個體類型採用存算分離架構,將資料存放區於阿里雲OSSObject Storage Service中。

前提條件

  • 登入阿里雲帳號,並完成實名認證。

  • 如果是RAM使用者,已授權AliyunEMRStarRocksFullAccess系統權限原則,詳情請參見為RAM使用者授權

    說明

    建立和管理StarRocks執行個體需要具備AliyunEMRStarRocksFullAccess系統權限原則。

注意事項

代碼的運行環境由所屬使用者負責管理和配置。

操作步驟

步驟一:建立存算分離版StarRocks執行個體

  1. 進入EMR Serverless StarRocks執行個體列表頁面。

    1. 登入E-MapReduce控制台

    2. 在左側導覽列,選擇EMR Serverless > StarRocks

    3. 在頂部功能表列處,根據實際情況選擇地區。

  2. 執行個體列表頁面,單擊创建实例

  3. E-MapReduce Serverless StarRocks頁面,完成執行個體相關配置。

    配置項

    樣本

    描述

    商品类型

    隨用隨付

    選擇為按量付费,計費詳情請參見隨用隨付

    地域

    華北2(北京)

    執行個體所在的物理位置。

    重要

    執行個體建立後,無法更改地區,請謹慎選擇。

    網路及可用性區域

    • vpc_Hangzhou/vpc-bp1f4epmkvncimpgs****

    • 可用性區域I

    • vsw_i/vsw-bp1e2f5fhaplp0g6p****

    選擇專用網路、可用性區域及其對應的交換器資訊。

    • 專用網路:是您在阿里雲自己定義的一個隔離網路環境,您可以完全掌控自己的專用網路。

      選擇已有的專用網路,或者單擊建立專用網路前往專用網路控制台建立,詳情請參見建立和管理專用網路

      說明
      • 建立專用網路時,IPv4地址網段(CIDR)必須從以下三個RFC 1918標準定義的私人網段中選擇:

        • 10.0.0.0/8(即10.0.0.0 ~ 10.255.255.255)

        • 172.16.0.0/12(即172.16.0.0 ~ 172.31.255.255)

        • 192.168.0.0/16(即192.168.0.0 ~ 192.168.255.255)

      • 如果您的Serverless StarRocks需要訪問公網(例如匯入資料或查詢外部表格),則必須確保其所在的Virtual Private Cloud具備公網訪問能力。您可以通過在VPC中部署公網NAT Gateway並啟用SNAT功能,使Serverless StarRocks執行個體能夠通過該網關訪問公網資源。更多資訊,請參見使用公網NAT GatewaySNAT功能訪問互連網

    • 可用性區域:執行個體所在可用性區域。

    • 交換器:是組成Virtual Private Cloud的基礎網路模組,用來串連不同的雲資源。

      選擇已有的交換器,或者單擊创建交换机前往專用網路控制台即時建立交換器,詳情請參見建立和管理交換器

    实例类型

    存算分離

    適用於對查詢效率要求相對較低的OLAP多維分析、資料湖分析、外表聯邦查詢、即時資料分析以及資料倉儲等情境。

    实例系列

    標準版

    支援入门版标准版,詳情請參見執行個體系列說明

    說明

    入門版僅支援北京、上海、深圳、杭州地區。

    内核版本

    3.3

    StarRocks的社區版本號碼。

    FE 规格

    • 規格類型:标准规格

    • 計算CU:8 CU

    • 資料盤:ESSD PL1雲端硬碟,

    • 高可用:預設開啟。

    • 節點數量:3

    • 負載平衡:內建Private Zone

    • 規格類型:StarRocks不同的实例系列對應FE節點的規格類型不同。

      • 入门版:支援标准规格

      • 标准版:支援标准规格内存增强型規格。

    • 计算 CU:選擇計算單元(CU)。

      請根據實際需求選擇合適的CU規格。有關CU費用的詳細資料,請參見計費項目

    • 数据盘:僅支援ESSD PL1雲端硬碟。資料盤大小取值範圍為100 GB~65000 GB,步長為100。

      有關雲端硬碟的更多資訊,請參見ESSD雲端硬碟

    • 高可用:預設開啟。標準版支援開啟高可用,開啟高可用開關後,StarRocks FE節點數由1增加到3,以降低故障風險。

      重要

      生產環境強烈建議您開通高可用。

    • 节点数量:FE節點的數量。數量範圍:1 ~ 11個,且僅支援奇數。

    • 負載平衡:支援以下方式。

      • 內建 Private Zone:通過PrivateZone網域名稱解析實現流量的自動均攤。無額外費用,適用於輕量級情境或對成本敏感的環境。

        適合非生產環境或對負載平衡效能要求較低的業務。

      • Server Load Balancer:通過開通SLB服務實現高效能的負載平衡。建議用於生產環境,尤其是對系統效能和可靠性要求較高的業務。

        僅在SLB開通後,提供FE Leader摘查詢流量功能。

        需開通SLB服務,會產生額外費用,詳情請參見CLB計費概述

    CN規格

    • 規格類型:标准规格

    • 計算CU:8 CU

    • 資料盤:ESSD PL1雲端硬碟,200 GB,1個

    • 節點數量:3

    • 規格類型:StarRocks不同的实例系列對應CN節點的規格類型不同。

      • 入门版:支援标准规格

      • 标准版:支援以下規格。

        • 標準規格:預設推薦規格,1CU=1核 CPU + 4 GiB 記憶體。該配置使用ESSD雲端硬碟作為StarRocks的儲存解決方案。

        • 記憶體增強型:1RCU=1核 CPU + 8 GiB 記憶體,適用於記憶體消耗較大的情境,如複雜查詢數量較多、並發請求較大等。採用ESSD雲端硬碟作為StarRocks的儲存解決方案。

        • 網路增強型:1NCU=1核 CPU + 4 GiB 記憶體,網路頻寬為標準規格的2倍以上,適用於外表分析資料掃描量較大的情境,使用ESSD雲端硬碟作為StarRocks儲存。

        • 高效能儲存:需要您選擇詳細規格。該規格類型使用本地SSD資料盤作為StarRocks儲存,適用於對儲存I/O效能要求極為嚴格的情境。

        • 大規格儲存:需要您選擇詳細規格。該規格類型使用本地HDD資料盤作為StarRocks儲存,適合於資料量極大的情境,能夠有效降低整體儲存成本,但對儲存I/O效能的要求相對較低。

    • 计算 CU:選擇計算單元(CU)。

      請根據實際需求選擇合適的CU規格。有關CU費用的詳細資料,請參見計費項目

    • 数据盘:支援ESSD PL0云盘ESSD PL1 云盘(推荐)ESSD PL2云盘ESSD PL3云盘彈性臨時盤(標準版)彈性臨時盤(進階版)。有關雲端硬碟和彈性臨時盤費用的詳情資訊,請參見計費項目

      更多資訊,請參見ESSD雲端硬碟彈性臨時盤

      說明
      • 您可以輸入所需的儲存容量,系統將自動提供預設的推薦配置。如果您選擇的雲端硬碟容量超出建議的閾值,系統會彈出相應的提示協助您做出適當的調整以確保最佳效能。

      • 标准规格内存增强型計算增強型支援選擇彈性臨時盤,並且彈性臨時盤有地區和可用性區域等的限制。

    • 节点数量:CN節點的數量。數量範圍:1 ~ 100個。

    实例名称

    自訂執行個體名稱。

    執行個體名稱,長度限制為1~64個字元,僅可使用中文、字母、數字、短劃線(-)和底線(_)。

    管理员用户

    admin

    用於管理StarRocks的管理使用者,預設為admin,無法修改。

    登录密码确认密码

    自訂密碼。

    StarRocks執行個體內建管理使用者admin的密碼。請記錄該配置,管理和使用StarRocks執行個體需要您輸入該密碼。如果忘記該密碼,可以進行重設,詳情請參見如何重設執行個體的密碼?

    更多執行個體參數資訊,請參見建立執行個體

  4. 選中服務合約,單擊创建实例,根據提示完成支付。

    支付完成後,回到執行個體管理頁面,查看建立的執行個體。當執行個體状态运行中時,表示執行個體建立成功。

步驟二:串連StarRocks執行個體

  1. 執行個體列表頁面,單擊操作列的连接实例

    您也可以通過其他方式串連StarRocks執行個體

  2. 串連StarRocks執行個體。

    1. 建立串連頁簽,配置以下資訊。

      image.png

      參數

      樣本

      描述

      地區

      華東1(杭州)

      選擇已建立的StarRocks執行個體所在的物理位置。

      執行個體

      StarRocks_Serverless

      選擇已建立的StarRocks執行個體的名稱。

      串連名稱

      Connection_Serverless

      串連名稱,自訂輸入。

      長度限制為1~64字元,僅可使用中文、字母、數字、短劃線(-)和底線(_)。

      使用者名稱

      根據實際情況輸入

      預設初始使用者名稱為admin,您可以選擇使用該使用者名稱進行串連,或者根據需要建立其他使用者,建立使用者詳情請參見系統管理使用者及資料授權

      密碼

      根據實際情況輸入

      StarRocks執行個體中已建立的使用者名稱對應的密碼。

    2. 單擊測試連通性

    3. 驗證通過後,單擊確定

      進入SQL Editor頁面,即可執行相關的SQL。更多使用資訊,請參見通過EMR StarRocks Manager串連StarRocks執行個體

步驟三:SQL查詢

  1. SQL Editor查詢列表頁面,單擊image.png表徵圖。

  2. 建立檔案對話方塊中,單擊確認

  3. 在建立的檔案中,輸入以下命令,選中所有命令後,單擊運行

    /**建立資料庫**/
    CREATE DATABASE IF NOT EXISTS load_test;
    
    /**使用資料庫**/
    USE load_test;
    
    /**建立表**/
    CREATE TABLE insert_wiki_edit
    (
        event_time DATETIME,
        channel VARCHAR(32) DEFAULT '',
        user VARCHAR(128) DEFAULT '',
        is_anonymous TINYINT DEFAULT '0',
        is_minor TINYINT DEFAULT '0',
        is_new TINYINT DEFAULT '0',
        is_robot TINYINT DEFAULT '0',
        is_unpatrolled TINYINT DEFAULT '0',
        delta INT SUM DEFAULT '0',
        added INT SUM DEFAULT '0',
        deleted INT SUM DEFAULT '0'
    )
    AGGREGATE KEY(event_time, channel, user, is_anonymous, is_minor, is_new, is_robot, is_unpatrolled)
    PARTITION BY RANGE(event_time)
    (
        PARTITION p06 VALUES LESS THAN ('2015-09-12 06:00:00'),
        PARTITION p12 VALUES LESS THAN ('2015-09-12 12:00:00'),
        PARTITION p18 VALUES LESS THAN ('2015-09-12 18:00:00'),
        PARTITION p24 VALUES LESS THAN ('2015-09-13 00:00:00')
    )
    DISTRIBUTED BY HASH(user) BUCKETS 10
    PROPERTIES("replication_num" = "1");
    
    /**插入資料**/
    INSERT INTO insert_wiki_edit VALUES("2015-09-12 00:00:00","#en.wikipedia","GELongstreet",0,0,0,0,0,36,36,0),("2015-09-12 00:00:00","#ca.wikipedia","PereBot",0,1,0,1,0,17,17,0);
    
    /**查詢資料**/
    select * from insert_wiki_edit;

返回資訊如下所示。

image.png

說明

您可以通過執行SHOW CREATE TABLE load_test.insert_wiki_edit;命令,檢查結果中是否包含datacache.enable屬性來確認存算分離執行個體是否已經生效。此外,一旦存算分離庫表建立成功,您還可以在OSS Bucket下找到新建立的庫表目錄。

image

步驟四:查看錶資訊

  1. 在建立的檔案中,輸入以下命令,查看資料庫。

    SHOW PROC '/dbs';

    返回資訊如下所示。

    image

  2. 輸入以下命令,查看錶的詳細資料。

    SHOW PROC '/dbs/10120';

    返回資訊如下所示。

    image

    其中,在存算分離模式下,CLOUD_NATIVE為表的類型欄位標識;StoragePath為表在OSSObject Storage Service中的路徑,通過該路徑可以定位到存算分離表的資料存放區位置。

步驟五:Cache特性示範

  1. 在左側導覽列,選擇診斷與分析 > SQL任務

  2. 找到對應的Query,單擊查詢ID。

  3. 單擊執行詳情頁簽。

    通過查看Profile執行樹,您可以定位到相關節點,並重點關注右側指標中的CompressedBytesReadLocalDisk(從本機快取讀取)和CompressedBytesReadRemote(從遠端OSSObject Storage Service讀取)兩個指標。

    本樣本中,insert_wiki_edit_cache表開啟了本機快取功能。通過觀察相關指標值,可以確定查詢全部命中了本機快取。

    image.png

    insert_wiki_edit_nocache表未啟用本機快取功能。通過分析其對應的指標值,可以確定該表的查詢操作未命中本機快取,資料全部來自遠端OSSObject Storage Service。

    image.png

步驟六:效能測試

本樣本為您展示了存算分離結合本機快取和存算一體兩種模式下的查詢效能對比。您可以使用SSB測試集進行更詳細的效能對比測試,詳情請參見SSB效能測試說明

  • 準備資料環境。

    • 叢集資源配置:1FE(8CU)+3CN(算力:16CU|儲存:1000 GB)。

    • 叢集參數:使用預設設定,存算分離叢集開啟本機快取。

    • 資料量:500 GB(sf=500)

  • 測試結果。

    • 存算一體總計用時:21.586s。

    • 存算分離總計用時(第2次執行時開啟本機快取的情況下): 27.364s。

    • 存算分離沒有開啟本機快取,總計用時:117.529s。

執行sh ssb_query.sh ssb指令碼進行SSB測試後,結果顯示錶明在開啟本機快取的情況下,存算分離和存算一體的查詢效能基本相同,且明顯優於未開啟本機快取時的效能。

SQL     

存算一體

存算分離開啟data cache

存算分離沒有開啟data cache

Q1.1    

0m0.373s

0m0.380s

0m2.080s

Q1.2    

0m0.303s

0m0.292s

0m2.141s

Q1.3    

0m0.101s

0m0.097s

0m0.144s

Q2.1    

0m2.461s

0m2.821s

0m14.401s

Q2.2    

0m2.272s

0m2.735s

0m13.048s

Q2.3    

0m2.168s

0m2.588s

0m13.957s

Q3.1    

0m4.536s

0m4.864s

0m14.810s

Q3.2    

0m2.371s

0m2.682s

0m11.292s

Q3.3    

0m2.082s

0m2.648s

0m13.651s

Q3.4    

0m0.195s

0m0.212s

0m0.572s

Q4.1    

0m5.122s

0m5.847s

0m29.576s

Q4.2    

0m1.141s

0m1.369s

0m1.465s

Q4.3    

0m0.661s

0m0.829s

0m0.792s

Total   

21.586s

27.364s

117.529 s

(可選)步驟七:釋放執行個體

重要

該操作將刪除執行個體及該執行個體下的所有資源,且無法復原,請謹慎操作。

當您不再需要某個執行個體提供服務時,您可以釋放該執行個體,以免產生額外的費用。

  1. 執行個體列表頁面,單擊執行個體操作列的释放

  2. 在彈出的對話方塊中,單擊确定

相關文檔

  • 如需瞭解SQL Editor更多操作,請參見SQL Editor

  • 如需查看當前執行個體的SQL查詢資訊,分析SQL的執行計畫,及時診斷和排查SQL問題,詳情請參見診斷與分析

  • 如需查看並分析資料庫中發生的所有操作,詳情請參見審計日誌

聯絡我們

如果您在使用過程中有任何疑問或問題,可以使用DingTalk搜尋群號24010016636進行諮詢。