Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.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 UINT_64导致雅典娜出现错误_Amazon Web Services_Pyspark_Parquet_Uint64 - Fatal编程技术网

Amazon web services UINT_64导致雅典娜出现错误

Amazon web services UINT_64导致雅典娜出现错误,amazon-web-services,pyspark,parquet,uint64,Amazon Web Services,Pyspark,Parquet,Uint64,以下是我对源数据库(MySQL RDS)中无符号整数的问题: 我使用AWSDMS对源表进行初始加载,目标是S3(我们数据湖的1区),保存为拼花地板。然后我可以用胶水抓取它,并用雅典娜查询表。这里一切都好 然后我创建了一个粘合作业来读取Zone1数据目录并输出到S3中的另一个存储桶(我们的Zone2)。但是,粘合作业失败:拼花地板类型不受支持:INT64(UINT_64) 有没有人有一个变通办法,我可以把它放到粘合作业中,将此数据类型“转换”到其他类型?大家好,谢谢回复。是的,这就是我几个月前想出

以下是我对源数据库(MySQL RDS)中无符号整数的问题:

我使用AWSDMS对源表进行初始加载,目标是S3(我们数据湖的1区),保存为拼花地板。然后我可以用胶水抓取它,并用雅典娜查询表。这里一切都好

然后我创建了一个粘合作业来读取Zone1数据目录并输出到S3中的另一个存储桶(我们的Zone2)。但是,粘合作业失败:拼花地板类型不受支持:INT64(UINT_64)


有没有人有一个变通办法,我可以把它放到粘合作业中,将此数据类型“转换”到其他类型?

大家好,谢谢回复。是的,这就是我几个月前想出的答案,我忘了更新我的帖子。在DMS中,我使用了“转换”功能并将其转换为INT(或者可能是INT8)。无论如何,它现在作为拼花地板降落在2区(S3),然后可以用胶水进行处理。工作原理类似于charmI编写的拼花文件,其中包含UInt8、UInt16和UInt32(但尚未包含UInt64)列。我使用AWS Athena版本2成功地阅读了这些拼花地板文件。但是,它们被读取为有符号整数列。所有看起来都是有签名的,没有未签名的版本。您在UInt列中遇到的问题可能仅限于AWS Athena v1,并且可能在v2中处理得更好。非常好的点@acummenus。我甚至没有想到更新的雅典娜引擎,我的管道是去年v2发布之前编写的。旁注:我们的一些数据最终进入红移/光谱,红移不喜欢Tinyint数据类型。但是,在zone1中登陆数据时,我没有在DMS作业中使用“转换”(就像我对UINT列所做的那样),而是在从zone1到Zone2的粘合作业中将它们转换为smallint,谢谢您的响应。是的,这就是我几个月前想出的答案,我忘了更新我的帖子。在DMS中,我使用了“转换”功能并将其转换为INT(或者可能是INT8)。无论如何,它现在作为拼花地板降落在2区(S3),然后可以用胶水进行处理。工作原理类似于charmI编写的拼花文件,其中包含UInt8、UInt16和UInt32(但尚未包含UInt64)列。我使用AWS Athena版本2成功地阅读了这些拼花地板文件。但是,它们被读取为有符号整数列。所有看起来都是有签名的,没有未签名的版本。您在UInt列中遇到的问题可能仅限于AWS Athena v1,并且可能在v2中处理得更好。非常好的点@acummenus。我甚至没有想到更新的雅典娜引擎,我的管道是去年v2发布之前编写的。旁注:我们的一些数据最终进入红移/光谱,红移不喜欢Tinyint数据类型。但是,在zone1中登陆数据时,我没有在DMS作业中使用“转换”(就像我对UINT列所做的那样),而是在从zone1到zone2的粘合作业中将它们转换为smallint