解析 AWS Athena/AWS Glue 目录中某一列中包含换行符的 csv 文件

2024-03-27

我有如下示例数据:

id,log,code,sequence
100,sample <(>&<)> O sample ? PILE UP - 3 sample,20,7^M$
101,sample- 4/52$
sample$
CM,21,7^M$
102,sample AT 3PM,22,4^M$

在第二行 (id=101) 中,日志列有换行符,一行中包含 3 行。 我在 vim 编辑器中启用了“:set list”选项来显示换行符 ($) 和行尾符 (^M)。

处理换行符AWS 在此处建议 OpenCSVSerde https://docs.aws.amazon.com/athena/latest/ug/csv.html。 我尝试使用 OPENCSVSerde 序列化escapeChar=\\, quoteChar=\", seperatorChar=, 尽管如此,它显示的数据为 5 行,而我需要 3 行。 当我在 Athena 中查询时,id=101 仅显示第一行,其余部分丢失:

id,log,code,sequence
101,sample- 4/52

有关如何处理 csv 文件列中的多行字符的任何提示或示例?

我正在探索自定义分类器,但还没有运气。


根据这个文档https://docs.aws.amazon.com/athena/latest/ug/csv.html https://docs.aws.amazon.com/athena/latest/ug/csv.htmlopencsvserde 不支持换行符。

我看到你正试图在那里放某种日志。 您的选择是:

  • 清理日志以不包含换行符。或者,

  • 使用 regexserde,如果您的日志格式不断变化,则它没有用。或者,

  • 如果两者都不是选项,您可以将格式从 csv 更改为 parquet 或其他格式,这样就不会出现换行问题

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

解析 AWS Athena/AWS Glue 目录中某一列中包含换行符的 csv 文件 的相关文章

  • AWS Athena 扁平化来自嵌套 JSON 源的数据

    我想从 Athena 中的嵌套 JSON 创建一个表 描述的解决方案here http docs aws amazon com athena latest ug json html使用 hive Openx JsonSerDe 等工具尝试在
  • Blazor 服务器端 - AWS 环境中频繁出现 504 错误

    通过 AWS Elastic Beanstalk 将 blazor 服务器端项目部署到 Amazon Web Services 环境后 该网站经常断开连接 我不明白 测试时这些断开连接不会在本地发生 Errors 2020 04 30T16
  • 使用 Ref 作为 Fn::Sub 内部函数中的第一个参数

    我在编译模板时遇到了非常奇怪的问题 我在其中引用了一个字符串参数Fn Sub 而docs http docs aws amazon com AWSCloudFormation latest UserGuide intrinsic funct
  • 不允许为 VPC 创建 EC2 实例

    是否可以将 EC2 实例模板的 VPCId 定义为属性 我想做的是 Resources Ec2Instance Type AWS EC2 Instance Properties SecurityGroups Ref AWSSecurityG
  • 部署在aws上时如何使用环境变量

    我正在构建一个在本地利用环境变量的 Web 应用程序 我想将其投入生产 在线 我正在尝试了解如何在 AWS 上设置环境变量 这是一个 Node js 应用程序 我在 AWS 上使用 Elastic beanstalk 进行部署 我已经看过了
  • 如何在AWS中将AMI从爱尔兰区域复制到中国区域

    我在 AWS 爱尔兰区域有一个设置 现在我希望在中国使用该 AMI 有谁知道完成任务的最佳实践是什么 任何帮助将不胜感激 提前致谢 中国地区目前不支持 AMI 复制 根据AWS 将 AMI 从美国传输或复制到中国 北京 https foru
  • 服务无法放置任务

    好吧 我不知道在哪里可以解决这个问题 我正在尝试启动一个堆栈 其中有一个在 ECS 中运行的基本应用程序 我将在下面展示云信息 但我不断得到 服务 sos ecs SosEcsService 1RVB1U5QXTY9S 无法放置任务 因为没
  • 导入错误:无法导入名称 md5

    真的不知道这里发生了什么 我需要在弹性beanstalk上部署我的flask应用程序 但不知何故改变了路径并且无法再运行python application py dotnet info NET Core SDK reflecting an
  • AWS Api Gateway:缺少身份验证令牌

    所以我有一个链接到 lambda 函数的 api 网关的自定义域名设置 如果我这样做的话我就可以正常工作https api domain com something https api domain com something行为符合预期
  • 如何通过 SSL 将文件直接上传到 S3?

    我已经使用基于浏览器的 Amazon S3 直接 POST 上传有一段时间了 最 近想开始通过 HTTPS 发布 普通的 HTTP 帖子就可以正常工作 但是 当我将相同的表格发布到https s3 amazonaws com https s
  • 使用 Cloudformation SAM 的 AWS::Serverless::Api 资源策略

    最近AWS宣布 是否可以将资源策略附加到通过 Cloudformation 使用 SAM 创建的 AWS Serverless Api 我还没有机会尝试这个 但我假设您可以像使用 S3 存储桶策略一样使用它 对你来说最棘手的部分是抓住api
  • Terraform - 如果在 for_each 内。我可以过滤 for_each 吗?

    通过以下内容 我可以循环遍历资源块 轻松地将路由表关联添加到 所有 子网 但是 我只需要为我的公共子网创建关联 我怎样才能使这个 if 语句起作用 或者任何其他方式来过滤each value class pub 对于这个问题 resourc
  • Amazon VPC NACL 默认规则评估顺序

    据我了解 NACL 网络访问控制列表 就是子网防火墙 我试图了解创建 NACL 时的默认值 规则 100 默认情况下允许来自所有 IP 的所有端口 否则 一切都被否定 那么 底线是 是全部允许还是全部拒绝 我知道根据 AWS 最佳实践 默认
  • 不需要 VPC 运行的 AWS 服务列表

    谷歌再次让我失败 或者可能是我的问题不太清楚 有没有一种简单的方法 或者更确切地说 我们如何确定哪些服务是 VPC 绑定的 哪些服务是非 VPC 的 例如 EC2 RDS 需要 VPC 设置 Lambda S3 是公开可用的服务 不需要 V
  • 如何随机生成文件的链接?

    我有一个 PDF 文件 我不想通过我网站上的 URL 公开访问该文件 作为 轻微 安全层 我想通过电子邮件向用户发送一个唯一的 随机生成的 URL 他们可以从中下载 PDF 我将把该 PDF 存储在 AWS 或类似的地方 我感觉自己被困在r
  • AWS ios SDK - 弹性转码器作业的 http post 请求

    查看AWS弹性转码器 有几个问题 对于我的用例来说 首先使用转码器是否具有重要价值 我正在制作一个允许用户选择视频的 ios 应用程序 当他们这样做时 我会将其上传到 S3 存储桶 据我了解 我应该使用弹性转码器对这些视频进行转码 并将它们
  • 更新AWS S3过期时间

    我想知道如何延长密钥的有效期 我指的不是访问对象的签名 URL 而是密钥本身 我将 AWS 设置为存储桶中的所有对象应在 90 天后过期的规则 在大多数情况下 这就是我希望发生的事情 有时我需要将单个密钥的使用寿命最多再延长 90 天 事实
  • 将文件从 CodeCommit 部署到 S3

    我想将推送到 CodeCommit 存储库中的某些文件部署到 S3 存储桶中 我正在尝试使用存储库上的 Lambda 触发器来执行此操作 但是 我无法获取提交中更改的文件列表 也无法使用 AWS CodeCommit API 从 CodeC
  • 使用 AWS SSO 时 AWS Java SDK 未找到配置文件

    当我使用 AWS SSO 登录时 我无法访问 aws 我使用以下方式从计算机登录 aws sso login profile staging 配置文件的配置如下 profile staging sso start url https som
  • AWS cognito身份池ABAC如何映射自定义多值属性?

    来自身份提供商的开放 ID 令牌示例 本例中为 Cognito 用户池 cognito groups testers admins email verified false 我想使用ABAC 就像这里给出的例子一样 https docs a

随机推荐