我读到 MonetDB 会自动为各种表列创建索引,并且这些索引的类型是哈希。
MonetDB 后来也增加了“有序索引”,可以明确定义。我认为这个更适合范围扫描,例如给我 ID 低于 10" 的所有行。
但我也想知道 MonetDB 的有序索引是否更适合大型连接。例如。假设我有一个名为
Post
的表,其中包含一个post_id
列(int)和一个title
列(文本),第二个名为Author
的表,包含一个author_id
(int)和一个 name
列(文本),然后是最后的第三个表 PostAuthor
,它将 post_id
s 映射到 author_ids
。如果我想要一个帖子标题和作者姓名的列表,我可以使用select title, name from post natural join post_author natural join author
.
我很好奇在这种情况下是有序索引还是哈希索引更合适,以加快查询速度。