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

變量管理

使用變量可以避免明文AccessKey、密碼等信息帶來的安全風險,通過復用可以避免重復編寫相同的代碼或值,易于配置管理。支持在SQL作業(yè)、JAR或Python作業(yè)、日志配置和UI界面等場景中使用。本文為您介紹如何創(chuàng)建變量,以及不同場景下的使用方法。

背景信息

變量由名(稱)和值組成,名是用來代替真實數(shù)據(jù)的名稱,由您自定義,通常能夠直接反映值的含義,值則是實際要使用而被名稱代替展示的值。Flink支持作業(yè)變量和項目變量兩種,區(qū)別如下:

  • 作業(yè)變量:僅支持在對應的單個作業(yè)下使用,包括ETL(SQL開發(fā))、JAR/Python作業(yè)Main函數(shù)入?yún)ⅲ褂酶袷綖?code data-tag="code" code-type="xCode" class="code">${變量名},具體使用方法請參見作業(yè)變量

  • 項目變量:支持在該項目空間下使用,包括數(shù)據(jù)開發(fā)(數(shù)據(jù)攝入、ETL、查詢腳本)、JAR/Python作業(yè)Main函數(shù)入?yún)ⅰ⑷罩九渲煤蚒I界面(創(chuàng)建Catalog),使用格式為${secret_values.變量名},具體創(chuàng)建和使用方法請參見項目變量

注意事項

  • 不支持為一個變量名配置多個值。

  • 請避免使用關鍵字作變量名。

  • SQL作業(yè)中僅支持在臨時表(CREATE TEMPORARY TABLE)中使用變量,持久表(CREATE TABLE)中使用會導致該表無法正常使用。

作業(yè)變量

說明

作業(yè)變量名需要在單個作業(yè)內(nèi)保持唯一。

ETL(SQL作業(yè))

支持在SQL作業(yè)開發(fā)中(包括自定義函數(shù)入?yún)ⅲ┦褂米兞浚⒃谧鳂I(yè)啟動時可再次修改變量值。

  1. 單擊Flink開發(fā)控制臺左側導航欄的數(shù)據(jù)開發(fā) > ETL

  2. 在目標作業(yè)草稿的SQL編輯器中使用${變量名}格式創(chuàng)建變量,示例如下。

    • 在WITH參數(shù)中使用時,需要使用單引號,'${變量名}'

    • 在其他位置使用(例如SQL表名、字段)時,需要使用反引號`${變量名}`

    create temporary table `${source_name}`(
        id varchar,
        name varchar
    ) with (
        'connector' = 'datagen'
    );
    
    
    create temporary table blackhole(
        id varchar,
        `${test_name}` varchar
    ) with (
        'connector' = '${blackhole}'
    );
    
    insert into blackhole select * from `${source_name}`;
  3. Flink會自動識別作業(yè)草稿中使用了該格式的作業(yè)變量,您需要填寫變量值。

    • 方法一:SQL編輯器會出現(xiàn)作業(yè)變量面板,可直接在面板中進行填寫。

      image

    • 方法二:單擊右側的更多配置,在作業(yè)變量區(qū)域進行填寫。

      image

  4. 作業(yè)部署后,您可以在作業(yè)運維頁面目標作業(yè)的部署詳情頁簽查看作業(yè)使用的變量。

    image

  5. 單擊目標作業(yè)操作列下的啟動。支持在作業(yè)啟動面板中修改變量值。

    重要

    作業(yè)啟動面板中修改變量值僅對作業(yè)本次啟動生效,不會修改SQL草稿中對應的變量值。

    image

JAR/Python作業(yè)

支持JAR和Python作業(yè)中Main函數(shù)入?yún)⑹褂米兞俊?/p>

  1. 在開發(fā)控制臺的運維中心 > 作業(yè)運維頁面,單擊部署作業(yè)

  2. Entry Point Main Arguments參數(shù)位置輸入入?yún)⒆兞棵褂酶袷饺缦拢⒃趨?shù)下方的作業(yè)變量部分填寫變量值。

    image

    其他部署參數(shù)配置詳情請參見部署作業(yè)

  3. 單擊部署

  4. 單擊目標作業(yè)操作列下的啟動。支持在作業(yè)啟動面板中修改變量值。

    image

項目變量

新增變量

說明

僅editor及以上權限或具有創(chuàng)建變量權限的成員支持新增變量。

  1. 登錄實時計算控制臺,單擊目標工作空間操作列下的控制臺

  2. 安全服務 > 變量管理頁面,單擊新增變量

    參數(shù)

    說明

    變量名

    變量名需在同一個項目空間下保持唯一,創(chuàng)建后不支持修改。

    變量值

    變量值對字母大小寫敏感,填寫時請注意字母大小寫。創(chuàng)建后支持修改變量值,詳情請參見編輯或刪除變量

    類型(明文/密文)

    創(chuàng)建后不支持修改類型。

    • 明文:在變量管理頁面可以直接查看變量值。

    • 密文:無法查看變量值。

    image

  3. 單擊確定

使用變量

增加變量后,您可以通過${secret_values.變量名}格式使用,使用時您僅需將其中的變量名進行修改,其他部分保留不變,具體示例如下。

數(shù)據(jù)開發(fā)

支持在實時計算開發(fā)控制臺的數(shù)據(jù)開發(fā)下使用項目變量。

ETL(SQL開發(fā))

支持在SQL作業(yè)的DDL中通過${secret_values.變量名}格式使用變量,示例如下。

  • 在WITH參數(shù)中使用時,需要使用單引號,'${secret_values.變量名}'

  • 在其他位置使用(例如SQL表名、字段)時,需要使用反引號`${secret_values.變量名}`

create temporary table `${secret_values.source_name}`(
    id varchar,
    name varchar
) with (
    'connector' = 'datagen'
);


create temporary table blackhole(
    id varchar,
    `${secret_values.test_name}` varchar
) with (
    'connector' = '${secret_values.blackhole}'
);

insert into blackhole select * from `${secret_values.source_name}`;

數(shù)據(jù)攝入

source:
  type: mysql
  name: Mysql Source
  hostname: localhost
  port: 3306
  username: test
  password: ${secret_values.mysqlpw}
  tables: app_db.\.*
  server-id: 5400-5404

···

數(shù)據(jù)查詢

USE CATALOG paimon;

CREATE DATABASE IF NOT EXISTS `${secret_values.test_name}`;

CREATE TABLE paimon.`${secret_values.test_name}`.ods_user_log
(
    item_id  int NOT NULL,
    `${secret_values.user}` varchar(50) NOT NULL,
    action  varchar(20)  NOT NULL,
    vtime   timestamp,
    ds      varchar(10) NOT NULL
)
PARTITIONED BY (ds);

SELECT * from paimon.`${secret_values.test_name}`.ods_user_log LIMIT 10;

JAR/Python作業(yè)

支持JAR和Python作業(yè)中Main函數(shù)入?yún)⑹褂米兞俊?/p>

  1. 在開發(fā)控制臺的運維中心 > 作業(yè)運維頁面,單擊部署作業(yè)

  2. Entry Point Main Arguments參數(shù)位置輸入入?yún)⒆兞棵褂酶袷饺缦隆?/p>

    image

    其他部署參數(shù)配置詳情請參見部署作業(yè)

  3. 單擊部署

日志配置

  1. 進入日志配置頁面。

  2. 在日志配置中使用變量。

    例如,在配置作業(yè)日志輸出到SLS時使用名為accessKeyId和accessKeySecret的變量示例如下,完整日志輸出配置信息具體請參見配置作業(yè)日志輸出

    <Appender name="SLS" type="SLS">
      <Layout pattern="%d{yyyy-MM-dd HH:mm:ss,SSS}{GMT+8} %-5p %-60c %x - %m%n" type="PatternLayout" charset="UTF-8"/>  
    
      <!-- The final effective log path is: ${baseUri}/logs/${namespace}/${deploymentId}/{jobId}/ -->
      <Property name="namespace">{{ namespace }}</Property> <!-- Do not modify this line -->
      <Property name="project">YOUR-SLS-PROJECT</Property>  
      <Property name="logStore">YOUR-SLS-LOGSTORE</Property> 
      <Property name="endpoint">YOUR-SLS-ENDPOINT</Property> 
      <Property name="accessKeyId">${secret_values.accessKeyId}</Property> 
      <Property name="accessKeySecret">${secret_values.accessKeySecret}</Property> 
      <Property name="topic">{{ namespace }}:{{ deploymentId }}:{{ jobId }}</Property>
      <Property name="deploymentName">{{ deploymentName }}</Property>
      <Property name="flushIntervalSeconds">10</Property>
      <Property name="flushIntervalEventCount">100</Property>
    </Appender>

UI界面

在通過UI界面方式創(chuàng)建Catalog時,您可以在配置項中使用變量。

  1. 在開發(fā)控制臺左側導航欄,單擊元數(shù)據(jù)管理

  2. 在創(chuàng)建Catalog頁面使用變量。例如在MySQL Catalog中的password參數(shù)使用名為mysqlpassword的變量示例如下。

    image.png

編輯或刪除變量

說明

請謹慎刪除或編輯變量,可能會導致使用變量的作業(yè)無法部署,或需要重新部署已上線的作業(yè)。但不影響運行中的作業(yè)。

  1. 登錄實時計算控制臺,單擊目標工作空間操作列下的控制臺

  2. 安全服務 > 變量管理頁面,單擊目標變量名操作列下編輯刪除

    • 編輯

      支持對變量值進行修改。僅editor及以上權限成員支持編輯變量。

    • 刪除

      僅editor及以上權限或具有刪除變量權限的成員支持刪除變量。

相關文檔