关于数据库:如何实现数据流畅转换火山引擎ByteHouse推出ELT能力

3次阅读

共计 1265 个字符,预计需要花费 4 分钟才能阅读完成。

更多技术交换、求职机会,欢送关注字节跳动数据平台微信公众号,回复【1】进入官网交换群

在数据分析场景中,企业应用的数据通常具备起源多样化的特点,如领取交易记录、用户行为等,且数据格式各异,有的为行式存储构造,有的为列式存储构造。这就要求企业数仓具备肯定的数据转换能力。

传统形式是采纳 Extract-Transform-Load (ETL)来将业务数据转换为适宜数仓的数据模型,然而,这依赖于独立于数仓外的 ETL 零碎,导致保护老本较高。但随着云计算时代的到来,云数据仓库具备更强扩展性和计算能力,也要求改变传统的 ELT 流程。

火山引擎 ByteHouse 是一款基于开源 ClickHouse 推出的云原生数据仓库,为用户提供极速剖析体验,可能撑持实时数据分析和海量数据离线剖析,同时还具备便捷的弹性扩缩容能力,极致剖析性能和丰盛的企业级个性。凭借其弱小的计算能力,火山引擎 ByteHouse 目前已全面反对 Extract-Load-Transform (ELT)的能力,让用户免于保护多套异构零碎,产品易用性实现飞跃。

通过 ByteHouse 的 ELT 能力,用户只需将数据导入,用自定义 SQL 语句在 ByteHouse 外部进行数据转换,无需依赖独立的 ETL 零碎及资源。具体来说,ByteHouse 次要通过以下三个能力实现 ELT 能力:

首先,长工作治理。ByteHouse 的查问工夫为秒级,一旦查问中出故障,零碎会间接返回谬误并重试。在 ETL 场景下,如果一个工作曾经执行 50 分钟才产生故障,重试意味着节约了前 50 分钟的资源,影响工作推动。在 ByteHouse 中,SQL 查问会被转化为一系列的算子,研发团队则通过晋升算子的容错能力,来应答长时间查问下的系统故障问题,即当某个算子无奈取得足够的内存时,零碎容许该算子将一部分数据缓存在磁盘上,保障在资源缓和的状况下仍可能实现工作。

其次,异步提交能力。面对大量长耗时的 ETL 工作时,传统的同步执行形式须要客户端期待服务端返回,容易呈现超时问题,影响后续工作执行,而 ByteHouse 提供的异步提交能力,通过客户端的间歇性轮训来取得用户工作的最终状态,由此保障工作在规定工夫内实现。

最初,查问队列。当面临大量离线加工申请时,零碎会呈现超载。ByteHouse 为此提供了查问队列能力,容许用户从队列大小、总 CPU 占用率、总内存占用率三个维度定义一个队列。

具体来说,当用户向某队列提交查问时,ByteHouse 能够通过组件监听各个队列中的查问指标,如果队列未达到下限,则会将查问入队,否则回绝。除此之外,ByteHouse 还会查看队列的资源利用率,当闲暇资源高过某阈值时,主动将期待中的查问出队。利用查问队列,用户在编排 ETL 工作时无需放心底层资源过载,让开发更加便捷。

长工作治理、异步提交和查问队列是火山引擎 ByteHouse ELT 的外围能力。将来,ByteHouse 也会进一步迭代,反对转换函数、长工作容错、优先级队列等更丰盛 ELT 性能,为用户提供更极致、更便捷的应用体验。

点击跳转 火山引擎 ByteHouse理解更多

正文完
 0