数仓管理者可对已启用分层的表进行表名规则设置字段附加列配置表属性默认项配置以及强制分区表设置。该设置会在表设计工单管理页面中,创建建表工单时,直接作用于工单,实现表的命名控制、表的默认配置等。

表名规则


表名规则设置中,支持按照规则来约束某个分层的命名,支持在规则中添加固定字符串主题域缩写二级主题缩写字典集以及正则表达式作为表名称的前后缀。单击设置编辑可对表名规则进行设置。

  • 表名规则编辑界面:
    表设计规则管理 - 图1

表属性默认项


对某一分层的表属性默认项进行配置后,当在该层新建表时会对表预置这些已经配置好的参数。

当前表属性默认项支持对Hive、MySQL、Vertica、Greenplum四种数据源类型的表进行设置。

  • Hive
    表设计规则管理 - 图2
    支持设置项 描述
    Impala同步 是否开启Impala同步,取决于当前项目-集群下有无Impala集群。开启Impala同步之后,在表设计工单管理中,创建建表工单中会支持Impala开启配置,开启后创建的表,元数据会自动同步到Impala元数据中,在自助分析中即可用Impala执行查询。
    建表执行引擎 默认Hive。
    表类型 支持设置内部表和外部表,默认为内部表。设置外部表时需要填写HDFS路径。
    表生命周期 支持设置表生命周期,默认为永久。设置为非永久时,需填写时长。
    分区生命周期 支持设置分区生命周期,默认为永久。设置为非永久时,需填写天数
    存储格式 支持Parquet、TextFile、SequenceFile、ORC、AVRO,默认为Parquet。
  • MySQL
    表设计规则管理 - 图3

    支持设置项 描述
    建表执行引擎 支持InnoDB和MyISAM,默认为InnoDB。
    行模式 支持COMPACT、REDUNDANT、DYNAMIC、COMPRESSED。
    字符集 默认为utf8,其它支持详情查看产品页面。
    校对集 在字符集内用于比较字符的一套规则的集合。支持utf8_general_ci等,其它详情可查看产品页面。
    分区生命周期 支持设置分区生命周期,默认为永久。设置为非永久时,需填写天数。
    索引存储类型 支持B-TREE。
    外键约束 支持外键约束的设置,默认关闭。
  • Vertica

表设计规则管理 - 图4


支持设置项 描述
加载方式 支持DIRECT、AUTO、TRICKLE。
1. DIRECT:该模式下直接将数据加载到ROS容器中,适用于大容量(>100mb)的批量加载。Vertica的测试表明,直接负载在最广泛的场景下都能提供最佳性能。
2. AUTO:初始加载数据到WOS中,适合于小批量加载。
3. TRICKLE:仅将数据加载到WOS中,适合频繁的增量加载。
复制份数 默认为1。
排序字段 用来设置进行排序的字段,根据实际情况进行选择,建议主键。
是否分布 开启后可进行分布字段设置。
分布字段 对于外部表无效时,需要设定字段作为表自动投影分发数据的依据。
  • Greenplum

表设计规则管理 - 图5

支持设置项 描述
分布策略 支持哈希分布和循环分布。
分布字段 建议为主键或唯一约束。
存储模型 支持堆存储和追加优化存储。当选择追加优化存储时,可选择面向列存储,同时支持是否压缩设置。
表方向 支持面向行存储和面向列存储。
当存储模型为堆存储时,只支持面向行存储。
当存储模型为追加优化存储时,支持面向行存储或面向列存储。

强制分区表


该功能可以控制某个分层的表是否必须带有分区。开启后,在创建建表工单字段配置页面,分区字段为必填项,当删除所有分区字段后会提示强制分区表,必须至少设置一个分区字段
表设计规则管理 - 图6

说明:当前支持强制分区表设置的数据源类型有Hive、Vertica、Greenplum,MySQL不支持该功能。