全部產品
Search
文件中心

:配置流引擎的寬表連接器

更新時間:Feb 27, 2025

在使用流引擎處理計算任務時,Lindorm支援將寬表作為維表或結果表使用。本文介紹使用Flink SQL提交計算任務時的寬表連接器配置。

背景資訊

在流引擎中通過Flink SQL提交計算任務時,需要使用CREATE TABLE語句並配置連接器(Connector)參數。

在流引擎中使用寬表

CREATE TABLE lindorm_table(
  c1 VARCHAR,
  c2 DOUBLE,
  c3 BIGINT,
  PRIMARY KEY (c1, c2) NOT ENFORCED --主鍵必須與在寬表引擎中建立的結果表的主鍵一致
)WITH(
      'connector'='lindorm',
      'seedServer'='ld-bp17pwu1541ia****-proxy-lindorm.lindorm.rds.aliyuncs.com:30020',
      'userName'='yourUser',
      'password'='yourPassword',
      'tableName'='yourTablename',
      'namespace'='yourNamespace'
    );--WITH中為連接器相關參數
說明

CREATE TABLE的詳細介紹,請參見CREATE TABLE文法說明

連接器參數說明

常用參數

參數

預設值

是否必填

說明

seedServer

寬表引擎的HBase Java API串連地址。如何擷取,請參見查看寬表引擎串連地址

namespace

寬表所在的命名空間。

userName

使用者名稱。

password

密碼。

tableName

寬表名。

bufferSize

5000

攢批寫入資料的行數。

flushIntervalMs

2000

寫入資料時系統執行flush操作的時間間隔。單位為毫秒(ms)。

如果寫入的資料量很少,則系統會按該時間間隔執行flush操作。

說明

不同業務下寫入資料量多少的標準不同。

columnFamily

f

列簇名。

說明

在流引擎中使用寬表時,是否配置columnFamily取決於該表的建立方式:

  • 通過HBase Java API建立:需要配置。

  • 通過Lindorm SQL建立:無需配置。

時空參數

參數

預設值

是否必填

說明

cacheTTLMs

-1

資料緩衝(Cache)的到期時間。單位為毫秒,預設值為-1,表示不產生資料緩衝。資料緩衝到期之後,執行下一次查詢時會重建時空索引。

geomHint

指定的時空Lookup Join查詢,格式為<columnName>:<queryFunction>,例如 fence:st_contains。在執行Lookup Join查詢時,Join條件中的時空等式將被替換為指定的時空查詢。例如,fence=ST_MakePoint(x,y))將被替換為指定的時空查詢ST_Contains(fence, ST_MakePoint(x,y))

queryFunction支援的函數如下:

  • ST_Contains

  • ST_Within

  • ST_DWithin

  • ST_DWithinSphere

  • ST_Intersects

  • ST_Overlaps

  • ST_Equals

geomIndex

指定建立時空索引的列,該表的時空LookupJoin查詢將自動通過記憶體索引加速。

當前僅支援單表單列建立索引。支援通過記憶體索引加速的函數有:

  • ST_Contains

  • ST_Within

  • ST_DWithin

  • ST_DWithinSphere

  • ST_Intersects

  • ST_Overlaps

  • ST_Equals

重要

geomIndex必須與geomHintcacheTTLMs參數搭配使用,且cacheTTLMs的值必須大於0。