数仓建表规范是从数仓管理的角度,对数仓场景下的建表流程进行约束,从而提升开发效率,快速追踪数据链路,并最终保障交付质量。本文将为您介绍如何创建并管理建表规范。
使用场景
数仓规范化建表,统一规范维护 MiniBase Hive、Apache Hive、LAS 等类型的元数据信息。在新建数据表时,支持对表名、业务元数据等内容进行自动校验,结合建表规范提前识别问题,减少后期数据管理的成本,提升数据建模质量。
约束限制
创建规范后,仅规范所有者可执行全部操作,其他人仅可执行查看、复制操作。
操作步骤
- 登录 DataLeap 控制台。
- 选择智能市场 > 数仓建表规范,单击控制台按钮,进入数仓建表规范页面。

- 可查看所有规范内容,并执行以下操作:
新建建表规范
单击新建建表规范按钮,进入新建建表规范页面,设置建表规范信息后,单击提交按钮,完成规范创建。
新建建表规范相关参数说明如下表所示。其中名称前带 * 的参数为必填参数,名称前未带 * 的参数为可选参数。
参数 | 说明 |
|---|
基本信息 |
*规范名称 | 规范的简单定义,自行设定。
规范名称由中文、字母、数字或下划线组成,长度不超过50个字符。 |
描述 | 规范的描述信息,长度不超过200个字符。 |
规范文档链接 | 规范的详细定义文档的链接,用户可通过这个规范文档了解当前规范的实际内容和配置。 |
*所有者 | 规范的所有者,默认为规范的创建者,不可编辑。 |
*类型 | 规范的类型,仅支持公开,默认选中,不可编辑。 |
规则设置 |
规则填写 | 设置建表规范的规则,支持采用 JSON 语法格式,对库或项目下相关表名、物理元数据、标签元数据等进行检查。
支持的检查项和对应参数名如下,并提供相应的规则检查示例供参考。 表名:tableName,通过设置一些列规则来进行表名的规则校验,支持正则。 "tableNameChecks": [
{
"checkKey": "tableName",
"operator": "Match",
"compareKey": "(ods
}
]
物理元数据检查:表的物理元数据检查,支持以下内容,可根据实际的业务侧需求选一项或者多项内容配置。 - 表描述:tableComment,支持非空、空值或不等于表中文名等,按实际业务需求,样例中举例为非空检查。
- 表存储格式:storageFormat,支持枚举值、非空或空值检查等,样例中为枚举值检查。
- 表主键:tablePrimaryKey,支持枚举值、非空或空值检查等,样例中为非空检查。
"tablePhysicalMetaChecks": [
{
"checkKey": "tableComment",
"operator": "NotNull"
},
{
"checkKey": "storageFormat",
"operator": "IN",
"compareValues": [
"parquet"
]
},
{
"checkKey": "tablePrimaryKey",
"operator": "NotNull"
}
]
标签元数据检查:标签类元数据检查,支持以下内容,可根据实际的业务侧需求选一项或者多项内容配置。 - 表中文名:tableCnName,支持枚举值、非空或空值检查等,样例中为非空检查。
- 表产品线:productLine,支持枚举值、非空或空值检查等,样例中为空值检查。
- 表业务域:businessDomain,支持枚举值、非空或空值检查等,样例中为枚举值检查。
- 表主题:theme,支持枚举值、非空或空值检查等,样例中为枚举值检查。
- 表层级:layer,支持枚举值、非空或空值检查等,样例中为枚举值检查。
- 表状态:status,支持枚举值、非空或空值检查等,样例中为空值检查。
- 表标签:tag,支持枚举值、非空或空值检查等,样例中为空值检查。
- 专题:album,支持枚举值、非空或空值检查。
"tableBusinessMetaChecks": [
{
"checkKey": "tableCnName",
"operator": "NotNull"
},
{
"checkKey": "productLine",
"operator": "Null"
},
{
"checkKey": "businessDomain",
"operator": "IN",
"compareValues": [
"我是个测试的业务域1",
"我是个测试的业务域2"
]
},
{
"checkKey": "theme",
"operator": "IN",
"compareValues": [
"我是个测试的主题1",
"我是个测试的主题1"
]
},
{
"checkKey": "layer",
"operator": "IN",
"compareValues": [
"ODS"
]
},
{
"checkKey": "status",
"operator": "Null"
},
{
"checkKey": "tag",
"operator": "Null"
}
]
|
设置生效范围
单击列表中某条建表规范操作列的生效范围按钮,在弹出的生效范围侧拉窗口中,可以新增一个或多个数据库,或者搜索、移除已添加的数据库,来更新规范生效的数据库范围。设置生效范围后,在规范已生效的数据库下建表时,则需符合相应的规范要求。

搜索建表规范
设置搜索信息,可以查看符合条件的规范信息列表。
查看规范详情
单击列表中某条建表规范的规范名称,可以查看该规范的详情。
编辑建表规范
单击列表中某条建表规范操作列的编辑按钮,在编辑建表规范页面,可以修改该规范信息。
复制建表规范
单击列表中某条建表规范操作列的复制按钮,复制该规范的规则信息并进入相应编辑页面,可以快速创建新的规范信息。
删除建表规范
单击列表中某条建表规范操作列的 ... > 删除按钮,在弹出的确认删除对话框中,单击删除按钮,删除该建表规范。删除后,引用该规范的数据库将全部失效。
更改所有者
单击列表中某条建表规范操作列的 ... > 更改所有者按钮,在弹出的变更所有者窗口中,可以将该规范的所有者变更为其他用户账号。
开启/关闭生效状态
单击列表中某条建表规范的生效状态按钮,在弹出的确认对话框中,单击相应的启用或停用按钮后,可以开启/关闭该规范的生效状态。关闭后,引用当前规范的数据库,将全部失效。
后续操作
建表规范创建完成后,您可以根据需要在以下场景中使用规范:
- 项目中引入规范
可以对项目执行添加、编辑、移除建表规范等管理操作,详细操作说明请参见建表规范管理。 - 建表时进行规范检查
设置生效范围后,若触发了建表规范,会进行相应的检查。检查通过后才可建表成功。
- 在数据开发 > 任务开发页面,使用LAS SQL语句建表时,可通过解析或调试操作,检查是否符合规范。相关操作说明请参见LAS SQL任务。
说明
如果项目中未引入规范,则按照建表规范自身的生效范围进行检查;如果项目中引入了规范,则其下任务按照项目下建表规范配置的生效范围进行检查。
- 在数据地图 > 我的库表 > Table管理页面,创建MiniBase Hive、Apache Hive或LAS表时,可检查是否符合建表规范。相关操作说明请参见管理 MiniBase Hive 表。