AWS Athena数据集的注意事项? TSV

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AWS Athena数据集的注意事项? TSV相关的知识,希望对你有一定的参考价值。

我正在计划用以下参数分析TSV文件

  • 大约200-225列(字符串,布尔值,时间戳,整数,十进制)
  • 大约200000行数据

文件大小将达到350-400 MB

我的问题在这里

  • 我是否需要拆分成多个文件以获得更好的性能?
  • 我应该分区吗?减少扫描并节省成本?
  • 如何加快选择查询?索引如何在TSV文件中工作?
  • Snappy压缩会减小文件的大小吗? 30%-40%(文件将为280-300 MB)
  • 将它转换为Apache ORC会有助于减小尺寸吗?

由于我是AWS Athena的新手,欢迎任何建议或反馈?

答案

我认为雅典娜在处理400 MB文件时不会遇到任何问题。您可以将它们分成两个大小相等的文件(是的,也使用压缩)然后查询。通常 - 如果拆分文件太小(小于128 MB)并且文件太多,您可能会发现拆分文件实际上需要更多时间。对于您的总文件大小,我认为即使它是单个文件也不会发现任何差异。

但是将TSV转换为柱状格式将为您提供最佳性能。尝试将TSV / CSV转换为Parquet并进行查询。你不太可能所有的查询都是select * from所以继续前进和镶木地板。查看converting to columnar formats的用户指南

另一答案

对于雅典娜来说,这是一个非常小的数据集,除非很多人不断使用它,否则优化可能不值得。如果您所做的一切都是从1.6秒 - .8秒查询,那么时间可能会更好。回答你的问题:

我是否需要拆分成多个文件以获得更好的性能?不会。这可能会影响这种规模的表现。

我应该分区吗?减少扫描并节省成本?不太可能,很难想象一个值得它的场景。

如何加快选择查询?索引如何在TSV文件中工作?如果你留在关于排序等的TSV文件中,你可以做的事情并不多。

Snappy压缩会减小文件的大小吗? 30%-40%(文件将为280-300 MB)。它会。

将它转换为Apache ORC会有助于减小尺寸吗?是。这将是最值得采取的行动。转换为ORC或Parquet的最小努力可能会比上述任何其他方面带来更大的收益。

以上是关于AWS Athena数据集的注意事项? TSV的主要内容,如果未能解决你的问题,请参考以下文章

在 Zeppelin 中保存 AWS Athena 查询的结果

使用 AWS Glue Scala 查询 Athena(添加分区)

将数据从 Google Analytics 迁移到 AWS Athena

AWS Athena 可以更新或插入存储在 S3 中的数据吗?

AWS Athena 分析日志

无法从 AWS Redshift 访问 AWS Athena 表