gpt4 book ai didi

azure - Azure Synapse 中 Delta Lake 和 Lake 数据库之间的区别

转载 作者:行者123 更新时间:2023-12-03 01:18:03 25 4
gpt4 key购买 nike

我正在 Azure Synapse 中构建 Lakehouse 架构,并且对使用 Delta-lake 还是 Lake 数据库犹豫不决。

两者似乎具有大致相同的功能 - 我可以使用 Spark 执行 ETL 任务 - 然后使用 Spark 池以及无服务器 SQL 池来查询数据。

Azure documentation ,湖泊数据库定义为:

"A lake database provides a relational metadata layer over one or morefiles in a data lake. You can create a lake database that includesdefinitions for tables, including column names and data types as wellas relationships between primary and foreign key columns. The tablesreference files in the data lake, enabling you to apply relationalsemantics to working with the data and querying it using SQL. However,the storage of the data files is decoupled from the database schema;enabling more flexibility than a relational database system typicallyoffers."

Delta Lake定义为:

Delta Lake is an open-source storage layer that adds relationaldatabase semantics to Spark-based data lake processing. Delta Lake issupported in Azure Synapse Analytics Spark pools for PySpark, Scala,and .NET code.

The benefits of using Delta Lake in a Synapse Analytics Spark poolinclude:

Relational tables that support querying and data modification. WithDelta Lake, you can store data in tables that support CRUD (create,read, update, and delete) operations. In other words, you can select,insert, update, and delete rows of data in the same way you would in arelational database system.

Azure Synapse 中的 Delta Lake 和 Lake 数据库(如果有)有什么区别?或者它们只是两种不同的工具来实现大致相同的结果?使用其中一种相对于另一种有具体的好处吗?

最佳答案

Lake 数据库是 Microsoft 添加到 Synapse Analytics 的一项工具,它使用 Spark SQL (Hive) 托管表为 Parquet、csv 或 Delta 表提供数据库抽象层。它使用 Hive Metastore,它跟踪数据库内容:表、模式、 View 等。如果您在其中使用 Delta 表,您将拥有所有附加元数据,这些元数据是 Delta Lake 更改跟踪的一部分,但 Delta 表元数据不是 Lake Database Metastore 的一部分。我正在使用 Delta Lake 的免费 Linux 发行版。

如果正确配置 Delta Lake,您可以将其作为 Lake 数据库显示在 Synapse Studio 中。 Lake 数据库的一个优点是,在 Synapse 数据流中,您可以使用 Workspace DB 源类型,而不是集成数据集,该类型适用于 Lake 数据库,它使用数据库和表模型,而不是使用一堆集成数据集你必须定义。

我正在为客户进行设置,并且仍在探索细节。对于不同部分的文档很丰富,但对于整体、如何配置它以及它们如何协同工作却没有任何内容。所以这里有任何不准确的说法还请大家多多包涵。为了将开源 Delta Lake 集成到 Lake 数据库和 Synapse 管道中,需要了解许多细微差别。使用此堆栈获得的内容应该与在 Delta Lake 的 Databricks 版本中获得的内容类似,只不过这里的配置全部由您决定,并且您必须有一些运气才能弄清楚。

关于azure - Azure Synapse 中 Delta Lake 和 Lake 数据库之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73552454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com