【问题标题】:content_length of parquet file on redshift红移上镶木地板文件的 content_length
【发布时间】:2020-11-24 01:27:02
【问题描述】:

我正在尝试将文件从 S3 上传到 redshift,并为此创建了一个清单 json 文件:

{  
   "entries":[  
      {  
         "url":"s3://xyz/xyz/asda1.parquet",
         "mandatory":true,
         "meta":{  
            "content_length":99
         }
      },
      {  
         "url":"s3://xyz/xyz/asda2.parquet",
         "mandatory":true,
         "meta":{  
            "content_length":99
         }
      }
   ]
}

这是我在 AWS 文档中找到的镶木地板文件示例:https://docs.aws.amazon.com/redshift/latest/dg/r_COPY_command_examples.html#copy-command-examples-manifest

但是,当我运行复制命令时,我收到一条错误消息,提示“版本号无效”。通过对 stackoverflow 的研究,似乎必须正确设置 content_length。我不确定如何获取文件的 content_length。任何帮助将不胜感激!

谢谢

【问题讨论】:

  • 元键包含一个 content_length 键,其值为actual size of the file in bytes。所以我认为你必须使用 s3 cli 来获取文件大小并生成清单文件

标签: sql amazon-web-services amazon-s3 amazon-redshift


【解决方案1】:

您可以通过执行 aws s3 ls 命令来检查 content_length

aws s3 ls s3://xyz/xyz/asda.parquet
2020-11-25 09:33:44        2003 asda.parquet

2003 -> 这个值是你的清单文件中需要指定的 content_length 值

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-23
    • 2018-07-01
    • 1970-01-01
    • 2015-06-29
    • 1970-01-01
    • 2019-11-20
    • 2019-06-02
    • 2016-01-18
    相关资源
    最近更新 更多