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

企业邮箱_推荐云服务器_0元

小七 141 0

使用Delta Lake和ApacheSpark简化流式股票分析:随需应变网络研讨会和常见问题解答现已提供!

6月13日,我们与Databricks的金融服务行业领导者Junta Nakai、Databricks的解决方案架构师John O'Dwyer和Databricks的技术产品营销经理Denny Lee共同主持了一场现场网络研讨会——使用Delta Lake和Apache Spark简化流式股票分析。这是Databricks的一系列金融服务网络研讨会中的第一次,也是博客文章"使用Delta Lake简化流式股票数据分析"的扩展。分析交易和股票数据?传统上,股票数据的实时分析是一项复杂的工作,因为维护流式系统和同时确保遗留数据和流式数据事务一致性的复杂性。Delta Lake帮助解决了构建实时分析股票数据的流式系统的许多难题。在本次网络研讨会中,我们将回顾:当前运行这样一个系统的问题。三角洲湖如何解决这些问题。如何在Databricks中实现该系统。deltalake通过将apachespark的可伸缩性、流和访问高级分析功能与数据仓库的性能和ACID遵从性相结合来帮助解决这些问题。在网络研讨会期间,我们用一个Delta Lake笔记本展示了流式股票分析。要自己运行,请下载以下笔记本:Delta Lake的流式股票分析:设置–首先运行此笔记本,这样它就可以自动下载生成的源数据,并开始将数据加载到文件位置。Delta Lake的流式股票分析–这是一款主要的笔记本电脑,它展示了Delta Lake在流式股票分析(包括统一流式传输、批量同步和时间旅行)的背景下的情况。我们还展示了数据的实时更新,流式和批量股票分析数据连接在一起,如下图所示。最后,我们还进行了问答,下面是问题和答案。 Q: 三角洲湖和阿帕奇拼花有什么区别?deltalake是一个开源存储层,它将ACID事务引入apachespark™ 以及大数据工作负载。虽然deltalake以apacheparquet格式存储数据,但它包含的特性允许数据湖在规模上是可靠的。这些功能包括:ACID事务:Delta-Lake确保了数据的完整性并提供了可序列化性。可伸缩的元数据处理:对于大数据系统,元数据本身往往"大"到足以减慢任何试图理解它的系统的速度,更不用说理解实际的底层数据了。Delta Lake将元数据视为常规数据,并利用ApacheSpark的分布式处理能力。因此,Delta-Lake可以轻松处理具有数十亿个分区和文件的PB级表。时间旅行(数据版本控制):创建数据的快照,允许您访问和还原到数据的早期版本,以便进行审核、回滚或重现实验。开放格式:Delta Lake中的所有数据都以ApacheParquet格式存储,从而使Delta Lake能够利用Parquet固有的高效压缩和编码方案。统一的批处理和流源汇:Delta Lake中的表既是批处理表,也是流源和汇。流数据接收、批处理历史回填和交互式查询都是开箱即用的。模式强制:deltalake提供了指定模式并实施它的功能。这有助于确保数据类型正确并且存在必需的列,从而防止错误数据导致数据损坏。模式演化:大数据在不断变化。deltalake使您能够对可以自动应用的表模式进行更改,而不需要繁琐的DDL。100%兼容apachespark API:开发人员可以使用Delta-Lake和他们现有的数据管道,只需做很少的改动,因为它与常用的大数据处理引擎Spark完全兼容。 Q: 您如何查看Delta Lake表中靠近笔记本开头的流式处理和批处理?正如Delta Lake notebook的流式股票分析所述,在单元格8中,我们运行了以下批处理查询:dfPrice=spark.read.format("delta")。负载(deltaPricePath)显示(dfPrice。哪里(dfPrice.ticker.isin({JO1','JN2'})))请注意,我们在周期的早期运行了这个查询,数据截止到2012年8月20日。使用相同的文件夹路径(deltaPricePath),我们还通过单元格4中的以下代码片段创建了结构化流式数据帧:#为价格创建流和临时视图dfPriceStream=spark.readStream.format("delta")。负载(deltaPricePath)dfPriceStream.createOrReplaceTempView("价格流")然后,我们可以运行以下实时sparksql查询,该查询将不断刷新。%sql语言选择*来自priceStreamwhere ticker in('JO1','JN2')请注意,即使批处理查询在之前执行(并在2012年8月20日结束),结构化流式查询仍继续处理超过该日期的数据(蓝色小点表示2012年8月20日在流式处理折线图上的位置)。从前面的代码片段中可以看到,批处理和结构化流数据帧都查询deltaPricePath的同一个文件夹路径。 Q: 有了你在数据中输入的"错误",我可以回去找到它并可能为了审计目的而更正它吗? 三角洲湖有一个称为时间旅行的数据版本控制功能。它提供了数据的快照,允许您访问和还原到数据的早期版本,以便进行审核、回滚或重现实验。为了形象化这一点,请注意Delta Lake笔记本电脑流式股票分析中的单元格36。下面的屏幕截图显示了使用VERSION AS-OF语法的三个不同查询,允许您按版本(或使用时间戳语法按时间戳)查看数据。使用此功能,您可以知道对数据进行了哪些更改以及这些事务发生的时间。 Q: 我看到股票流数据更新是通过视图完成的;我想知道是否可以对实际的数据文件本身进行更新。例如,我们需要刷新整个分区parquet文件来实现更新吗?三角洲湖下的解决方案是什么?虽然对sparksql视图进行了更改,但是这些更改实际上发生在存储上的底层文件上。Delta Lake自己决定哪些拼花地板文件需要更新以反映新的变化。Q: 我们可以在Apache配置单元中查询Delta-Lake表吗目前(从0.1.0版起),不可能使用Apache配置单元查询Delta-Lake表,也不支持配置单元元存储(尽管该功能在路线图中)。有关此特定问题的最新信息,请参阅GitHub第18期。Q: 有没有介绍三角洲湖详细使用的指南?有关三角洲湖的最新指南,请参阅增量io以及三角洲湖的文件。加入Delta Lake社区,通过我们的Slack频道或Google群组与Delta Lake的用户和贡献者进行交流。额外资源三角洲湖:规模上可靠的数据湖Delta Lake—数据湖的开源可靠性免费试用Databricks。今天就开始吧