以文档为中心的系统的基本原理是什么?

Jef*_*ang 2 sharepoint blogs couchdb document lotus-notes

我知道两个着名的以文档为中心的系统:Sharepoint服务器和Lotus Notes.必须有其他人.例如,我听说过CouchDB.主要的实施差异是什么,它们如何影响:

可用性

检索性能

搜索性能/质量

可扩展性/集成

如果您可以详细说明为什么要将这些文档存储在关系数据库中并使用适当的模式中的元数据存储来装饰它们,那么可以获得奖励.我发现很难相信这些系统与论坛和博客有很大不同,论坛和博客本身都是基于关系数据库,业务代码位于顶层.

额外奖励:Lotus Notes难以找到文档的原因是什么?我会感激一些指示.

Ken*_*isa 7

Lotus Notes将所有数据存储在NSF文件中.NSF文件是Notes文档的容器,它是非结构化记录.每个文档中可以包含任意数量的项目,类似于关系数据库的表和列的项目.但是,与关系数据库不同,数据模型级别对文档必须具有的项目没有约束,因此每个单独的文档可能包含非常不同的数据.

Notes视图用于查看Documents中的数据,通常过滤具有类似Items的Documents.Notes代理,页面和更多工具可用于轻松地从NSF中获取数据.

Notes的优势在于它易于通过Forms捕获数据,并通过Views,XML,HTML,Java Servlet等输出数据.它通过强大的复制系统轻松管理分布式数据.它的内置安全性也非常受欢迎.

CouchDB由前Iris/Lotus/IBM员工Damien Katz创建,具有许多相同的优势,没有Lotus Notes的开销和成本.

word文档可能会导致Lotus Notes世界出现混淆.诸如PDF,Word文档,Excel文件等文件文档作为非结构化数据的一部分存储在Lotus Notes文档中.

SharePoint将数据存储在SQL Server中.它的数据非常基于列表,具有在服务器上存储文件文档并在其上维护元信息的附加功能.

SharePoint列表很像平面表,但与Lotus Notes不同,该列表确实对其数据有约束.

SharePoint数据主要通过其基于Web的界面进行收集和公开,但有多种方法可以访问SharePoint API,Web服务,XML等数据,甚至可以直接从SQL服务器访问(不推荐).

可用性:对于最终用户,这里都排名很高.SharePoint是基于Web的,最终用户只需很少的培训即可轻松管理SharePoint站点.Lotus Notes需要Notes客户端,或者需要构建Domino应用程序以通过Web进行曝光.对于开发人员来说,Notes更易于使用,但是很古怪并且使用专有语言 - Notes Formula语言和LotusScript.对于某些基本工作流和站点操作,SharePoint根本不需要编码,但要获得严格控制,您需要成为.NET开发人员并且代码可能非常复杂.

检索性能:对于小型项目,Lotus Notes非常好.拥有超过10,000份文档的超大型数据库的性能往往会下降.SharePoint使用SQL Server,因此它可以轻松处理其数据存储中的大量列表或文件.

搜索性能/质量:两者都具有良好的搜索功能,但如果您尝试搜索大量文档,则SharePoint会获胜.

可扩展性/集成:SharePoint更具可扩展性.但是,两者都可以使用XML轻松地与其他系统集成.Notes还可以使用Java代理/ servlet和Web服务进行集成.SharePoint具有其Web服务API和用于集成的第三方附加组件.

奖励:目前Lotus Notes并不像SharePoint那样受欢迎.有许多文档的关键位置,如www.notes.net和各种开发人员博客.