1、 如果将10T的数据放在一个Objectstore中,检索速率很慢,应该如何操作提高FileNet系统的检索速率?
答:在FileNet中,对文档定义生命周期策略,当文档过期后,自动移动到下一个ObjectStore,可以只检索当前频繁使用的文档,可以提高检索速率。
2、 FileNet可以应用于哪些领域,包括潜在的使用领域?
答:住房公积金、司法局、远东租赁物流行业、核电、电力等,FileNet主要解决了纸质文档传输速率慢的问题,通过在线流程审计处理,可以大大提高办公效率。
3、 FileNet中是存储真实的实体,还是存储索引?
答:存储索引
4、 FileNet中CheckOut的Type类型Collaborative与Exclusive的区别是什么?
Collaborative是协作,可以有多人进行CheckOut操作,便于合作开发,但是很容易发生版本冲突。而Exclusive在一个用户进行CheckOut之后,不允许其它用户进行CheckOut操作。
5、 软件开发创建类的原则是什么?
答:类的创建通常是根据业务或者功能进行分包,可以按照;业务分层的方式建立包,这是比较常用的方式。比如共用类放在Util包中,异常类放在Exception包中,核心类放在Core包中。
6、 FileNet为什么使用类来管理数据,而不使用属性字段保存数据?
类可以继承、具有扩展性。如果需求发生变化时,用属性字段(表)会对所有的数据进行批量操作,系统的可扩展性大大降低。
7、 LDAP的作用是什么?
LDAP是轻量级目录访问协议,它以树形的方式存储目录,查询效率高。使用LDAP便于对用户进行管理。比如IBM下有40W人,其下的员工都是以LDAP方式进行存储的,这样每个用户与其上一级的用户没有任何交互,进行删除等操作不会影响其它用户。
8、 使用Static的定义变量的作用是什么?
共用一个指,保证值的唯一性。
9、 FetchInstance与getInstance的区别是什么?
FetchInstance需要与服务器进行交互,每一次取得数据,都需要与服务器建立连接
getInstance从本地(缓存)中取得数据,不与服务器进行交互,性能更好。
10、创建Document时,是否选中Reference的作用是什么?
选中Reference时,创建的对象只是在原来的文档存储位置上,加一个link,内容存储在本地,并不提交到ObjectStore中。
11、sqlObject.setMaxRecords的作用是什么?
因为用户并不需要知道所有检索的内容,对于所有的检索结果来说,很多内容都是无用的,将全部结果集检索出来,会降低系统的性能。设置setMaxRecords可以提高业务的响应速率,在SQL Server 2008企业管理器中已经使用这种方案。
12、复合查询应该注意哪些事项,应该如何提高复合查询的性能?
--应该根据查询的字段建立索引以及联合索引
--查询的字段应该与索引完全匹配上
--应该尽量少用In,not in,而采用exist和not exist进行代替
--查询条件嵌套不要太多,应该将嵌套改为from a ,b ,c
--在like模糊查询中,应该避免首位为%
--应该将相关子查询改为非相关子查询
--在查询的首个中应该过滤掉最多的记录数,过滤内容多的条件写在第一位(Oracle应该写在最后一位)
--应该使用左关联来提高系统的性能
--where conditions应该比较简单
--应该避免使用Select *,应该写明具体要取出的字段
--在检索时,应该加上IsCurrentVersion,只查询当前版本内容,所有的开发人员都在使用的文档。
13、AuditDefinition.set_AuditSuccess(Boolean.valueOf(true))的作用是什么?
一般来说,对于经常使用的操作来说,只对于那些失败的操作进行审计,对于成功的操作过滤掉,也可以对成功的操作进行审计。
14、为什么使用批量操作?
--事务需要
--减少重复性的操作,比如用户导入数据,需要针对每一个表进行导入,批量操作可以减少重复的操作
--减少与数据库的连接,提高系统的性能。