应如何格式化记录以将 AWS Kinesis Firehose 转换为 Redshift?

2024-05-30

考虑以下:

  • Redshift 中名为“people”的表,其中包含字段 id、姓名和年龄
  • 名为“people”的 kinesis firehose 流,配置为写入“people”表,“Redshift 表列”的值为“id、name、age”

目前尚不清楚如何格式化“数据”blob。下面是代码的示例,其中数据由制表符分隔:

let AWS = require('aws-sdk');
let firehose = new AWS.Firehose();
let params = {
  DeliveryStreamName: 'people',
  // id,name,age
  Records: [{Data: '4ccf6d3a-acdf-11e5-ad54-28cfe91fa8f1\tBob\tSmith'}]
};
firehose.putRecordBatch(params, (err, result) => {
  console.log(err || result);
});

以下是我检查过的一些文档:

  • http://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html http://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html
  • http://docs.aws.amazon.com/firehose/latest/dev/writing-with-sdk.html http://docs.aws.amazon.com/firehose/latest/dev/writing-with-sdk.html
  • http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Firehose.html#putRecordBatch-property http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Firehose.html#putRecordBatch-property

答案在这里:

http://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-format.html http://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-format.html

字段需要是管道“|”默认分开。行应该用新行分隔。

更新更正的代码:

let AWS = require('aws-sdk');
let firehose = new AWS.Firehose();
let params = {
  DeliveryStreamName: 'people',
  // id,name,age
  Records: [{Data: '4ccf6d3a-acdf-11e5-ad54-28cfe91fa8f1|Bob|Smith\n'}]
};
firehose.putRecordBatch(params, (err, result) => {
  console.log(err || result);
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

应如何格式化记录以将 AWS Kinesis Firehose 转换为 Redshift? 的相关文章

随机推荐

  • 如何实现可变虚拟成员函数

    所以我有这个功能 virtual void CallRemoteFunction const char pServerGameObjectId const char pFunctionName OVariant arg1 OVariant
  • PySpark - RDD 到 JSON

    我有一个 Hive 查询返回以下格式的数据 ip category score 1 2 3 4 X 5 10 10 10 10 A 2 1 2 3 4 Y 2 12 12 12 12 G 10 1 2 3 4 Z 9 10 10 10 10
  • 如何发现另一个应用程序的意图

    我正在尝试构建一个应用程序来接收来自 StumbleUpon 应用程序的共享 此时 我可以接收浏览器的 共享网址 但是当从 StumbleUpon 共享时 我的应用程序不会显示在列表中 我想我可能没有在清单中注册正确的意图 有什么方法可以找
  • python os.fork 使用相同的 python 解释器吗?

    据我所知 Python 中的线程使用相同的 Python 解释器实例 我的问题是与创建的流程相同os fork 或者每个进程创建的os fork有自己的翻译吗 每当你 fork 时 整个 Python 进程都会在内存中复制 包括Python
  • Visual Studio 2008 类图设计器

    我正在使用 VS 类图设计器 如何得到下图中的蓝线 谢谢 source microsoft com https msdn microsoft com en us library Aa288743 clssdsgnr fig01big 28e
  • 如何在 prestashop 模块中添加 javascript

    是否可以将 javascript 集成到模块中而不直接注入 smarty 模板中 Solved 我在模块目录中添加了一个 Js 文件 例如 mymodule views js abo front js 在我的模块类中 我创建了一个指向标头的
  • 输入字段名称以数字开头

    我有一个输入字段 其名称是 MD5 字符串 例如
  • WPF 缩放变换和 ScrollViewer - 缩放时无法滚动超出原始大小

    我在 ScrollViewer 中有一个 StackPanel 我有一个滑块 可以在堆栈面板上进行缩放变换 以允许放大和缩小功能 问题是 当我放大时 滚动查看器不会将内容视为 更大 因此 如果我滚动一点并尽可能向右滚动 它会在我到达内容末尾
  • 为什么 cuCtxCreate 返回旧上下文?

    我已经安装了 CUDA SDK 4 2 64 CUDA工具包4 2 64 CUDA 驱动程序 4 2 64 我检查了 windows 中的每个 nvcuda dll 所有这些都是 4 2 版本 但是当我使用驱动程序 api 创建上下文并使用
  • 如何使用特定选项卡启动活动?

    我已经浏览了许多示例 问题和教程 但我从未见过使用特定选项卡启动活动 启动新意图 我知道可以使用 setCurrentTab切换到选项卡 但这只能从父活动选项卡内部完成 从另一个活动启动一个活动中包含的特定选项卡怎么样 是否可以 如果是这样
  • 在 Windows 上静默安装 Qt55 Enterprise

    编辑 在 Qt 支持的帮助下 我已经解决了如何自动化 Qt 企业安装程序的这两个部分 下面是脚本调用 我正在尝试在 Windows 8 1 和 Windows 10 上静默安装 Qt 5 5 1 Enterprise 使用 script 开
  • 如何更改标签栏图标颜色从默认蓝色?

    我有四个标签 我能够将选项卡图标颜色从默认的蓝色更改为红色 或可能任何颜色 并且效果非常好 问题是它仅适用于三个选项卡项目 最后一个选项卡默认为蓝色 下面是代码 我正在编码这个rootviewcontrollerAppDelegate m您
  • Math.Sin、Math.Cos 和 Math.Tan 精度以及正确显示它们的方法

    我正在用 C 编写一个计算器 textBoxResult是一个文本框 我在其中显示数字 recount是以度为单位获取角度并以弧度为单位返回的函数 我的角度是从texBoxInput public double recount int nu
  • 为什么Windsor只能拦截虚方法或接口方法?

    我正在阅读文档 发现如果不使用接口 那么 Windsor 只能拦截虚拟方法 这是 Windsor 的限制还是 C 语言的限制 我正在寻找深入的答案 C 语言在这里完全无关 问题是拦截在运行时级别如何工作 一种技术是从类继承 实现接口并将其用
  • Firefox 上的 jquery 焦点未设置

    我想将焦点设置到我的文本区域 以下是我的代码 this textInput val show focus 但它不起作用 实际上 当我按下鼠标按钮时 它会出现 但是当我松开鼠标时 它会从文本区域中删除 因此 经过大量搜索后 我发现 setTi
  • 如何更改AWS ECS集群中的实例类型?

    我在 AWS EC2 容器服务中有一个集群 设置完毕后 我使用了 t2 micro 实例 因为这些实例足以进行开发 现在我想使用更强大的实例 例如 m4 large 我想知道是否可以仅更改实例类型 这样我就不需要重新创建整个集群 我找不到如
  • Java 空值检查

    我有一个thread1 if object null object play 和另一个thread2可以写null into object随时参考 我将同时运行这些线程 我知道thread2可以重写object后参考null检查并会抛出Nu
  • Plone 内网工作流程和组权限

    现在 当然 这可能是由于对 Plone 中的角色 权限模型的误解 因为它与我过去使用过的许多系统略有不同 但这就是情况和我陷入困境的地方 客户需要一个仅对登录用户开放的 Plone 站点 4 3 3 并且可以选择使所选内容对未登录用户可见
  • 使用最新值进行采样

    考虑以下系列 created at 2014 01 27 21 50 05 040961 80000 00 2014 03 12 18 46 45 517968 79900 00 2014 09 05 20 54 17 991260 636
  • 应如何格式化记录以将 AWS Kinesis Firehose 转换为 Redshift?

    考虑以下 Redshift 中名为 people 的表 其中包含字段 id 姓名和年龄 名为 people 的 kinesis firehose 流 配置为写入 people 表 Redshift 表列 的值为 id name age 目前