go - 将 S3 上的镶木地板转换为字符串
问题描述
我试图在不知道存储在 golang 中的 S3 存储桶中的结构的情况下读取镶木地板文件。
使用 GetObjectOutput 结构中的正文https://docs.aws.amazon.com/sdk-for-go/api/service/s3/#GetObjectOutput,我将其传递给 ioutil 并将其转换为字符串,但是当我打印它读取的字符串,就好像我用文本编辑器打开了镶木地板文件一样。
res, _ := svc.GetObject(&s3.GetObjectInput {
Bucket: aws.String(bucket),
Key: obj.Key,
})
b, _ := ioutil.ReadAll(res.Body)
fmt.Printf("%v", string(b))
解决方案
John Rotenstein 建议使用镶木地板阅读器。
我能够使用https://github.com/xitongsys/parquet-go来解析镶木地板文件。
https://github.com/xitongsys/parquet-go-source,也可用于从 s3 检索 parquet 文件。
推荐阅读
- javascript - JavaScript - 计算两个日期之间的差异(年、日、小时或不到一小时)
- vuejs2 - 如何在 require() Vue 中绑定一个值
- python - 如何将额外的 URL 值传递给 Django 通用 DeleteView?
- terraform - 使用 Terraform 在 EMR 上为 Presto/Spark 启用粘合目录的选项
- c# - Azure Functions 2.x 不断抛出捕获的异常
- java - 是否有可能使这段代码更高效(java8,解析文件)?
- c++ - 如何正确显示特殊的中文、韩文、日文字符
- java - 如何使用扫描仪在给定多个输入的情况下获得多个输出
- google-analytics - 页面跳出率与退出页面跳出率的差异
- excel - 从另一个用户窗体调用时显示加载光标