将“......中的`id`”在性能上与常见的“where”声明相比较吗?

时间:2013-07-31 15:24:45

标签: database performance architecture

标题告诉所有人。

假设我有一个单独的类,它在某些DSL中用作查询处理器。也就是说,我在某些DSL中提供了一些查询,然后运行此查询。

此查询处理器将与我使用的任何数据库连接器库进行通信,并提取符合条件的记录的仅ID

这就是说“ID”的“集合”将被提供给将在数据库上执行实际ORM的类,并从具有此ID的记录构造域对象。

这样我就不需要将查询解析功能包含在我的ORM机制中了,它只有一个完全愚蠢的方法来获取其ID的记录。

作为补充,让我们假设我可以想象所有类型的缓存,从网页缓存到DBMS查询缓存。

与传统构建(SQL或可能是MongoDB样式)查询并直接在数据库上运行相比,此方案的性能是否会非常糟糕?

我已经明白,所有这些都需要每次获取操作两次查询,而不是一次。我的问题是差异的大小。

我的总体目标是将界面分开,以便从这些查询获得的实际对象的界面进行查询。例如,Yii的CActiveRecord失败了,是三个不同职责合并在一起的组合。

0 个答案:

没有答案