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

StarRocks Connector

更新時(shí)間:

StarRocks Connector通過(guò)實(shí)現(xiàn)External Catalog機(jī)制,無(wú)需數(shù)據(jù)導(dǎo)入或創(chuàng)建外部表即可無(wú)縫訪(fǎng)問(wèn)MaxCompute數(shù)據(jù)源,并執(zhí)行復(fù)雜的SQL查詢(xún),提升了數(shù)據(jù)分析效率并降低了運(yùn)維難度和成本。本文為您介紹如何通過(guò)StarRocks Connector訪(fǎng)問(wèn)MaxCompute。

背景信息

StarRocks是新一代極速全場(chǎng)景MPP (Massively Parallel Processing) 數(shù)據(jù)庫(kù),可以滿(mǎn)足企業(yè)級(jí)用戶(hù)的多種分析需求,包括OLAP (Online Analytical Processing) 多維分析、定制報(bào)表、實(shí)時(shí)數(shù)據(jù)分析和Ad-hoc數(shù)據(jù)分析等。關(guān)于StarRocks詳情,請(qǐng)參見(jiàn)StarRocks簡(jiǎn)介。StarRocks支持Catalog(數(shù)據(jù)目錄)功能,實(shí)現(xiàn)在一套系統(tǒng)內(nèi)同時(shí)維護(hù)內(nèi)、外部數(shù)據(jù),方便您輕松訪(fǎng)問(wèn)并查詢(xún)存儲(chǔ)在各類(lèi)外部源的數(shù)據(jù),詳情請(qǐng)參見(jiàn)Catalog概述

前提條件

已部署V3.2.3及以上版本StarRocks集群,且確保StarRocks集群能夠正常訪(fǎng)問(wèn)MaxCompute服務(wù)。關(guān)于如何部署StarRocks集群操作,詳情請(qǐng)參見(jiàn)使用Docker Compose部署StarRocks存算一體集群

使用限制

  • 支持讀取分區(qū)表、聚簇表、物化視圖,不支持讀取MaxCompute的Delta Table、外部表、邏輯視圖。

  • 不支持讀JSON數(shù)據(jù)類(lèi)型。

  • 僅支持未開(kāi)啟Schema的MaxCompute項(xiàng)目。關(guān)于Schema詳情,請(qǐng)參見(jiàn)Schema操作

創(chuàng)建MaxCompute Catalog

登錄StarRocks并在StarRocks中創(chuàng)建MaxCompute Catalog。關(guān)于External Catalog詳情,請(qǐng)參見(jiàn)Create External Catalog

語(yǔ)法

CREATE EXTERNAL CATALOG <catalog_name>
[COMMENT <comment>]
PROPERTIES
(
    "type" = "odps",
    CatalogParams,
    ScanParams,
    CachingMetaParams
)

參數(shù)說(shuō)明

  • 公共參數(shù)

    參數(shù)

    是否必填

    說(shuō)明

    catalog_name

    MaxCompute Catalog的名稱(chēng)。命名規(guī)則如下:

    • 必須由字母 (a~z 或 A~Z)、數(shù)字 (0~9) 或下劃線(xiàn) (_) 組成,且只能以字母開(kāi)頭。

    • 總長(zhǎng)度不能超過(guò)1023個(gè)字符。

    • Catalog名稱(chēng)大小寫(xiě)敏感。

    type

    數(shù)據(jù)源的類(lèi)型,需設(shè)置為odps

    comment

    MaxCompute Catalog的描述。

    CatalogParams

    StarRocks訪(fǎng)問(wèn)MaxCompute的相關(guān)參數(shù)。

    ScanParams

    StarRocks訪(fǎng)問(wèn)MaxCompute文件存儲(chǔ)的相關(guān)參數(shù)。

    CachingMetaParams

    指定緩存元數(shù)據(jù)緩存策略的相關(guān)參數(shù)。

  • CatalogParams相關(guān)參數(shù)

    參數(shù)

    是否必填

    說(shuō)明

    odps.endpoint

    MaxCompute服務(wù)的連接地址。您需要根據(jù)創(chuàng)建MaxCompute項(xiàng)目時(shí)選擇的地域以及網(wǎng)絡(luò)連接方式配置Endpoint。各地域及網(wǎng)絡(luò)對(duì)應(yīng)的Endpoint值,請(qǐng)參見(jiàn)Endpoint

    說(shuō)明

    當(dāng)前僅支持使用阿里云VPC網(wǎng)絡(luò)。

    odps.project

    MaxCompute項(xiàng)目名稱(chēng)。您可以登錄MaxCompute控制臺(tái),在工作區(qū) > 項(xiàng)目管理頁(yè)面獲取MaxCompute項(xiàng)目名稱(chēng)。

    說(shuō)明

    如果您創(chuàng)建了標(biāo)準(zhǔn)模式的工作空間,在配置此參數(shù)時(shí),請(qǐng)注意區(qū)分生產(chǎn)環(huán)境與開(kāi)發(fā)環(huán)境(_dev)的項(xiàng)目名稱(chēng)。

    odps.access.id

    阿里云賬號(hào)或RAM用戶(hù)的AccessKey ID。您可以進(jìn)入AccessKey管理頁(yè)面獲取AccessKey ID。

    odps.access.key

    AccessKey ID對(duì)應(yīng)的AccessKey Secret。

    odps.tunnel.quota

    訪(fǎng)問(wèn)MaxCompute使用的Quota名稱(chēng)。訪(fǎng)問(wèn)MaxCompute支持獨(dú)享數(shù)據(jù)傳輸服務(wù)資源組(包年包月)和開(kāi)放存儲(chǔ)(按量計(jì)費(fèi))兩種資源,獲取Quota名稱(chēng)的方式分別如下:

    • 獨(dú)享數(shù)據(jù)傳輸服務(wù)資源組:登錄MaxCompute控制臺(tái),左上角切換地域后,在左側(cè)導(dǎo)航欄選擇工作區(qū)>配額(Quota)管理,查看可使用的Quota列表。具體操作,請(qǐng)參見(jiàn)計(jì)算資源-Quota管理

    • 開(kāi)放存儲(chǔ):登錄MaxCompute控制臺(tái),在左側(cè)導(dǎo)航欄選擇租戶(hù)管理>租戶(hù)屬性,開(kāi)啟開(kāi)放存儲(chǔ)并進(jìn)行授權(quán)操作。具體操作,請(qǐng)參見(jiàn)使用開(kāi)放存儲(chǔ)(按量付費(fèi))

      開(kāi)放存儲(chǔ)資源名稱(chēng)默認(rèn)為pay-as-you-go

  • ScanParams相關(guān)參數(shù)

    參數(shù)

    是否必填

    說(shuō)明

    odps.split.policy

    掃描數(shù)據(jù)時(shí)所使用的分片策略。取值說(shuō)明如下:

    • size(默認(rèn)值):按數(shù)據(jù)大小進(jìn)行分片,默認(rèn)值:256MB。

    • row_offset:按行數(shù)進(jìn)行分片。

    說(shuō)明

    分片策略對(duì)計(jì)算引擎的數(shù)據(jù)掃描并發(fā)度有重要影響,如果默認(rèn)策略不滿(mǎn)足需求,可選擇row_offset策略結(jié)合odps.split.row.count參數(shù)自行調(diào)整。

    odps.split.row.count

    每個(gè)分片的最大行數(shù),默認(rèn)值:4194304,取值范圍:大于0。

    說(shuō)明

    僅當(dāng)odps.split.policy參數(shù)為row_offset時(shí)需配置此參數(shù)。

  • CachingMetaParams相關(guān)參數(shù)

    參數(shù)

    是否必填

    說(shuō)明

    odps.cache.table.enable

    是否緩存表的元數(shù)據(jù)。取值說(shuō)明如下:

    • true(默認(rèn)值):開(kāi)啟緩存表的元數(shù)據(jù),有助于提升元數(shù)據(jù)的檢索和更新速度,適用于頻繁進(jìn)行DDL操作、大型多用戶(hù)環(huán)境以及需要進(jìn)行復(fù)雜查詢(xún)優(yōu)化的場(chǎng)景。

    • false:關(guān)閉緩存表的元數(shù)據(jù),由于緩存資源有限,且過(guò)度依賴(lài)緩存可能導(dǎo)致內(nèi)存資源過(guò)度消耗,對(duì)于非高頻查詢(xún)或表元數(shù)據(jù)經(jīng)常變化的場(chǎng)景可關(guān)閉緩存。

    odps.cache.table.expire

    自動(dòng)淘汰緩存的表元數(shù)據(jù)的時(shí)間間隔,單位:秒(s)。默認(rèn)值:86400,即24小時(shí),取值范圍:大于等于0。

    odps.cache.table.size

    緩存表元數(shù)據(jù)的數(shù)量。默認(rèn)值:1000。

    odps.cache.partition.enable

    是否緩存目標(biāo)表下所有分區(qū)的元數(shù)據(jù)。取值說(shuō)明如下:

    • true(默認(rèn)值):開(kāi)啟緩存目標(biāo)表下所有分區(qū)的元數(shù)據(jù)。

    • false:關(guān)閉緩存,所有分區(qū)的元數(shù)據(jù)均不緩存。

    說(shuō)明

    若非分區(qū)表配置odps.cache.partition.enable參數(shù)將不生效。

    odps.cache.partition.expire

    自動(dòng)淘汰緩存所有分區(qū)元數(shù)據(jù)的時(shí)間間隔,單位:秒(s)。默認(rèn)值:86400,即24小時(shí),取值范圍:大于等于0。

    odps.cache.partition.size

    可緩存的分區(qū)表的數(shù)量。默認(rèn)值:1000。

    odps.cache.table-name.enable

    是否緩存MaxCompute項(xiàng)目下所有表名稱(chēng)。取值說(shuō)明如下:

    • true:開(kāi)啟緩存MaxCompute項(xiàng)目下所有表名稱(chēng)。

    • false(默認(rèn)值):關(guān)閉緩存,不進(jìn)行MaxCompute項(xiàng)目下所有表名稱(chēng)的緩存。

    odps.cache.table-name.expire

    自動(dòng)淘汰緩存MaxCompute項(xiàng)目中表信息數(shù)據(jù)的時(shí)間間隔,單位:秒(s)。默認(rèn)值:86400,即24小時(shí),取值范圍:大于等于0。

示例

以下示例演示創(chuàng)建一個(gè)名為odps_catalog的MaxCompute Catalog,其中以MaxCompute項(xiàng)目mf_mc_bj為例。

-- 創(chuàng)建catalog
CREATE EXTERNAL CATALOG odps_catalog PROPERTIES(
    "type"="odps",
    "odps.access.id"="LTAI5tRzd4W8cTyLZKT****",
    "odps.access.key"="gJwKaF3hK9MDAQgbO0zsHCz****",
    "odps.endpoint"="http://service.cn-beijing.maxcompute.aliyun.com/api",
    "odps.tunnel.quota"="pay-as-you-go",
    "odps.project"="mf_mc_bj"
);

訪(fǎng)問(wèn)MaxCompute

  1. 切換到目標(biāo)Catalog和MaxCompute項(xiàng)目。本文以odps_catalogmf_mc_bj為例。

    • 語(yǔ)法

      • 方式一

        --指定Catalog
        SET CATALOG <catalog_name>;
        --指定MaxCompute項(xiàng)目
        USE <project_name>;
      • 方式二

        USE <catalog_name>.<project_name>;
    • 示例

      SET CATALOG odps_catalog;
      USE mf_mc_bj;
  2. 查詢(xún)數(shù)據(jù)。本文以src表為例。

SELECT COUNT(*) FROM src LIMIT 10;

返回結(jié)果如下。

+------+-------+
| key  | value |
+------+-------+
| 1    | 1     |
| 3    | 3     |
| 2    | 2     |
| 4    | 100   |
| 5    | 200   |
| 6    | 300   |
| 3    | 400   |
+------+-------+

其他操作

查看MaxCompute Catalog

  • 查詢(xún)當(dāng)前所在StarRocks集群中所有Catalog。

    SHOW CATALOGS;

    返回結(jié)果如下。

    +-----------------+----------+------------------------------------------------------------------+
    | Catalog         | Type     | Comment                                                          |
    +-----------------+----------+------------------------------------------------------------------+
    | default_catalog | Internal | An internal catalog contains this cluster‘s self-managed tables. |
    | odps_catalog    | Odps     | NULL                                                             |
    +-----------------+----------+------------------------------------------------------------------+
  • 查詢(xún)指定Catalog對(duì)應(yīng)的創(chuàng)建語(yǔ)句。

    SHOW CREATE CATALOG odps_catalog;

    返回結(jié)果如下。

    +--------------+--------------------------------------------------------------------------+
    | Catalog      | Create Catalog                                                           |
    +--------------+--------------------------------------------------------------------------+
    | odps_catalog | CREATE EXTERNAL CATALOG `odps_catalog`
                     PROPERTIES ("odps.endpoint"  =  "http://service.cn-beijing.maxcompute.aliyun.com/api",
                     "odps.access.id"  =  "LT******Kb",
                     "odps.access.key"  =  "gJ******CB",
                     "odps.project"  =  "odps_project",
                     "type"  =  "odps"
                    )|
    +-----------------------------------------------------------------------------------------+

查看MaxCompute表結(jié)構(gòu)

  • 查詢(xún)MaxCompute表結(jié)構(gòu)。

    • 語(yǔ)法

      DESC[RIBE] <catalog_name>.<database_name>.<table_name>;
    • 參數(shù)說(shuō)明

      • catalog_name:必填,Catalog名稱(chēng)。

      • database_name:必填,目標(biāo)Catalog下的MaxCompute項(xiàng)目名稱(chēng)。

      • table_name:必填,目標(biāo)MaxCompute項(xiàng)目下的表名稱(chēng)。

    • 示例

      DESC odps_catalog.mf_mc_bj.src;

      返回結(jié)果如下。

      +-------+------+------+-------+---------+-------+
      | Field | Type | Null | Key   | Default | Extra |
      +-------+------+------+-------+---------+-------+
      | id    | INT  | Yes  | false | NULL    |       |
      | a     | INT  | Yes  | false | NULL    |       |
      +-------+------+------+-------+---------+-------+
  • 查詢(xún)MaxCompute表結(jié)構(gòu)和對(duì)應(yīng)的建表語(yǔ)句。

    • 語(yǔ)法

      SHOW CREATE TABLE <catalog_name>.<database_name>.<table_name>;
    • 參數(shù)說(shuō)明

      • catalog_name:必填,Catalog名稱(chēng)。

      • database_name:必填,目標(biāo)Catalog下的MaxCompute項(xiàng)目名稱(chēng)。

      • table_name:必填,目標(biāo)MaxCompute項(xiàng)目下的表名稱(chēng)。

    • 示例

      SHOW CREATE TABLE odps_catalog.mf_mc_bj.src;

      返回結(jié)果如下。

      +-------+--------------------------------------------------------------------------------+
      | Table | Create Table                                                                   |
      +-------+--------------------------------------------------------------------------------+
      | src   | CREATE TABLE `src` (
        `id` int(11) DEFAULT NULL,
        `a` int(11) DEFAULT NULL
      ) |
      +-------+--------------------------------------------------------------------------------+

刪除 MaxCompute Catalog

您可通過(guò)如下命令,刪除MaxCompute Catalog。

DROP CATALOG odps_catalog;

CBO(Cost-Based Optimizer)統(tǒng)計(jì)信息采集

StarRocks當(dāng)前版本暫不支持自動(dòng)采集MaxCompute表的統(tǒng)計(jì)信息,您可以通過(guò)以下命令,手動(dòng)創(chuàng)建采集任務(wù),進(jìn)行統(tǒng)計(jì)信息采集。

--<table_name>替換為MaxCompute表名稱(chēng)
ANALYZE TABLE <table_name>;
說(shuō)明

StarRocks CBO可以基于多種統(tǒng)計(jì)信息進(jìn)行代價(jià)估算,能夠在數(shù)萬(wàn)級(jí)別的執(zhí)行計(jì)劃中,選擇代價(jià)最低的執(zhí)行計(jì)劃,提升復(fù)雜查詢(xún)的效率和性能,詳情請(qǐng)參見(jiàn)CBO統(tǒng)計(jì)信息

手動(dòng)更新元數(shù)據(jù)緩存

默認(rèn)情況下,StarRocks會(huì)緩存MaxCompute的元數(shù)據(jù),從而提高查詢(xún)性能。當(dāng)對(duì)表做了表結(jié)構(gòu)變更或表數(shù)據(jù)更新后,您也可以手動(dòng)更新該表的元數(shù)據(jù),從而確保StarRocks第一時(shí)間獲取到新的元數(shù)據(jù)緩存。

--<table_name>替換為MaxCompute表名稱(chēng)
REFRESH EXTERNAL TABLE <table_name>;

常見(jiàn)問(wèn)題

讀取報(bào)錯(cuò):Your slot quota is exceeded.

  • 問(wèn)題分析

    當(dāng)讀取數(shù)據(jù)超過(guò)數(shù)據(jù)傳輸服務(wù)限額時(shí),會(huì)觸發(fā)該報(bào)錯(cuò)。在讀取數(shù)據(jù)時(shí),StarRocks會(huì)將表切分成若干分片,分發(fā)給BE,由BE通過(guò)線(xiàn)程池并發(fā)讀取。因此,在讀取過(guò)程中占用的Slot數(shù)量通常為:Max(分片數(shù)量,BE數(shù)量*BE線(xiàn)程池并發(fā)數(shù))

  • 解決方案

    • 購(gòu)買(mǎi)高并發(fā)數(shù)的獨(dú)享數(shù)據(jù)傳輸服務(wù)資源。具體操作,請(qǐng)參見(jiàn)購(gòu)買(mǎi)與使用獨(dú)享數(shù)據(jù)傳輸服務(wù)資源組

    • 通過(guò)配置ScanParams參數(shù),調(diào)整分片數(shù)量。如采用row_offset分片策略,還需提高odps.split.row.count參數(shù)。

    • 修改Starrocks BE線(xiàn)程池?cái)?shù)量scanner_thread_pool_queue_sizescanner_thread_pool_thread_num。修改方式詳情,請(qǐng)參見(jiàn)StarRocks簡(jiǎn)介

附錄:類(lèi)型映射

MaxCompute字段類(lèi)型

StarRocks字段類(lèi)型

BOOLEAN

BOOLEAN

TINYINT

TINYINT

SMALLINT

SMALLINT

INT

INT

BIGINT

BIGINT

FLOAT

FLOAT

DOUBLE

DOUBLE

DECIMAL(p, s)

DECIMAL(p, s)

STRING

VARCHAR(1073741824)

VARCHAR(n)

VARCHAR(n)

CHAR(n)

CHAR(n)

JSON

VARCHAR(1073741824)

BINARY

VARBINARY

DATE

DATE

DATETIME

DATETIME

TIMESTAMP

DATETIME

重要

在StarRocks中,由于不存在TIMESTAMP類(lèi)型,當(dāng)讀取TIMESTAMP類(lèi)型數(shù)據(jù)時(shí),會(huì)被作為DATETIME類(lèi)型處理,導(dǎo)致數(shù)據(jù)精度丟失。

ARRAY

ARRAY

MAP

MAP

STRUCT

STRUCT