Java XDB可以存储序列化对象吗?

Java XDB可以存储序列化对象吗?,java,serialization,influxdb,Java,Serialization,Influxdb,当前正在评估InfluxDB,并希望了解是否可以从InfluxDB存储/检索序列化对象(例如,使用Java),以及该过程是什么?根据,此数据库支持以下类型的值: 值可以是64位整数、64位浮点、字符串和布尔值 您可以将Java对象序列化为字节流;字节流可以表示为十六进制字符串 因此,理论上答案是肯定的——应该可以在这个数据库中存储序列化的Java对象。回过头来看,你只需颠倒这个过程 如果这是个好主意,那就完全不同了。这听起来相当低效;存储序列化的对象本身并不是一个好主意。首先,这是一个很大的迂回

当前正在评估InfluxDB,并希望了解是否可以从InfluxDB存储/检索序列化对象(例如,使用Java),以及该过程是什么?

根据,此数据库支持以下类型的值:

值可以是64位整数、64位浮点、字符串和布尔值

您可以将Java对象序列化为字节流;字节流可以表示为十六进制字符串

因此,理论上答案是肯定的——应该可以在这个数据库中存储序列化的Java对象。回过头来看,你只需颠倒这个过程

如果这是个好主意,那就完全不同了。这听起来相当低效;存储序列化的对象本身并不是一个好主意。首先,这是一个很大的迂回——将一个对象转换成一个字节流,再转换成一个十六进制字符串(并将其反转)。然后:java对象序列化本身就是一个怪兽——例如,您必须小心不要引入版本不兼容。当您发布Java代码的新版本,并且当您尝试对以前存储的对象进行反序列化时,该代码会引发异常时,这真的很烦人


因此,更现代的方法更喜欢序列化为不同的格式(例如JSON),或者使用工具将字段直接转换为不同的表列。

Great,我们的想法是一样的-理论上有一种方法可以将序列化对象存储到其他字段(例如字符串字段)。。我对序列化的所有优点/缺点都没有经验(我的团队正在使用它)——为什么通常不是一个好主意?还有什么更好的方法?谢谢。我更新了我的答案。但是为了给出一个“这会更好”的方法,你可能应该加强你的问题。比如:要序列化哪种类型的对象?需要存储哪些数据等。请看:似乎没有多少其他数据输入;所以以防我的回答足够有用;请考虑接受…