更多技术交流、求职机会,欢迎重视字节跳动数据渠道微信公众号,回复【1】进入官方交流群
在离线数仓开发过程中,研制人员需求依据事务变化,在开发/出产环境中不断切换、解析、调试。以往,企业一般经过人工方法核验,但由于数据量大且类型不同,导致研制人员资源、精力投入大。
如何使同构代码在不同环境正确运转,防止因调试过程中的误操作,对出产环境直接形成数据负面危险,成为许多企业数仓研制团队的痛点之一。
近期,火山引擎 DataLeap 推出“项目参数办理”才能,即经过自定义项目参数别离设置开发、出产环境参数值,参数支撑装备多种类型,包括 Region、DB、shecma、table、date 以及自定义等,且支撑使命等级引证,快速协助研制团队实现资源阻隔。
火山引擎 DataLeap“项目参数办理”才能
以湖仓一体剖析服务(LAS)引擎为例,介绍如何运用“项目参数办理”区分不同环境库和时间格局的查询。
在运用之前, 由于 1 个事务需求常常涉及 10+使命、30+参数,且不同环境 DB 中、table 根本共同,需求办理 2 套代码。数仓研制人员难以防止出现测验代码在出产环境履行、表误删、数据误删等问题。
在运用之后,只需求 3 个过程即可解决出产、测验环境数据阻隔问题:
-
过程一: LAS 有 2 套环境,包括测验环境库 test_dev、出产环境库 test_prod 。2 套环境都有相同表名 LAS_table01、分区字段名 datetimes。开发环境分区字段为 yyyymmdd,出产环境分区格局为 YYYY-MM-DD。在 DataLeap 中设置日期参数 arg,开发环境参数值=date、出产环境参数值={date}、出产环境参数值={DATE}。设置库参数 env,开发环境=test_dev、出产环境=test_prod。
-
过程二: 对于离线数据开发使命,研制人员能够直接在代码中运用项目参数,点击“解析”“调试”,体系会主动替换为相应的开发环境参数值,并进行语法解析、权限查看等。
- 过程三: 点击“提交上线”、“使命例行履行”时,对于项目参数,体系会主动替换为相应的出产环境参数值,然后进行相应的语法解析以及权限查看。然后有用提高环境代码办理功率。
据介绍,企业能够在以下场景运用火山引擎 DataLeap“项目参数办理”才能:
【场景 1】开发出产环境阻隔
-
以 HSQL 使命为例,为防止在开发测验阶段,因误操作影响出产库表的数据,研制人员能够在 HSQL 代码中运用项目参数。调试时,体系会主动替换为开发环境参数值;上线后的使命例行履行,体系将主动替换为出产环境参数值。一起,DataLeap 也支撑代码共同,无需在上线前批量将开发环境的库表名称替换为出产环境的库表名称。
【场景 2】跨区域/项目代码同构
-
一般来说,不同 Region 下的库、表名不同。为了实现不同 Region、项目下代码同构,研制人员能够在 HSQL 代码中运用项目参数,来实现不同环境下,同一个使命的代码同构,有用提高环境代码办理功率。
火山引擎 DataLeap 让研制人员不再需求经过”调度设置-使命输入参数”的方法增加项目参数,只需定义一次参数即可轻松构建,并且实现出产、测验环境下的数据主动阻隔,代码同构。除此之外,DataLeap 还具备数据集成、开发、运维、治理、资产、安全等数据中台建设才能,助力企业提高数据研制功率、下降办理本钱,为数字化转型提供支撑。
点击跳转 大数据研制治理DataLeap 了解更多