问题标签 [avro-tools]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
hadoop - 使用 avro-tools 连接 Avro 文件
我试图将 avro 文件合并到一个大文件中,问题是concat
命令不接受通配符
我得到:
线程“主”java.io.FileNotFoundException 中的异常:文件不存在:/input/part*
我尝试使用""
但''
没有机会。
hive - 执行错误,从 org.apache.hadoop.hive.ql.exec.DDLTask 返回代码 1。无法验证 serde:org.apache.hadoop.hive.serde2.avro.AvroSerde
我正在创建一个avro serde
用于存储 twitter 数据的配置单元表。
这是代码-
我收到错误-
我已经尝试将 avsc 文件的输入作为
在本地和 hdfs 文件系统中,我都遇到了同样的错误。
apache-kafka - 为侦听多个事件的 Kafka 主题编写 Avro IDL 的正确方法是什么?
我们计划在 Kafka 中使用单个主题,我们将在其中发布与域相关的事件。IDL 定义类似于:
所以我们有一个单一的渠道和多种类型的流经该渠道。所有编码都是使用SpecificRecordBase
派生类完成的。
我认为现在我们有几个选择:
- 使用其关联的模式对每条消息进行编码。缺点是我们为每条消息引入了开销。
- 在 IDL 定义中创建联合类型
KafkaTopicMessage
并发送不带模式的消息。然后我不知道使用旧模式编译的客户端会发生什么。希望没有错,但是联合中的这种额外包装对我来说似乎不自然,但在这种情况下它可能是正确的。 - 让客户选择他们感兴趣的几个模式并在消费者端创建联合模式。生产者将发送没有任何联合的普通模式。我什至不知道这是否可行。
所以问题是,将 Avro 编码与 Kafka 主题消息结合使用时的常见模式是什么?
avro - 使用 AVRO 对字段进行数据转换
我是 AVRO 的新手。我们已经开始使用 AVRO 模式来读取数据。
现在我们有一个用例,我需要在读取时截断数据。
假设我的 avro schcema 是这样的
现在数据是这样的。
当我读取数据时,我想截断 ProductID 字段。在上面的示例中,当我读取 ProductID 是 ABC1234567 时,我想将其截断为 5 个字符 ABC12
我可以在模式中指定任何东西来截断它吗?
python-3.x - AvroTypeException:在 python3 中编写时
我的avsc文件如下:
我能够解析这个,但是当我尝试如下写这个时,我一直遇到问题。我错过了什么?这是在python3中。我验证它也是格式正确的 json。
我在这里想念什么?
json - Avro Schema 格式异常 - “记录”不是定义的名称
我正在尝试使用这个 avro shcema
使用 avro-tools 生成和 avro 文件:
但我收到以下错误消息:
线程“main”org.apache.avro.SchemaParseException 中的异常:“record”不是定义的名称。"customerContacts" 字段的类型必须是定义的名称或 {"type": ...} 表达式。
谁能告诉我为什么记录没有被识别为定义的名称?
python - 如何使用 Python Avro api 将 JSON 解析为二进制 Avro 文件?
我可以使用 avro-tools-1.7.7.jar 获取 json 数据和 avro 模式并输出二进制 Avro 文件,如下所示https://github.com/miguno/avro-cli-examples#json-to -avro。但是,我希望能够使用 Avro python api 以编程方式执行此操作:https ://avro.apache.org/docs/1.7.7/gettingstartedpython.html 。
在他们的示例中,他们展示了如何一次将记录写入二进制 avro 文件。
我的用例是一次写入所有记录,就像 avro-tools jar 从 json 文件中所做的那样,只是在 python 代码中。我不想掏空并执行 jar。如果这很重要,这将被部署到 Google App Engine。
avro - 此 avro 消息有效吗?
我有一些来自 kafka 提供程序的示例 Avro 消息,看起来像这样开始:
我ef bf bd 24
希望是 2332 字节的模式长度。我无法确认 zigzag varint (为什么永远不会是负数的长度是 zigzaged 的?)是正确的值。我认为它在 200K 范围内。
我相信这就是为什么我在使用 avro-tools jar 来 getmeta、getschema 或转换为 json 时遇到问题的原因。
对于 1.8.2 的 Avro Tools 版本或该工具版本的带有 java 1.8.0_102-b14 的平台 Mac OS,这是一个特定的已知问题吗?
这看起来像是被错误编码了吗?因为所有使用这些工具的调用都给了我:
java - 如何从 Java 中的 avro 文件中提取模式
如何首先提取模式,然后从 Java 的 avro 文件中提取数据?与此问题相同,但在 java 中除外。
我已经看到了如何从 avsc 文件而不是 avro 文件获取架构的示例。我应该往哪个方向看?