【发布时间】:2014-06-23 22:43:10
【问题描述】:
我查看了关于哈希表的维基百科文章,但它似乎没有说明如何实现一个哈希表,该哈希表可以将任意 SQL 数据类型的条目均匀地分配到 n 个存储桶中。
谁能指点我有关该主题的文档或现有源代码的方向?
【问题讨论】:
-
您是在问一般如何实现散列函数?
ora_hash哈希函数具体是如何实现的?如何构建哈希表(使用哈希函数的数据结构)?或者只是如何在 SQL 查询中将数据分成桶? -
ora_hash 函数具体是如何实现的,最好是某种伪代码/代码,但抽象描述也可以
-
我不相信 Oracle 曾经记录过他们使用的算法。它与
dbms_utility.get_hash_value使用的算法相同,但我不相信他们在那里记录了内部算法。 -
您是否知道任何类似的文档实现,或者了解如何实现此类哈希的起点?
-
ora_hash也没有。目标是均匀分布。但这不是保证。但是,如果您传递了足够多的不同值,那么任何模糊合理的散列算法都应该允许您将数据基本上均匀地分布在 n 个存储桶中。