使用Azure Data Lake时是否需要Data Warehouse?
Is there any need of Data Warehouse when using Azure Data Lake?
我正在探索 Azure Data Lake,我是这个领域的新手。我探索了很多东西,阅读了很多文章。基本上,我必须根据不同来源的数据开发 Power BI 仪表板。
在经典的 SQL 服务器堆栈中,我可以编写一个 ETL(提取、转换、加载)过程,将数据从我的系统数据库导入数据仓库数据库。然后通过使用 SSAS 等将该数据仓库与 Power BI 一起使用。
但我想使用 Azure Data Lake,我探索了 Azure Data Lake Store 和 Azure Data Lake Analytic(U-SQL)。我画了下面的架构图。
- 我在目前的流程中是否遗漏了什么
应用?
- 我可以使用以下方法直接从 Azure Data Lake 获取数据
Power BI 所以不需要数据仓库。我说得对吗?
- 我可以在 Azure Data Lake 中创建一个数据库,那将是我的数据仓库吗?
- 从 Azure Data Lake 中的原始文件(例如 .csv)输出数据的最佳格式是什么?
1 & 2) 目前 ADLS 仅有限支持 PowerBI 直接查询。如果您的数据太大(我相信大于 10GB),那么 PowerBI 无法直接处理您的 ADLS 帐户中的数据。在这种情况下,我建议将您在 ADLS 中处理的数据移动到 SQL 数据库或 SQL 数据仓库,因为这允许 PowerBI 处理更大量的数据。您可以使用 Azure 数据工厂来移动数据,如果将数据移动到 SQL DW,则可以使用 Polybase。
3) 数据湖与数据仓库仍然不同,它们各有优缺点。数据湖最适合存储原始数据或经过轻微处理的数据,这些数据可能具有多种格式和模式。在使用 Azure Data Lake Analytics 处理和筛选此数据后,您可以将该数据移动到 SQL DW 以进行交互式分析和数据管理(但代价是架构不灵活)。
4) 取决于您的用例。如果您打算继续在 ADLS 中处理数据,我建议您输出到 ADLS table 以获得更高的性能。但是,如果您需要将此数据传递到另一个服务中,那么 CSV 是一个不错的选择。您可以在我们的 GitHub 上找到更多输出器,例如 JSON 和 XML。
这个答案可能不及时,但我尝试过的与您之前的经验更相似的是启动 Azure 分析服务的实例。您可以创建表格模型或 mdx 模型,将大量数据推入内存并从 power bi 连接到它。 "only" 的问题是它很快就会变得昂贵。 AAS 的一大优点是构建表格模型的界面几乎遵循 power query 并使用 dax。
另外我相信现在 adla store 基本上不再支持直接使用 blob 存储,所以基本上你会去 data --> blob --> dla --> aas --> pbi。
我正在探索 Azure Data Lake,我是这个领域的新手。我探索了很多东西,阅读了很多文章。基本上,我必须根据不同来源的数据开发 Power BI 仪表板。
在经典的 SQL 服务器堆栈中,我可以编写一个 ETL(提取、转换、加载)过程,将数据从我的系统数据库导入数据仓库数据库。然后通过使用 SSAS 等将该数据仓库与 Power BI 一起使用。
但我想使用 Azure Data Lake,我探索了 Azure Data Lake Store 和 Azure Data Lake Analytic(U-SQL)。我画了下面的架构图。
- 我在目前的流程中是否遗漏了什么 应用?
- 我可以使用以下方法直接从 Azure Data Lake 获取数据 Power BI 所以不需要数据仓库。我说得对吗?
- 我可以在 Azure Data Lake 中创建一个数据库,那将是我的数据仓库吗?
- 从 Azure Data Lake 中的原始文件(例如 .csv)输出数据的最佳格式是什么?
1 & 2) 目前 ADLS 仅有限支持 PowerBI 直接查询。如果您的数据太大(我相信大于 10GB),那么 PowerBI 无法直接处理您的 ADLS 帐户中的数据。在这种情况下,我建议将您在 ADLS 中处理的数据移动到 SQL 数据库或 SQL 数据仓库,因为这允许 PowerBI 处理更大量的数据。您可以使用 Azure 数据工厂来移动数据,如果将数据移动到 SQL DW,则可以使用 Polybase。
3) 数据湖与数据仓库仍然不同,它们各有优缺点。数据湖最适合存储原始数据或经过轻微处理的数据,这些数据可能具有多种格式和模式。在使用 Azure Data Lake Analytics 处理和筛选此数据后,您可以将该数据移动到 SQL DW 以进行交互式分析和数据管理(但代价是架构不灵活)。
4) 取决于您的用例。如果您打算继续在 ADLS 中处理数据,我建议您输出到 ADLS table 以获得更高的性能。但是,如果您需要将此数据传递到另一个服务中,那么 CSV 是一个不错的选择。您可以在我们的 GitHub 上找到更多输出器,例如 JSON 和 XML。
这个答案可能不及时,但我尝试过的与您之前的经验更相似的是启动 Azure 分析服务的实例。您可以创建表格模型或 mdx 模型,将大量数据推入内存并从 power bi 连接到它。 "only" 的问题是它很快就会变得昂贵。 AAS 的一大优点是构建表格模型的界面几乎遵循 power query 并使用 dax。
另外我相信现在 adla store 基本上不再支持直接使用 blob 存储,所以基本上你会去 data --> blob --> dla --> aas --> pbi。