2

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

可用性

检索性能

搜索性能/质量

可扩展性/集成

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

额外奖励:Lotus Notes 为何很难找到相关文档?我会很感激一些指示。

4

3 回答 3

7

Lotus Notes 将所有数据存储在 NSF 文件中。NSF 文件是 Notes 文档的容器,它们是非结构化记录。每个 Document 中可以包含任意数量的 Item,类似于关系数据库的表和列。然而,与关系数据库不同的是,在数据模型级别对 Document 必须具有的 Items 没有限制,因此每个单独的 Document 内部可能包含截然不同的数据。

Notes Views 用于查看 Documents 内部的数据,通常过滤具有相似 Item 的 Documents。Notes 代理、页面和更多工具可用于轻松从 NSF 中获取数据。

Notes 的优势在于它易于通过表单捕获数据,并通过视图、XML、HTML、Java Servlet 等输出数据。它通过强大的复制系统轻松管理分布式数据。它还因其内置的安全性而受到高度吹捧。

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

Word 文档可能会在 Lotus Notes 世界中引起混乱。PDF、Word 文档、Excel 文件等文件文档作为非结构化数据的一部分存储在 Lotus Notes Documents 中。

SharePoint 将数据存储在 SQL Server 中。它的数据非常基于列表,具有在服务器上存储文件文档并维护它们的元信息的额外能力。

SharePoint 列表很像一个平面表,但与 Lotus Notes 不同的是,该列表确实对其数据有限制。

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

可用性:对于最终用户来说,两者都在这里排名靠前。SharePoint 都是基于 Web 的,最终用户无需培训即可轻松地自行管理 SharePoint 网站。Lotus Notes 需要 Notes 客户端或需要构建 Domino 应用程序以通过 Web 公开。对于开发人员来说,Notes 更容易使用,但很古怪,并且使用专有语言——Notes 公式语言和 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 和各种开发人员博客。

于 2009-05-28T13:52:19.623 回答
2

Sharepoint 完全按照您所说的去做。它建立在关系数据库之上,并提供了一些看起来有点像带有 Web 界面的文件系统的东西。此文档存储主要用于与 Office 集成,并且只是 Sharepoint 的一小部分。

基于文档的数据库系统。像 CouchDB 或 Amazon S3 是不同的野兽。它们以比关系数据库更少结构化的方式存储数据。主要以密钥-文档对的形式。您可以通过键或查询来检索文档,但由于文档的结构不统一,例如关系数据库中表中的行,查询可能会更加困难。这些数据库并不是真的要像关系数据库那样使用,它们更适合大型 Web 后端等的可扩展性。

Lotus Notes 实际上结合了这两者。您可以将它用于文档管理(以及电子邮件等等),它建立在它自己的文档数据库之上。

于 2009-05-28T06:34:54.250 回答
0

好吧,Sharepoint 将其数据/列表/文档/任何内容存储在关系数据库(SQL Server,不出所料......)中,以及元数据的“装饰”。根据谣言(我自己还没有研究过),数据模型非常复杂,您必须使用提供的 C# API 来处理数据(这可能是好事也可能是坏事,具体取决于您的偏好)和目标)。

于 2009-05-28T06:28:08.800 回答