更新时间:2024-11-29 GMT+08:00

创建批次变量

操作场景

批次变量是由客户离线分析平台计算出的变量,平台数据一般存储在Hadoop中,维度映射可以指定批次变量表,维度与批次变量表一一对应。

一个维度下可以有多个批次变量。

操作步骤

  1. 创建批次变量前需确保已创建批次变量表。

    1. 使用业务用户登录RTD WebUI管理界面,选择相应的租户。
    2. 选择“业务管理 > 数据库工具 > 数据库操作”。
    3. 在“操作类型”选择“数据定义”,参考如下语句创建批次变量表“T_RTD_BATCH_VARS_PARENT_1”。
      CREATE TABLE T_RTD_BATCH_VARS_PARENT_1 (
      CUR_VER_FLAG tinyint DEFAULT '0' NOT NULL,
      KEY varchar(20 BYTES) NOT NULL,
      VALUE varchar(1048576 BYTES) NOT NULL,
      CONSTRAINT PK_T_RTD_BATCH_VARS_PARENT_1 PRIMARY KEY (KEY));

      批次变量表的结构如下:

      图1 批次变量表的结构
      表1 批次变量表字段解释

      字段

      说明

      CUR_VER_FLAG

      数据标识位,数据是否可用。0表示数据可用,1表示数据不可用。

      KEY

      维度主键。

      VALUE

      json格式,内部为key - value形式。

      说明:
      • key为批次变量名,且必须为小写。
      • value为批次变量的值。
      • 可配置多个key - value。
      • 系统将批次变量的处理放在离线的Hadoop平台上,解耦了数据的在线处理和离线分析运算,即保证了数据处理的实时特性,又为高性能批量运算提供了平台支撑。
      • 过滤规则不支持批次变量的使用
    4. 在“操作类型”选择“数据操作”,参考如下语句插入数据。
      如给批次变量表“T_RTD_BATCH_VARS_PARENT_1”插入批次变量名称为“bv_wq”的数据,表示业务输入“3”则批次变量取值为“2000”。
      insert into T_RTD_BATCH_VARS_PARENT_1(key ,value)  values('3','{"bv_wq":"2000"}');

  2. 使用业务用户登录RTD WebUI管理界面,选择相应的租户。
  3. 选择“业务管理 > 变量&规则配置 > 批次变量”。
  4. 单击“新增”,在“维度名称”项中选择维度,然后设置批次变量的名称、类型、默认值以及描述信息等内容。

    • 在进行批次变量定义时,应确保批次变量的名称和1创建的批次变量表的VALUE内部的key保持一致,否则平台上进行批次变量计算时,会计算失败,产生错误信息。
    • 批次变量名称的前缀为“bv_”。
    • 变量名称不区分大小写,必须由字母或下划线开头,且字符范围限制为[A-Z]、[a-z]、[0-9]、_,长度不超过30个字符。
    图2 创建批次变量

  5. 单击“确认”,完成批次变量创建。
  6. (可选)在“批次变量”页面中,查看变量状态为“就绪”时,勾选变量,选择“更多操作 > 上线”、“更多操作 > 下线”进行上线或者下线批次变量的操作。