假设我有一些实体说有两个数据源...用户。 LDAP和自定义Sql数据库。 现在,在我的应用程序中,我必须根据某些“Where”条件显示从两个数据库中过滤的用户页面。
例如。 PageSize = 10; rowsDataSource1 = 100; rowsDataSource2 = 100; 显示第10页,共20页,其中User.birthdate> 2001
假设我不想在其间使用缓存层,那么实现这一目标的有效策略是什么?
编辑:当然我们需要一个层,但不一定是一个缓存层。
答案 0 :(得分:0)
如果您不希望在两个数据源之间建立统一层,则可以相互访问两个数据源,也可以使用另一个数据源的信息来丰富一个数据源。对此,我个人宁愿构建一个外观,它将组合信息作为应用程序的单一联系点返回。
答案 1 :(得分:0)
据我所知,我可以提出三种方法。
1)创建不同数据源中所有其他表的同义词,并提供对普通模式的只读访问权限,并在应用程序中创建使用该视图的视图。这有点慢。
2)其他是不同数据源的物化视图,并将其用作普通查询。
3)编写每日或每小时批处理作业,导入应用程序架构中的所有必需数据并使用它。