朱迪矩阵

✍ dations ◷ 2025-02-23 14:23:00 #数据结构

朱迪矩阵(Judy array)是一个计算机科学和软件工程学中的名词,是一种高性能、低内存消耗的数据结构,实现了关联数组的功能。与普通数组不同,Judy array可以是稀疏的,这一点更像是散列表,而非数组。Judy array可以用整形或字符串作为键值来存储、查询数据,它最大的优势是可动态自动扩展,高性能,节省内存并且易于使用。

由于Judy array在操作速度和内存使用上都非常高效,同时并不需要特殊配置或初始化,使得它可以用来替换掉多种常见数据结构,例如跳跃列表,链表,二叉树,B树,散列表,而且judy array在海量数据集上的表现比那些数据结构更好。

粗略地讲,Judy array像是一个高度优化了的256叉树,为了节省内存,它使用了超过20种不同的压缩技术来压缩树节点。.

Judy array 是Douglas Baskins发明的,他用自己妹妹的名字命名了这种数据结构。

容量、用量、密度 这三个概念是传统树形结构中很少使用,但在Judy array中反复使用的。这个的概念的定义如下:

Judy array是没有容量限制的,所以也不用事先分配好存储空间,它可以根据用量动态决定生长或收缩内存使用,来支撑海量数据存储。其存储能力仅受到计算机内存容量的限制。 Judy array的内存用量与其存储的数据用量基本呈线性关系。

Judy array在设计上就力争保持尽可能高的CPU缓存命中率,为了达到这个目标,其内部算法十分复杂。由于有了这些针对性的优化,使得Judy array在运行速度上十分高效,有时甚至超过散列表,尤其是在处理大数据集的时候。由于Judy array是依托树 (数据结构)形结构设计的,其内存消耗比散列表小很多,同样是拜树形结构所赐,使得它可以完成键值的顺序遍历,这一点在散列表中是不可能的。

从Judy array的发明者所撰写的简介以及其他一些相关的中文论文中看,设计中使用了多种的压缩思想与压缩算法,根据不同的密度情况,选择不同的压缩方式,以期尽可能节省内存,降低实际存储中的稀疏情况,我猜测,这能够在缓存命中率上带来不少提升,进而提升效率。

看到的算法思路包括:

相关

  • VIIAbr /17固体、 液体、 气体卤素是指在元素周期表中同属第17族(旧称ⅦA族)的六个元素:氟(F)、氯(Cl)、溴(Br)、碘(I)、砹(At)、(Ts),其中砹和具有极高的放射性,且属于人造元素。卤素是一类化学性质非
  • 杜布纳联合原子核研究所杜布纳联合原子核研究所(俄语:объединённый институт ядерных исследований, 俄语:ОИЯИ),位于俄罗斯莫斯科州杜布纳市(莫斯科以北11
  • 羽扇豆醇(1R,2R,5R,8R,9R,10R,13R,14R,17S,19R)-1,2,5,14,18,18-六甲基-8-(1-甲基乙烯基)五环-17-二十一醇羽扇豆醇(英语:Lupeol)是一种具有药理学活性的羽扇豆烷型三萜类物质,有潜在的
  • Microsoft SilverlightMicrosoft Silverlight是微软所发展的Web前端应用程序开发解决方案,是微软丰富型互联网应用程序(Rich Internet Application)策略的主要应用程序开发平台之一,以浏览器的外挂组
  • 横井裕横井裕(1955年1月10日-)是一名日本知名外交官,现任日本国驻华大使。富山县富山市出身。富山县立富山中部高等学校(日语:富山県立富山中部高等学校)毕业。1978年10月、外务公务员采
  • 靖宇县靖宇县是吉林省白山市下辖的一个县。清光绪三十四年(1908年)始设濛江州,江州治,隶属吉林副都统管辖。民国初年,全国废州,1913年改为濛江县,隶属吉林省吉长道。1931年,九一八事变后,为
  • 桑植县桑植县位于中国湖南省西北部,是张家界市下辖的一个县。国内生产总值329,043万元(2009年)。面积3465平方千米,人口456,958人(2009年)。该县主要资源为天然气、铁矿、煤炭、硅石和水
  • 舌蝇属23舌蝇属(属名:,即采采蝇,来自英语:Tsetse /ˈsiːtsi/,美国 /ˈtsiːtsi/, 或 英国 /ˈtsɛtsi/)是双翅目舌蝇科(Glossinidae)下唯一的一个属,其下的蝇广泛分布于从撒哈拉沙漠到喀拉哈
  • 本尼克·阿弗比本尼克·阿弗比(英语:Benik Afobe,1993年2月12日-)是一名刚果裔英格兰足球运动员,司职前锋,出身阿森纳青训系统,现时效力英冠球队布里斯托尔城。阿弗比在周日联赛踢球时被英格兰足球
  • 仓敷常春藤广场仓敷常春藤广场(日语:倉敷アイビースクエア,)是位于日本冈山县仓敷市的一座以酒店为中心的综合观光设施。仓敷常春藤广场曾是江户幕府的代官所办公地点。1889年,仓敷纺绩在此地修