Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 很难将S3JSONL数据中的大数据帧加载到glue中以转换为拼花地板:内存限制和工人繁殖失败_Amazon Web Services_Apache Spark_Amazon S3_Pyspark_Aws Glue - Fatal编程技术网

Amazon web services 很难将S3JSONL数据中的大数据帧加载到glue中以转换为拼花地板:内存限制和工人繁殖失败

Amazon web services 很难将S3JSONL数据中的大数据帧加载到glue中以转换为拼花地板:内存限制和工人繁殖失败,amazon-web-services,apache-spark,amazon-s3,pyspark,aws-glue,Amazon Web Services,Apache Spark,Amazon S3,Pyspark,Aws Glue,我正在尝试使用AWS glue以JSONL格式从S3加载大型数据集。S3数据通过粘合表投影进行访问。加载后,我将它们以拼花格式保存回不同的S3位置。在大多数情况下,这种策略是有效的,但对于我的一些数据集,粘合作业的内存不足。仔细观察,它似乎试图在重新分发之前将整个大型数据集加载到一个执行器上 我曾尝试将worker大小从standard升级到G.1X,以便它拥有更多的内存和CPU,但这对我来说不起作用:脚本仍然会崩溃 建议我尝试一下本页概述的输入数据分区技术: 我尝试使用groupSize和g

我正在尝试使用AWS glue以JSONL格式从S3加载大型数据集。S3数据通过粘合表投影进行访问。加载后,我将它们以拼花格式保存回不同的S3位置。在大多数情况下,这种策略是有效的,但对于我的一些数据集,粘合作业的内存不足。仔细观察,它似乎试图在重新分发之前将整个大型数据集加载到一个执行器上

我曾尝试将worker大小从standard升级到G.1X,以便它拥有更多的内存和CPU,但这对我来说不起作用:脚本仍然会崩溃

建议我尝试一下本页概述的输入数据分区技术:

我尝试使用groupSize和groupFiles参数,但这些参数对我不起作用:脚本仍然会崩溃

最后,建议我像在典型的spark环境中那样设置
--config
选项,以便我的程序可以使用更多内存,但由于我在AWS中工作,因此无法设置配置

以下代码演示了我正在尝试执行的操作:

datasource=glueContext.create\u dynamic\u frame.from\u catalog(
数据库=源数据库,
表\名称=源\表
)
#yapf:禁用
glueContext.write\u dynamic\u frame.from\u选项(
frame=数据源,
连接类型=“s3”,
连接选项={
“路径”:输出路径,
},
format=“拼花地板”
)

预期的结果(也是我在大多数数据集中看到的结果)是拼花地板数据被写到新的S3位置。在最坏的情况下,查看日志会发现,尽管已将作业的最大容量设置设置为10或更多,但只使用了一个worker。它似乎只是不想创建更多的工作人员,我不明白为什么。

您的数据似乎有偏差。在将数据写入s3之前,您是否尝试过重新划分数据?