云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

美国服务器_负载均衡反向代理_企业0元试用

小七 141 0

具有流和任务GA的简单连续数据管道

具有流和任务GA的简单连续数据管道2020年4月6日|5分钟读取作者:迪内什·库尔卡尼如何使用雪花,雪花技术对不断增长的数据量进行近乎实时的分析可以提供关键的竞争优势。要抓住这一优势,就必须以适合消费的形式向决策者和应用程序提供数据。雪花云数据平台使组织能够以数据为驱动,从而获得竞争优势,而数据管道使数据转换为最合适的形式变得更加容易。雪花提供了一个著名的云数据仓库,多年来一直支持在多个云上高效、大规模的查询。但是在过去的几年里,雪花已经发展成为一个处理数据和支持应用的广泛的云数据平台。数据管道是该平台的关键部分。Streams和Tasks特性使您能够构建数据管道,并将雪花变成一个灵活的数据转换引擎,以及一个强大的数据仓库今天,我们很高兴地宣布所有受支持的云平台上的数据流和任务的通用可用性(GA)。数据管道是云数据平台不可或缺的一部分许多转换可以从使用相同工具处理事务和查询的简单性中获益。许多管道从一开始就很小,经过基本的转换,随着时间的推移,逐渐变得更加丰富。更快的实现时间和与事务子系统的本地集成可以大大提高生产力。雪花数据管道使用两个独立但互补的流和任务抽象来实现简单的数据管道。这使您可以更快地开始,并允许在需要时与外部转换引擎和调度程序更好地集成。表流是雪花表上具有事务语义的变更数据捕获(CDC)抽象。您可以将流视为表上的书签,当在事务中使用时,该书签会被更新,这样您就可以始终知道尚未处理的更改。您可以像使用表或视图一样使用流进行查询。您可以根据需要拥有任意多个独立书签,并且可以在管道(或其他地方)中使用每个书签,以确保所有新数据都以事务方式处理。任务是可调度的执行单元—SQL语句或带有附加cron计划或执行间隔的存储过程。可以将依赖关系树中的任务串在一起,以构建管道,如下所示。您可以每分钟频繁地运行任务,以获得细粒度的执行,并在传入数据到达时保持同步。此外,您可以选择一个仓库来根据您的处理需求进行扩展,当仓库不用于运行任务时将其挂起。使用流和任务没有额外的成本,您在任务中使用的仓库将收取信用额度,就像在任务之外运行查询一样。流和任务是完全独立的抽象,但是它们结合在一起可以为您提供一个转换的管道,雪花会为您按计划运行。您可以扩展此管道以匹配数据的流入和转换的复杂性,同时确保所有数据都以事务方式进行转换,即使某些执行可能由于各种原因而失败。面向群众的数据去年,雪花发布了一个流和任务特性的公开预览。我们感到欣慰的是,我们的预览版客户信任我们,实施了复杂的、近乎实时的管道,连续数月每天运行超过150万个任务。就在过去的30天里,客户创建了超过20万个流来处理新的和更改的数据。GA相信我们会继续这项声明。"我们不再使用雪花任务在每小时处理数万或数十万行的气流中运行每小时的批处理作业,现在我们可以安排每小时5000多个微批处理作业,每次执行时只处理少数新行。对我们来说最大的好处是减少了ELT管道的延迟。过去需要一到两个小时才能导入和转换的数据现在只需要5分钟就可以获得了简单的例子下面是一个基本示例,演示如何使用流和任务将临时表中的数据合并到维度表中使用COPY、Snowpipe、Snowflake-Kafka连接器或其他工具将数据加载到临时表product_stage中。需要使用insert for new products和update for new products将加载的数据合并到维度表product_维度中。两者都作为stage表中的insert进入,但需要在维度表中转换为upserts(merge)stream product_stage_delta提供了更改,在本例中是所有插入任务产品_merge定期在流提供的更改上运行merge语句。这使合并操作与摄取分离,并且可以在获取所有摄取数据的事务语义时异步执行。通过使用存储过程而不是merge语句作为任务体,可以添加复杂的业务逻辑。//数据来自文件/Kafka创建表产品\u阶段(id内景,信息变量); //这是合并的目标表创建表product_维度(id内景,信息变量); //暂存台上的CDC//只对插入感兴趣;因此使用仅附加优化create stream product_stage_delta on table product_stage append_only=true; //使用CDC从登台定期合并。封面更新和插页创建任务产品合并仓库=产品仓库日程安排="5分钟"作为合并到产品维度pd使用产品_stage_delta delta打开pd.id= 增量id如果匹配的话更新集pd.info公司= 增量信息当不匹配的时候插入(id,info)价值观(增量id, 增量信息);您可以增强上面的任务以执行更复杂的业务逻辑、对variant列进行模式化,或者保持多个维度表的一致性。使维度表保持最新是一个典型的数据仓库用例。在预览期间,客户还使用流和任务来转换用于仪表板和报告的物联网数据,对复杂物化视图执行周期性物化,为机器学习培训和预测清理和准备数据,执行数据屏蔽和数据丢失预防,并持续监控安全性今天就在雪花中构建数据管道我们的许多客户已经建造了令人印象深刻的管道。现在,其他正在寻找GA或只是没有机会尝试这些功能的人也可以看到他们可以多快地创建自己的管道。您可以在这里找到有关如何开始的文档和信息就像你读的?通过喜欢和分享来表达你的感激之情!Facebook推特LinkedIn