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

标签 sharepoint document couchdb blogs lotus-notes

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

可用性

检索性能

搜索性能/质量

可扩展性/集成

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

额外奖励:为什么 Lotus Notes 的文档如此难找,有什么原因吗?我会很感激一些指示。

最佳答案

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

Notes Views 用于查看 Documents 中的数据,通常过滤具有相似 Items 的 Documents。 Notes Agents、Pages 和更多工具可用于轻松地从 NSF 中获取数据。

Notes 的优势在于它可以轻松地通过表单捕获数据,并通过 View 、XML、HTML、Java Servlet 等输出数据。它通过强大的复制系统轻松管理分布式数据。它还因其内置的安全性而备受推崇。

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

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

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

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 服务器,因此它可以轻松处理其数据存储中的大量列表或文件。

搜索性能/质量:两者都具有良好的搜索功能,但如果您尝试搜索大量文档,SharePoint 更胜一筹。

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

好处:Lotus Notes 目前不如 SharePoint 受欢迎。文档的关键位置有 www.notes.net 和各种开发人员博客。

关于sharepoint - 以文档为中心的系统的基本原理是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/919419/

相关文章:

sharepoint - 如何克隆 SharePoint 列表中的项目?

Couchbase N1QL : Update on nested Documents

html - 呈现 html 文件

couchdb - bigtable,cassandra,simpledb,dynamo,couchdb,hypertable,riak和hbase,它们有什么共同点?

python - 从旧数据库复制到 Couchdb 中的新数据库

couchdb - Cloudant 是否支持 use_users_db = true 的 couch_httpd_oauth?

sharepoint - 如何在SharePoint中创建自定义文档库?

sharepoint - 如何覆盖 EditForm 中的 SharePoint 字段呈现?

javascript - SharePoint 获取当前用户帐户名?

java - 选择打印机(带对话框)打印 .xls 文件到