ApacheIgnite是否支持序列化的Avro对象?

ApacheIgnite是否支持序列化的Avro对象?,avro,ignite,gridgain,Avro,Ignite,Gridgain,我有一些Avro对象希望序列化并存储在ApacheIgnite或GridGain中 ApacheIgnite支持这种数据格式吗? 目标是在支持数据类型的情况下,根据动态请求从Avro中提取特定字段。。如果不是,解决办法是什么 谢谢。Ignite使用它自己的二进制格式: 它也允许只读特定字段。所以SQL请求将只读取您请求的特定字段。为此,您需要将avro对象转换为二进制对象,有关详细信息,请参阅org.apache.ignite.binary.BinaryObject和org.apache.ign

我有一些Avro对象希望序列化并存储在ApacheIgnite或GridGain中

ApacheIgnite支持这种数据格式吗? 目标是在支持数据类型的情况下,根据动态请求从Avro中提取特定字段。。如果不是,解决办法是什么


谢谢。

Ignite使用它自己的二进制格式:


它也允许只读特定字段。所以SQL请求将只读取您请求的特定字段。为此,您需要将avro对象转换为二进制对象,有关详细信息,请参阅org.apache.ignite.binary.BinaryObject和org.apache.ignite.binary.BinaryObjectBuilder的javadoc

这是否意味着Avro需要首先转换为Ignite二进制对象?因此,Avro不能仅仅序列化并存储在缓存中?。如果是-如何将Avro转换为该二进制对象?编写特定的类来实现这一点?该类的示例是否已经存在?谢谢。嗨,乔,这里没有这方面的设施,你需要手动从avro读取文件并将其放入二进制对象。我相信这是可以自动化的,但目前还没有这方面的设施。欢迎您为apache ignite项目提供转换器。目前的步骤是:1某人或某个系统发送Avro二进制编码消息,2我创建一个Java类来读取该二进制Avro并将其转换为一些Java对象解码原始Avro二进制,3将新的Java对象存储到ApacheIgnite缓存中,缓存可以设置为二进制,4从缓存中读取。对的如果是-这意味着我将始终需要创建一个Java类,以便读取原始Avro,然后存储数据以点燃?您可以直接从Avro对象读取字段并将其写入二进制生成器,然后构建二进制对象,该对象将保存在内存中,无需中间Java对象,速度会更快。这也意味着您不需要预先存在的java类,即使模式没有很好地定义,这也可以工作。谢谢。你有这个过程的简单例子吗?e、 g.使用二进制生成器从JSON或AVRO到缓存?