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

XIHE BSP SQL開發(fā)

更新時(shí)間:

云原生數(shù)據(jù)倉庫 AnalyticDB MySQL 版支持通過SQL開發(fā)編輯器或JDBC方式提交XIHE BSP SQL作業(yè)。本文介紹XIHE BSP SQL作業(yè)開發(fā)的適用場景、提交方法、常見配置參數(shù)及常見問題。

前提條件

  • 已在企業(yè)版、基礎(chǔ)版或湖倉版集群中創(chuàng)建Job型資源組。具體操作,請參見新建資源組

  • 已創(chuàng)建企業(yè)版、基礎(chǔ)版或湖倉版集群的數(shù)據(jù)庫賬號(hào)。

應(yīng)用場景

XIHE BSP SQL作業(yè)由XIHE BSP引擎執(zhí)行,適用于ETL場景、大查詢、突發(fā)低優(yōu)先級(jí)查詢。關(guān)于XIHE BSP引擎的更多內(nèi)容,請參見計(jì)算引擎

ETL場景

典型的ETL流程如下圖。

image

從數(shù)據(jù)源到ADS層的數(shù)據(jù)清洗、數(shù)據(jù)轉(zhuǎn)換等操作通常數(shù)據(jù)量較大,耗時(shí)較長。一般不需要關(guān)心具體查詢的響應(yīng)時(shí)間,只要整體ELT流程能夠在特定時(shí)間點(diǎn)前完成,對可靠性要求更高,需要支持自動(dòng)重試等能力。這部分查詢可以使用XIHE BSP方式執(zhí)行,充分利用XIHE BSP吞吐量大、可靠性更高、成本更低的優(yōu)勢。

對于ADS層的查詢,通常對查詢響應(yīng)時(shí)間更加敏感,常要求秒級(jí)甚至毫秒級(jí)的響應(yīng),這部分查詢可以使用XIHE MPP方式執(zhí)行,以充分利用XIHE MPP引擎速度更快的優(yōu)勢。

XIHE MPP方式無法執(zhí)行的大查詢

由于XIHE MPP執(zhí)行方式的限制,部分?jǐn)?shù)據(jù)量較大的查詢可能出現(xiàn)內(nèi)存報(bào)錯(cuò)、查詢異常等情況。如果仍要在XIHE MPP方式下執(zhí)行,需要進(jìn)行擴(kuò)容等操作來增加更多的資源,從成本來看并不經(jīng)濟(jì)。此時(shí)可嘗試使用XIHE BSP方式執(zhí)行,查詢會(huì)在指定的Job型資源組中執(zhí)行數(shù)據(jù)落盤,對于大查詢更加友好,且Job型資源組的資源按需申請、按需付費(fèi),成本也會(huì)更低。

突發(fā)的低優(yōu)先級(jí)查詢

低優(yōu)先級(jí)查詢通常對響應(yīng)時(shí)間不敏感,但由于其突發(fā)性,系統(tǒng)資源可能不足,可能影響其他查詢的正常執(zhí)行。此時(shí)可嘗試將這些低優(yōu)先級(jí)查詢放入Job型資源組以XIHE BSP方式執(zhí)行,緩解系統(tǒng)的資源壓力,防止查詢之間的互相影響。

使用限制

  • 不支持通過XIHE BSP方式寫Hudi表。

  • 不支持通過XIHE BSP方式讀寫Delta表。

開發(fā)XIHE BSP作業(yè)

您可以采用以下任意一種方式開發(fā)XIHE BSP作業(yè)。

使用SQL開發(fā)編輯器提交XIHE BSP作業(yè)

在SQL開發(fā)頁面,選擇Job型資源組和XIHE引擎,可提交XIHE BSP作業(yè)。

操作步驟

  1. 登錄云原生數(shù)據(jù)倉庫AnalyticDB MySQL控制臺(tái),在左上角選擇集群所在地域。在左側(cè)導(dǎo)航欄,單擊集群列表,在企業(yè)版、基礎(chǔ)版或湖倉版頁簽下,單擊目標(biāo)集群ID。

  2. 在左側(cè)導(dǎo)航欄,單擊作業(yè)開發(fā) > SQL開發(fā)

  3. SQLConsole窗口,選擇Job型資源組和XIHE引擎。

  4. 輸入要執(zhí)行的SQL語句,并單擊執(zhí)行SQL

  5. 等待SQL執(zhí)行完成后,下方執(zhí)行結(jié)果頁簽會(huì)顯示結(jié)果。

    執(zhí)行記錄頁簽,可單擊操作列的結(jié)果下載執(zhí)行結(jié)果。

使用JDBC或MySQL客戶端同步提交XIHE BSP作業(yè)

通過Hint方式,手動(dòng)指定Job型資源組,可同步提交XIHE BSP作業(yè)。

語法

/*+ resource_group=<resource_group_name>*/ <SQL Statement>;
  • resource_group_name:Job型資源組的名稱。

  • SQL Statement:SQL語句。每次執(zhí)行的SQL語句前都需要添加Hint。

示例

/*+ resource_group=bsptest*/SELECT count(*) from test_db.ods_hudi;

使用JDBC或MySQL客戶端異步提交XIHE BSP作業(yè)

通過Hint方式,手動(dòng)指定Job型資源組并指定異步提交XIHE BSP作業(yè)。

語法

/*+ resource_group=<resource_group_name>, query_submission_type=async*/ <SQL Statement>;
  • resource_group_name:Job型資源組的名稱。

  • query_submission_type=async:指定提交方式為異步提交。

  • SQL Statement:SQL語句。每次執(zhí)行的SQL語句前都需要添加Hint。

示例

/*+ resource_group=bsptest, query_submission_type=async*/SELECT count(*) from test_db.ods_hudi;

異步任務(wù)提交后,會(huì)立即返回Job_id。待任務(wù)運(yùn)行完成后,您可以使用SHOW job result WHERE job='Job_id';語句查詢SQL的執(zhí)行結(jié)果。如何查詢異步任務(wù)的狀態(tài),請參見查詢異步任務(wù)狀態(tài)

配置XIHE BSP作業(yè)

您可以設(shè)置一個(gè)XIHE BSP作業(yè)可以使用的資源、默認(rèn)超時(shí)時(shí)間和優(yōu)先級(jí)。

配置方法

BSP作業(yè)的配置,可以僅對單個(gè)作業(yè)生效,可以對單個(gè)Job型資源組執(zhí)行的所有作業(yè)生效,也可以對集群所有的作業(yè)生效。

僅對單個(gè)作業(yè)生效

通過Hint/*+ resource_group=<resource_group_name>,<config_name>*/,使作業(yè)配置只對單個(gè)作業(yè)生效。

其中resource_group_name為資源組名稱,config_name配置項(xiàng)列表中的配置項(xiàng)名稱。

示例:指定在Job型資源組bsptest中執(zhí)行作業(yè),該作業(yè)最多可使用20 ACU。

/*+ resource_group=bsptest,elastic_job_max_acu=20*/SELECT count(*) from test_db.ods_hudi;

資源組內(nèi)生效

通過SET adb_config <resource_group_name>.<config_name>,使作業(yè)配置對某個(gè)Job型資源組內(nèi)執(zhí)行的所有作業(yè)均生效。

其中resource_group_name為資源組名稱,config_name配置項(xiàng)列表中的配置項(xiàng)名稱。

示例:在Job型資源組bsptest中執(zhí)行的所有作業(yè),每個(gè)作業(yè)最多可使用20 ACU。

SET adb_config bsptest.elastic_job_max_acu=20;

查看配置是否生效

查看資源組的作業(yè)配置是否生效,可以使用SHOW ADB_CONFIG KEY=<resource_group_name>.<config_name>

集群內(nèi)生效

通過SET adb_config <config_name>,使作業(yè)配置對集群內(nèi)執(zhí)行的所有作業(yè)均生效。其中config_name配置項(xiàng)列表中的配置項(xiàng)名稱。

示例:在集群中執(zhí)行的所有作業(yè),每個(gè)作業(yè)最多可使用20 ACU。

SET adb_config elastic_job_max_acu=20;

查看配置是否生效

查看集群的作業(yè)配置是否生效,可以使用SHOW ADB_CONFIG KEY=<config_name>

配置項(xiàng)列表

XIHE BSP作業(yè)支持的配置項(xiàng)如下。

分類

配置項(xiàng)名稱

說明

默認(rèn)值

資源

elastic_job_max_acu

單個(gè)XIHE BSP作業(yè)所使用的最大ACU數(shù)(包括AppMaster與計(jì)算節(jié)點(diǎn))限制。

取值不能超過資源組的計(jì)算最大資源的ACU數(shù)。

說明

AppMaster節(jié)點(diǎn)是負(fù)責(zé)單次查詢的解析、任務(wù)調(diào)度與執(zhí)行的節(jié)點(diǎn)。

9

超時(shí)時(shí)間

batch_query_timeout

BSP作業(yè)的超時(shí)時(shí)間,單位:毫秒(ms)。BSP作業(yè)的執(zhí)行時(shí)間大于該配置值時(shí),作業(yè)會(huì)自動(dòng)取消。

7200000

優(yōu)先級(jí)

query_priority

BSP作業(yè)的優(yōu)先級(jí)。

取值:HIGH、NORMAL、LOW和LOWEST。

關(guān)于優(yōu)先級(jí)隊(duì)列,詳情請參見Job型資源組的優(yōu)先級(jí)隊(duì)列

NORMAL

常見問題

如何查看BSP作業(yè)的狀態(tài)

  • 如果是通過作業(yè)編輯器提交的BSP作業(yè),可在作業(yè)編輯器 > SQL開發(fā)頁面下方的執(zhí)行記錄頁簽查看。

  • 如果不是通過作業(yè)編輯器提交的BSP作業(yè),可通過information_schema.kepler_meta_elastic_job_list表查看。查詢方法如下:

    SELECT status FROM information_schema.kepler_meta_elastic_job_list WHERE process_id='<job_id>';
    說明

    information_schema.kepler_meta_elastic_job_list表中會(huì)保存最近30天提交的BSP任務(wù),最多保存1000個(gè)。您可對該表進(jìn)行聚合等進(jìn)一步統(tǒng)計(jì)分析。以下示例為統(tǒng)計(jì)各個(gè)狀態(tài)的BSP作業(yè)數(shù)量。

    SELECT status,count(*) FROM information_schema.kepler_meta_elastic_job_list GROUP BY status;

如何選擇BSP作業(yè)的同步提交與異步提交方式

同步提交與異步提交功能上并無差別,區(qū)別僅在于客戶端是否需要等待查詢執(zhí)行完成。

異步提交會(huì)有如下限制:

  • 結(jié)果集返回最多10000行。

  • 結(jié)果集(包括對應(yīng)的csv文件下載鏈接)最多保存30天,最多保存1000個(gè)。

建議對執(zhí)行時(shí)間較長、計(jì)算量較大,但結(jié)果集較小的查詢(如INSERT INTO SELECTINSERT OVERWRITE SELECTCREATE TABLE AS SELECT等)使用異步提交。