Azure Data Lake文件中的逻辑视图

问题描述

我需要从Azure Data lake Gen 1文件中对PII和非PII数据进行分类。由于我不想在Data Lake中复制物理文件创建,因此我们可以在Data Lake中创建逻辑视图,最好与物化视图进行比较。

首选技术-Azure Synapse分析/ Databricks /具有Spark流程的VM,...

还易于与Active Directory for RBAC集成的技术。

让我知道可能性。

解决方法

您可以立即使用Azure Synapse SQL按需实现此目标。方法如下:

  1. 创建数据库
  2. 创建数据库范围的凭据
  3. 使用该凭据创建外部数据源
  4. 在文件上创建两个视图

以下一些文档可以帮助您完成以下步骤: https://docs.microsoft.com/en-us/azure/synapse-analytics/sql/create-use-external-tables https://docs.microsoft.com/en-us/azure/synapse-analytics/sql/create-use-views

完成后,您应该创建登录名,并在数据库内部创建与这些登录名绑定的用户。该文档可以帮助您:https://docs.microsoft.com/en-us/azure/synapse-analytics/sql/access-control#database-level-permission

现在,您应该根据自己的描述授予适当的权限,我认为您将需要以下权限:

  1. 在视图上选择GRANT – doc:https://docs.microsoft.com/en-us/sql/t-sql/statements/grant-object-permissions-transact-sql?view=sql-server-ver15
  2. 关于凭证的GRANT参考– doc:https://docs.microsoft.com/en-us/sql/t-sql/statements/grant-database-scoped-credential-transact-sql?view=sql-server-ver15
  3. 拒绝管理员数据库批量操作– doc:https://docs.microsoft.com/en-us/sql/t-sql/statements/deny-database-permissions-transact-sql?view=sql-server-ver15

这将为您提供一个包含视图和用户的数据库,这些视图和用户可以访问被允许访问的VIEW,并且他们将无法在数据库中创建新对象,也无法使用凭据在湖上进行随机查询。