问题标签 [aws-lake-formation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
amazon-web-services - LakeFormation 权限返回“ALL”
我注意到 LakeFormation SDK 调用(通过 AWS CLI 的 boto3 和通过 Terraform 的 Go)ALL
在分配给资源的权限列表中返回。
例如:
然而,我不能删除这个“ALL”权限。尝试使用 AWS CLI 或 Terraform 撤销会导致错误:
这里发生了什么,除了忽略“ALL”的特殊情况之外,我该如何解决?
amazon-web-services - 通过 CloudFormation 授予 Lake Formation 对 Glue 数据库中所有表的读取权限
我正在努力在使用 Lake Formation 进行访问控制的数据湖中定义读者角色。我想将此角色Select
权限授予相关数据库中的所有表,以便它自动选择创建的新表。在CloudFormation 的文档中,我可以看到这目前被标记为不支持,TableWildcard
看起来像是我想使用的解决方案。
我目前正在考虑对这个角色应该有权访问的表名进行硬编码,或者编写一个boto3
脚本来获取数据库中的所有表并通过 Lake Formation 向它们添加权限。这可以使用 Lambda 定期运行,这将自动执行此过程,但当然这不是最漂亮的方法。
amazon-web-services - 如何通过 Lake Formation 与另一个帐户共享我的 Glue 目录?
我已经在我的源帐户中创建了 Glue 表。然后我去了Lake Formation并与目标帐户共享表。
当我在我的目标帐户中转到 Lake Formation 时,我看不到共享表。根据此处的文档(https://docs.aws.amazon.com/lake-formation/latest/dg/viewing-available-shared-resources.html),它应该会自动出现。
我错过了什么吗?
amazon-sagemaker - SageMaker 无法创建 sagemaker_data_wrangler 数据库导致 Lake Formation 权限
Glue DataCatalog 访问由 Lake Formation 管理。但是,当尝试添加查询 Athena 表的新 SageMaker Data Wrangler 流时,会出现以下错误:
CustomerError:尝试在 Glue 数据目录中创建 sagemaker_data_wrangler 数据库时发生错误:调用 CreateDatabase 操作时发生错误 (AccessDeniedException):Lake Formation 权限不足:需要在目录上创建数据库
数据库 sagemaker_data_wrangler 不存在,但我们已将使用 SageMaker (sagemaker-{region}-{account}) 的默认 S3 存储桶添加到 Lake Formation Data Location,以赋予 SageMaker 执行角色 CreateDatabase 权限:
即使我们手动创建数据库 (sagemaker_data_wrangler) 并授予 Data Wrangler 执行角色权限,该错误仍然存在。
amazon-web-services - 是否有一种简单的方法可以一次撤销用户的所有 AWS Lake Formation 权限?
我有一个具有 2000 多个权限的数据湖,我想为某些用户撤消这些权限并重新启动以再次授予权限。
通过控制台,撤销是一一完成的,需要很长时间。有没有办法一次性撤销用户的所有权限?
apache-spark - 用于处理不同来源的增量数据加载的 AWS Glue
我计划利用 AWG Glue 进行增量数据处理。基于每小时计划,触发器将调用 Glue Crawler 和 Glue ETL Job,后者将增量数据加载到目录并通过 ETL 处理增量文件。而且看起来也很直截了当。有了这个,我遇到了几个问题。
假设我们将各种表和各种数据库的数据流式传输到 S3 位置,并且我们希望基于登陆数据创建数据库和表。例如: s3://landingbucket/ database1 / table1 /YYYYMMDDHH/some_incremental_files.json s3://landingbucket/ database1 / table2 /YYYYMMDDHH/some_incremental_files.json s3://landingbucket/ database1 /somedata/ tablex /YYYYMMDDHH/some_incremental_files.json s3 ://landingbucket/ database2 / table1 /YYYYMMDDHH/some_incremental_files.json s3://landingbucket/ datasource_external /data/table1/YYYYMMDDHH/some_incremental_files.json
随着数据进入上述 s3 结构,我们希望为这些数据库和具有有限爬虫的表创建粘合目录。这里我们有数据库数量作为爬虫的数量。注意:我们有一个database1的爬虫,它在database1下创建表,这很好并且符合预期,但是我们在database1中有一个特殊的家伙“somedata”,它的结构与其他表不标准,它创建了表somedata并使用分区“partitions_0=tablex 和 partition_1=YYYYMMDDHH”。有没有比每个数据库一个爬虫更好的方法来处理这些爬虫数量更少。
Glue ETL,我们有类似的挑战,我们希望将传入的数据格式化为标准 parquet 格式,并且每个数据库有一个存储桶,并且表将位于该存储桶下,因为数据量很大,我们不想要一个带有分区的表作为数据库和数据。这样我们就不会遇到传入负载的 s3 减速问题。由于许多团队将从这里查询数据,所以我们不希望他们的分析工作出现 s3 减速问题。
不是每个表,每个数据库都有一个 ETL 作业,有没有一种方法可以让我们用有限的作业来处理这个问题。当新表出现时,ETL 作业应该有一种方法应该将这个 json 数据转换为格式化区域。所以输入数据和输出路径都可以动态处理,而不是硬编码。
打开任何更好的主意!
谢谢,克里什!
amazon-web-services - AWS Glue 表丢失 - Pyspark 错误 Py4JJavaError(保存表时出错)
我对特定的胶水表(我以前从未见过的东西)有一个不寻常的行为,在这种情况下,它是由火花作业创建的表(带有气流的时间表)。
基本上,该作业包括从数据仓库中提取单个表并写入 s3/glue 中的表,覆盖现有分区(保存模式为覆盖)。由于某种原因,这项工作今天失败了,这是引发的异常。
起初,我和我的同事认为这只是 Spark 的 EMR 集群错误,然后重置集群即可解决。但后来我们看到了更奇怪的东西。
事件发生后,该表已从目录中消失(在胶水控制台中不可见,在 athena 中不可见)。但这里有问题!桌子还在那里,但被隐藏了。我们无法从搜索工具中的粘合 IDE 中看到它,但我们可以通过替换 url 中的表名从控制台访问,从 Athena 查询数据,甚至可以使用 get-table 命令从 cli 中列出表。
我们尝试删除表(控制台或 cli),但遇到以下问题:
几乎是如果表从湖层中移除。现在,问题是:你们有没有遇到过这样的问题,是它的调试过程吗?谢谢!
amazon-web-services - 无法通过 Lake Formation 授予对 Glue 表的跨账户访问权限
我正在尝试从账户 A 提供对账户 B 的跨账户 Glue 访问权限。
我首先收到一个错误消息,
我研究并发现我可以通过 Lake Formation 授予 Data Catalog 权限。我选择了“外部帐户”并添加了目录资源以及表权限。但是,我收到另一个错误消息:
因此,我转到 IAM 管理控制台,找到此错误消息中指定的策略,并将其附加到我正在使用的角色(AWS 管理控制台右上角的那个)。
但同样的错误信息不断弹出,这似乎并没有解决问题。
我在这里做错了什么?我怎样才能绕过这个问题?
amazon-web-services - 如何从 Lake Formation 创建 SageMaker 功能组
客观的
说明是否可以使用 AWS Lake Formation 的现有 Glue 数据目录和 S3 数据创建 SageMaker 功能组(在功能存储中)。
背景
AWS Lake Formation 应该是与 Glue 数据目录集成并支持跨账户的分析基础。
AWS re:Invent 2020:数据湖:使用 AWS Lake Formation 轻松构建、保护和共享
如果有现有的 Glue 数据目录和由 Lake Formation 管理的中央存储库中管理的数据,则应该有一种方法可以重用它。但是,找不到从它们创建 SageMaker 功能组的方法。相反,显然 SageMaker Feature Group 有自己的 Re:Invent 方法来创建冗余 Glue 数据目录和 S3 中的数据,称为“离线特征存储”。
SageMaker Feature Store 似乎也在推广自己的跨账户共享方式。
跨账户访问概览
本部分概述了如何通过 AWS Security Token Service (AWS STS) 使用代入角色在两个账户之间启用 Feature Store 的跨账户访问。
问题
请告知是否可以通过重用 S3 中的现有 Glue 数据目录和数据从 Lake Formation 创建 SageMaker 功能组。或者,如果这是有人总结的另一个内聚 AWS Re:Invent 示例。
并不是说 AWS 比 GCP 更难使用,而是它不必要地难;基础设施原语的杂乱无章的蔓延,它们之间的凝聚力很差。
挑战是好的,混乱的混乱不是,AWS 的问题是你的大部分工作时间将花在整理他们的文档和筛选功能和产品以找到你想要的东西,而不是专注于有趣的有趣挑战.
如果我误解了某些东西并且有技术原因导致它不能与 Lake Formation 紧密结合,请帮助理解它。
amazon-web-services - AWS Lake Formation - 元数据访问控制与数据位置权限
元数据访问控制 – 数据目录资源的权限(数据目录权限)。
这些权限使主体能够创建、读取、更新和删除数据目录中的元数据数据库和表。
...
数据位置权限使委托人能够创建和更改指向特定 Amazon S3 位置的元数据数据库和表。
听起来元数据访问控制和数据位置权限对我来说几乎相同——它们管理元数据数据库和表的权限。这两者有什么区别?