问题标签 [aws-data-wrangler]

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.

0 投票
2 回答
1312 浏览

amazon-web-services - awswrangler 和 boto3 的区别?

我已经使用 boto3 通过 python 代码连接到 aws 服务。最近我遇到了awswrangler 库,它具有与boto3 类似的功能。两者有什么区别。你能用例子解释一下我们应该在哪种情况下使用哪一种吗?

0 投票
0 回答
186 浏览

python - 为什么 s3.to_parquet 在发布到 AWS Glue 时切换数据类型?

我正在创建一个这样的数据框: concatdatafile = pd.concat(datafile, axis=0, ignore_index=True, sort=False)

然后在发布前检查一些字段数据类型:

我的下一条语句是写:

当我在 Glue 中运行此代码时,我得到: 日志截图 1

(注意:我在运行之前清除了胶水定义,所以它会有新的元数据)

但在 Glue 表中,我看到字段类型更改如下:
日志截图 2

问题:...为什么不尊重我发布的数据类型?它看到数据看起来像双打(目前),但这无关紧要。以后的数据将是字符串,所以我希望它不会覆盖我发送的类型。

0 投票
1 回答
469 浏览

python - 使用 pyspark 将镶木地板文件(在 aws s3 中)存储到 spark 数据框中

我正在尝试从我的 s3 存储桶中的特定文件夹中读取数据。此数据采用镶木地板格式。为此,我正在使用awsrangler

这将返回一个熊猫数据框:

但是,我想将从我的 s3 存储桶中检索到的数据存储在 spark 数据框中,而不是 pandas 数据框。我试过这样做这是我自己的问题),但似乎不能正常工作。

我想知道是否有任何方法可以使用 awswrangler 将这些数据存储到 spark 数据框中。或者,如果您有其他选择,我想了解一下。

0 投票
0 回答
110 浏览

python - AWS 上的 Numpy 兼容性问题

我需要在一个 AWS Lambda 中使用AWS Data Wrangler 、NumPy 和 SciPy。

为了使它成为可能,我使用了两个图层:

  • AWS 提供的层:AWSLambda-Python38-SciPy1x- 适用于 Python38 的 AWS Lambda SciPy 层(scipy-1.5.1,numpy-1.19.0)
  • 从awsrangler-layer-2.9.0-py3.8.zip创建的自定义层

我的 AWS Lambda 函数如下所示:

我收到的错误是:

我有办法让它工作吗?

0 投票
1 回答
331 浏览

amazon-web-services - AWS Glue - 即使没有架构更改,表版本也会随着数据加载而增加

我有一个 lambda 作业,它不经常使用 AWS Wrangler 将 parquet 文件转储到 S3 存储桶/Glue 表中。
每次有新数据时,这个 Glue 表似乎都在增加表版本号,即使架构没有改变。

我认为问题不在于 lambda 作业/牧马人,因为它按预期存放了镶木地板文件。我还单独测试了该代码,它按预期工作。
尽管没有更改架构,但 Glue 数据目录表发生了一些事情,这使得它增加了版本。

我检查了底层 parquet 文件中的差异,以查看更新之间是否有一些架构、数据类型等更改,但没有。我已经通过控制台和 AWS CLI (aws glue get-table-versions) 检查了 Glue 表版本之间的差异,但也没有发现任何差异(只有 UpdateTime 和 VersionId 发生了变化)。

我试图用相同的代码重新创建我的设置,但没有发现这个问题。我试图在同一个地方删除并重新创建 Glue 表,但问题再次出现。

问题:什么可能导致我的 Glue 表版本号在没有架构更改时增加?

注意:有问题的代码如下所示。它是一个更大函数的一部分(这实际上只是生成主要 lambda 函数正在做什么的日志)。它本身可以正常工作,并且不使用其余代码中的变量等。我不明白这怎么可能是问题,但无论如何都包括在这里。

0 投票
1 回答
33 浏览

pandas - Visual Studio doesn't show help pop up with DataFrame from awswrangler

I am using VS Code with Microsoft Python extension. If I create a Pandas dataframe and write the name of the variable VS Code popups all kinds of help text. However, if I have a variable made using wr.athena.read_sql_query, I don't get any help text even if the variable is a Pandas dataframe.

Is there a way to make VS Code realize that df2 in the example is a Pandas DataFrame and get the help text?

0 投票
1 回答
55 浏览

pandas - 使用 awswrangler 向 S3 对象添加标签?

我正在使用awswrangler在我的 S3 中编写镶木地板,我通常在我的所有对象上添加标签以进行访问和成本控制,但我没有找到直接使用 awswrangler 的方法。我目前正在使用下面的代码进行测试:

有一种方法可以将标签添加到.to_parquet将在我的 S3 中写入的对象?

0 投票
2 回答
258 浏览

amazon-web-services - awswrangler 将镶木地板数据帧写入单个文件

我正在创建一个无法直接放入内存的非常大的文件。所以我在 S3 中创建了一堆小文件,并正在编写一个可以读取这些文件并合并它们的脚本。我正在使用 aws wrangler 来执行此操作

我的代码如下:

问题是 w4.s3.to_parquet 创建了很多文件,而不是写入一个文件,我也无法删除 chunked=True ,否则我的程序会因 OOM 而失败

我如何使它在 s3 中写入单个文件。

0 投票
2 回答
133 浏览

python - 如何在 python 中使用 awswrangler 从 S3 读取所有镶木地板文件

需要使用 ext .parquet 读取所有镶木地板文件

,但仍然是一个错误:

0 投票
1 回答
52 浏览

python - awswrangler:尝试读取表时无法启动新线程

我正在尝试访问 AWS 存储桶中的表。当我尝试使用awswrangler.read_parquet函数访问它时,我收到一条错误消息,指出我无法访问该文件,因为我无法创建新线程。我通常可以在等待 30 分钟后访问该文件,但这并不能告诉我如何解决问题。以下是有关该命令的更多详细信息: