在我开始编写代码来处理这个问题之前,我想要一个关于什么是最佳方法的反馈。
这个问题背后的背景是我想为C#对象创建某种存储,以防程序崩溃和数据丢失。
我想将SERIALIZED对象存储到数据库中,然后能够从ODP.NET中查询它,并成功地将其反序列化并将其转换为同一个对象。
顺便说一下,序列化对象的数据在序列化后大约为50 MEGABYTES。
用法:每天都会存储一个序列化对象,每天最多可检索10次。
我的问题是,如果有人以前做过这件事;
让我知道你们的想法!
谢谢!
如果您的对象主要是文本,那么在序列化数据之后(假设所有属性都可以序列化,可以使用XML或JSON),我建议将数据压缩为字节数组并将其存储为二进制数据。当你检索它时,你只需解压缩然后反序列化它。文本拉得非常好,特别是XML,所以你可以将50MB降低到10MB或更低。
根据你的评论,压缩绝对是值得的。如果你每天只增加10MB左右,听起来它不会对你的数据库产生负面影响 - 每年只需几GB。