文件名称:compressible-map:已弃用。 可以压缩其值的 Clojure 持久映射
文件大小:15KB
文件格式:ZIP
更新时间:2024-07-05 23:19:50
Clojure
已弃用的可压缩地图 这是一种尝试在 Clojure 中编写我自己的数据结构并探索在 Cloujre 中作为持久数据结构底层的集合 SPI 的有趣方式。 最终我意识到我最初的需求集是相互不一致的。 的值的压缩状态是可压缩映射的值的一部分。 除非我们在每次访问时都解压缩,否则无法对客户端完全隐藏这一点。 功能更新需要值读取,这与保留值压缩和缓冲写入操作的要求不兼容。 压缩值使得无法完全支持持久数据结构作为值,因为随着时间的推移变化的连续性被序列化特定的压缩状态所中断。 这里真正需要的是在压缩的内存 KV 存储前面的缓存。 如果希望批量写入,那么我们应该记录更新操作列表并按顺序应用它们,而不是缓冲一组值。 由于最初的用例是支持具有分层键的内存中 KV 存储,我们应该考虑一种更传统的方案,将索引树保存在内存中并压缩块中的值。 设计 可压缩地图 实现一个可以压缩其内容的持久映射。 在功
【文件预览】:
compressible-map-master
----.gitignore(84B)
----src()
--------compressible_map()
----LICENSE(11KB)
----doc()
--------intro.md(114B)
----README.md(6KB)
----test()
--------compressible_map()
----project.clj(378B)