繁体   English   中英

从 s3 数据库查询 Athena - 删除元数据/损坏的数据

[英]Query Athena from s3 database - remove metadata/corrupted data

我正在学习将 Tableau 连接到 Amazon Athena 的教程,但在运行查询并返回预期结果时挂断了。 我从https://github.com/aws-samples/amazon-athena-tableau-integration下载了 student-db.csv 并将 csv 上传到我创建的存储桶我可以在 Athena 中创建数据库,但是当我使用批量添加或直接从查询编辑器创建表并使用查询预览时,数据会损坏。 并包括意外字符和意外/不必要的标点符号,有时所有数据都汇总到一个列中,还包含元数据,例如“1?20220830_185102_00048_tnqre”0 2?hive”3 查询计划* 4 查询计划2?varchar8 @H?P? ”。 当我预览使用 Athena 创建并存储在我的存储桶中的表时,我的 Athena - Tableau 连接也会收到相同的问题。

CREATE EXTERNAL TABLE IF NOT EXISTS student(
  `school` string, 
  `country` string, 
  `gender` string, 
  `age` string, 
  `studytime` int, 
  `failures` int, 
  `preschool` string, 
  `higher` string, 
  `remotestudy` string, 
  `health` string)
ROW FORMAT DELIMITED 
  FIELDS TERMINATED BY ',' 
STORED AS INPUTFORMAT 
'org.apache.hadoop.mapred.TextInputFormat' 
OUTPUTFORMAT 
'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION
  's3://jj2-test-bucket/'
TBLPROPERTIES (
  'has_encrypted_data'='false', 
  'skip.header.line.count'='1', 
  'transient_lastDdlTime'='1595149168')
SELECT * FROM "studentdb"."student" limit 10;

查询预览

解决方案是创建一个单独的 S3 存储桶来存放查询结果。 此外,连接到 Tableau 时,您必须将 S3 暂存目录设置为查询结果存储桶的位置,而不是连接到包含原始数据/csv 的 S3 存储桶

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM