MonetDB在2个表上简单连接性能

时间:2015-04-10 22:07:14

标签: performance monetdb

假设我有两个相同行数的表。两个表都包含一个允许在它们之间进行1-1连接的列。 如果将这些表转换为一个表,从而从查询中删除JOIN语句,那么这会有什么性能优势吗?

另一个例子......假设我有10列的表格。从那张桌子我创建了新表,但只有一列。如果我发出语句选择同一列中带有WHERE谓词的一列,那么在两个表上执行此查询会有任何性能差异吗?

我想要达到的目标是,如果在上述情况下性能相同,那么可以说桌子只是将列数包装在一起的容器吗?

我确实进行了几项测试,但结果并不确定。

1 个答案:

答案 0 :(得分:3)

  

假设我有两个相同行数的表。两个表   包含一个允许在它们之间进行1-1连接的列。如果那些   表被转换为一个表而不是JOIN语句   从查询中删除,是否会有任何性能优势   是什么?

为每个查询执行该连接当然比实现表一次然后读取它更昂贵。所以是的,会有性能优势。

  

另一个例子......我们假设我有10列的表格。从   那个表我创建了新表但只占了一列。如果我发出   语句选择与WHERE谓词相同的一列   列执行此操作会有任何性能差异   查询两个表?

不,没有区别,因为表格被表示为列的集合,每个列都存储在自己的文件中。

  

我想要的是在上述情况下性能是否相同   可以说表格只是包装数量的容器   列在一起?

确实可以说是安全的。