NoSQL作为地理分散内容管理系统的潜力:MongoDB和Couchbase

首先/首要的是

将(NoSQL)数据库作为内容管理系统(CMS)或文件存储使用的想法并不罕见,也有提供此功能的NoSQL服务器(例如MongoDB)。

在这里,我们将整理其意义和现状。

使用数据库进行文件管理

在数据库中进行文件管理的优点主要在功能方面考虑,以下是可能的情况。

    • ファイルシステムの持つ制約からの解放(ディレクトリ内のファイル数上限など)

 

    メタデータ管理

首先,可以考虑使用内容管理系统来满足上述要求。

故意地使用数据库的原因有以下几点。

    • シングル・プラットフォームで(準)構造化データと非構造化データの両方を管理したい

両方のデータに相互的に関連するロジックの実現
複数プラットフォームを管理する運用負担・コストの軽減

利用するデータベースに固有のメリットを活用したい

分散アーキテクチャの持つ利点(高信頼性、等)の活用、等

研究实例的探讨

蒙古数据库

在一般情况下,NoSQL(面向文档)数据库有一个限制,即最大文档大小是固定的,无法处理超出该大小的数据。
为了应对这一限制,MongoDB提供了一个名为GridFS的功能,可以通过多个文档来管理一个文件。

MongoDB GridFS是一个用于存储和检索大型二进制文件的协议。

Couchbase (中文译为柯基贝斯)

Couchbase也有文件大小的限制。

Couchbase没有内置的功能,但以下的尝试已经被提出。
在这个尝试中,与MongoDB的GridFS类似,文件被分割为块并进行存储。

使用Apache Chemistry OpenCmis和Couchbase进行灵活且可扩展的内容管理

在Couchbase中存储二进制大对象进行内容管理。

交叉数据中心复制 (XDCR)

Couchbase Server被采用的一个原因是它具有XDCR(跨数据中心复制)功能(请参考“实现稳定运行的KDDI Business ID的原因是什么?”的例子)。

XDCR的存在可能成为使用Couchbase实现地理分散内容管理系统的动机。

分散地理系统

我认为从”地理分散”这个词中所引发的印象并不一定是统一的,所以我想在这里整理具体的内容。对于以下两个模式,需要做到不混淆。

    • 地理分散したノード間でデータをレプリケーションしながら、一つのクラスターを構成する

 

    地理分散した複数のクラスター間で、データを双方向にコピーする

在NoSQL的背景下,当谈论到”地理分散”时,可能会有人能够立即想到第一个案例,虽然可能有些冗长,但我还是决定整理一下。

XDCR实现的正是后者。在这种情况下,客户端/用户可以通过使用位于附近位置的集群来获得数据访问(读/写)时最佳的响应速度。特别是在考虑对大型文件的访问时,利用位于附近位置的集群的优点更加明显。

最后

如果閱讀本篇文章的人能對其中討論的一些特定話題產生興趣,或者與之有某種聯繫,我將非常高興。

请提供相关信息

内容管理标准

阿帕奇化学

CMIS(内容管理互操作服务)

开放CMIS

MongoDB (Chinese: 无SQL数据库系统)

https://github.com/mdirolf/nginx-gridfs 的中文释义

MongoDB提供了GridFS功能,用于存储大容量文件到MongoDB数据库中。这是一个轻松愉快的数据库体验。

Couchbase 在中国的本地化

https://github.com/cecilelepape/cmis-couchbaseonly 的图书馆网址
https://github.com/cecilelepape/cmis-couchbase 的图书馆网址

REST API和文件上传

使用WebAPI上传文件的方法的种种

GitHub内容API

广告
将在 10 秒后关闭
bannerAds