有没有可能使用对象的filter替代传统的数据库查询

08-12-03 power1128
    

现在的应用有很多这样的场景,就是通过查询另外一个系统,得到一个本系统的主键列表。这样如果查询条件包含两个系统的字段,那么查询很费劲,因为两个系统是分开设计的。那么有没有这种可能,利用对象来实现以前通过查询数据库才能完成的查询操作。比如对象A的一个属性name,为string类型,如果name.contain(queryName),则把该对象加入到查询结果中,否则不加入。这是我的想法,现在有这么做的吗?这种做法有什么问题?

    

IceQi
2008-12-03 21:36

首先没有确切的明白你的问。

你的出发点错了,对象不是偶和数据的容器,如果这样的使用在稍微复杂的环境下恐怕会出问题的。

power1128
2008-12-04 09:14

那我这么说吧:比如在一个页面上,有3个查询条件,有没有可能查询条件不使用sql实现,即我把该类所有的实例加载进来,通过对象遍历,符合查询条件的加入到结果列表。

banq
2008-12-08 18:30

可以啊,不要以为这样性能低,那是你的思路不对,使用开源并行hadoop,Yahoo小组已经打破有史以来计算机语言数据排序的最快纪录。

power1128
2008-12-08 21:51

恩,我也是这么想的,我觉得缓存加上您所说的hadoop,速度肯定没有问题。因为我现在用到了JBPM,它只能取到某个人的所有任务列表,如果你要对这些任务加些过滤条件,使用sql非常不方便。而且我觉得JBPM的对象化做的不错,完全应该充分利用对象缓存来实现我的需求。因为以前没用过,所以特地上来问一下。多谢banq大哥解惑,我下来试一下,顺便看看您推荐的hadoop是个什么样的东西。