【问题标题】:AWS Athena fails when there are empty files in S3当 S3 中有空文件时,AWS Athena 失败
【发布时间】:2018-01-05 16:20:41
【问题描述】:

我有一个复制按日期分区的数据的数据管道。有时一天没有数据。数据管道创建一个 0 字节的 csv 文件。当我为此日期运行 Athena 查询时,它失败而不是返回 0 结果。我得到的错误是 HIVE_CURSOR_ERROR:输入流意外结束

我怎样才能避免这种情况。我知道一种方法是永远不要使用空数据创建文件,但我永远无法弄清楚如何在数据管道中做到这一点。有什么我可以在 Athena 中进行调整以使其不会以这种方式失败的方法吗?

【问题讨论】:

    标签: hive amazon-data-pipeline amazon-athena


    【解决方案1】:

    在数据管道复制数据后尝试运行以下命令。

    MSCK REPAIR TABLE table_name
    

    这将恢复\更新分区到 Athena 目录。 它可以是数据管道中的最后一步。在您真正将其作为管道的一部分之前,请尝试在 Athena Query 控制台中执行它并验证它是否可以解决问题。

    【讨论】:

    • - 此命令给出错误:line 1:1: mismatched input 'msck' expecting {'(', 'select', 'desc', 'using', 'with', 'values', 'create', 'table', 'insert', 'delete', 'describe', 'grant', 'revoke', 'explain', 'show', 'use', 'drop', 'alter', 'set', 'reset', 'start', 'commit', 'rollback', 'call', 'prepare', 'deallocate', 'execute'} (service: amazonathena; status code: 400; error code: invalidrequestexception; request id: b89789c6-05ba-4de2-9915-6c3b534212a2)
    猜你喜欢
    • 2021-07-26
    • 1970-01-01
    • 2020-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多