【问题标题】:AWS S3 data format in files for AWS Athena queries用于 AWS Athena 查询的文件中的 AWS S3 数据格式
【发布时间】:2017-06-11 07:04:17
【问题描述】:

我想将 http 请求负载存储在 AWS S3 中,并使用 AWS Athena 对这些数据进行查询。文件中的数据格式是什么,在这种情况下建议存储在S3中?

选项包括:JSON、CSV、TSV、文本文件、Apache ORC、Apache Parquet、压缩数据。

目前我考虑这三个方面:序列化/反序列化的时间、查询速度、空间。

欢迎任何可能有用的链接!谢谢!

【问题讨论】:

    标签: json csv http parquet amazon-athena


    【解决方案1】:

    Athena 目前支持以下文件格式。

    • Avro
    • CloudTrail
    • CSV (OpenCSVSerDe)
    • TSV
    • 实木复合地板
    • 兽人
    • JSON
    • Apache Web 服务器日志 (RegexSerDe)
    • 自定义分隔符

    为了使用这些格式,您必须指定一个序列化器-反序列化器类 (SerDe),以便 Athena 知道表的格式。

    要提高 Athena 查询性能,重要的因素是对数据进行分区。通过对数据进行分区,您可以限制每个查询扫描的数据量,从而提高性能并降低成本。

    欲了解更多信息,请查看Athena partitioning 和支持的file formats

    【讨论】:

      【解决方案2】:

      对于序列化和查询性能以及空间,Apache Parquet 和 ORC 将是最佳选择。它们都是列式数据格式,使用各种编码和压缩技术同时优化大小和查询性能。

      ORC 和 Parquet 之间的选择主要取决于您计划使用的工具。虽然 Parquet 是更广泛使用的一种,但某些工具在 ORC 上的性能更好。

      使用这些格式有一个限制:它们针对批处理工作负载进行了优化。这意味着您还应该需要批量编写它们。

      【讨论】:

        猜你喜欢
        • 2020-06-16
        • 1970-01-01
        • 2021-10-18
        • 2020-09-19
        • 2021-03-25
        • 1970-01-01
        • 1970-01-01
        • 2023-02-22
        • 2019-09-16
        相关资源
        最近更新 更多