C#/ F#如何压缩/解压缩大字符串以二进制形式存储在SQL Server中

时间:2019-01-06 23:16:55

标签: c# sql-server f# compression

我有一些由原始类型/数组/列表/记录/ DU组成的相对较大的F#结构,但没有类。这些结构是流动的,因此创建与它们匹配的表将承担很高的维护成本。从JSON序列化/反序列化的过程就像魔术一样。

不幸的是,生成的JSON字符串可能大到25-250 MB,因此我想先压缩它们,然后再存储在SQL Server数据库中。这实际上是一个归档系统,因此性能不是问题,查找也不是问题,使用文件系统作为存储将带来其自身的混乱,我想避免这种情况。

我可以将SQL Server数据库扩展到最大。另一方面,由于其他一些问题,基于SQL Server的压缩在这种情况下无法发挥任何作用。

我需要的是:获取一个内存中的字符串(大约25-250MB JSON)->将其压缩为二进制格式(而不是网络上各种答案中讨论的GZipped base 64格式!)->存储在SQL Server varbinary(max)列中,然后可以一直执行。我期待的是类似JsonConvert.SerializeObject / JsonConvert.DeserializeObject的东西。不幸的是,在网络上搜索没有产生任何一线结果。我将不胜感激任何建议。

0 个答案:

没有答案