46

我想让 CouchDB 作为我的移动应用程序的后端运行,取代 SQlite。

作为这项技术的新手,我一直非常困惑,因为除了 Couchbase 去年发布的所有类似的声音产品(Couchbase、Couchbase Single Server、Membase、Couchbase Mobile)之外,它们现在似乎正在放弃/合并所有这些产品进入一个项目,Couchbase Server。但是,这实际上是 Membase,而不是 CouchDB。最重要的是,CouchDB 的创建者将不再为 CouchDB 工作。然而,CouchDB 周围似乎有一个非常活跃的社区。这是我所知道的:

  1. 我知道 Couchbase 公司不再提供 CouchDB 的发行版。

  2. 据我了解,Couchbase 公司的新焦点 Couchbase Server 根本不是 CouchDB,它与 CouchDB 不兼容。它没有实现 CouchDB 使用的 HTTP api,它使用的是从 Membase 演变而来的二进制协议。

  3. 最近关于 CouchDB Mobile 的所有信息似乎都指向 Couchbase Mobile。

我的问题归结为:

是否仍然可以在 Android 设备上使用 CouchDB?特别是 CouchDB,而不是 Couchbase Server,因为 API 不兼容

如果仍然可能,我该怎么做?源代码在哪里?任何示例应用程序?

对不起,如果我的问题变得混乱。老实说,我很难在网上浏览大量看似矛盾的帖子。我只想在 Android 上运行 CouchDB!:)

4

4 回答 4

32

作为 Couchbase 的联合创始人,我应该可以给你一个更清晰的认识。我会依次回答你的问题。

1) 正确。Couchbase 服务器不是 CouchDB。它牺牲了 CouchDB 所做的一些巧妙的事情(HTTP 接口、主/主复制),因此它可以做其他巧妙的事情(亚毫秒级延迟、巨大的集群)。从长远来看,我们希望得到高回报。我们不得不放弃的功能的性能版本。目前,我们正在构建最快最可靠的 NoSQL 数据库(是的),但它无法回答与 CouchDB 相同的用例。

2)也许我刚刚回答了这个问题?有关 Couchbase 服务器的更多信息在这里: http: //www.couchbase.com/couchbase-server/overview

3) Couchbase 继续投资于移动技术。我们为 Android 和 iOS 提供了经过良好测试的实现。这些基于 Apache CouchDB,因此它们将具有您正在寻找的功能集。访问此处下载它们: http: //www.couchbase.com/wiki/display/couchbase/Couchbase+Mobile+Syncpoint(请参阅该页面上的 iOS 和 Android 链接)

展望未来,我们将专注于在设备上实际运行基于 CouchDB 的代码的轻量级替代方案。要让 CouchDB 在设备上运行,需要 Erlang 虚拟机。虽然它是轻量级的并且尊重电池寿命(对于 VM),但它仍然是一个 VM。因此,我们正在为移动设备构建更轻量级的同步和存储引擎。iOS 版 TouchDB可以与 Apache CouchDB 同步。我们也有一个类似的 Android 项目。如果我开始一个新项目,我会看看这些。

于 2012-02-20T19:59:28.483 回答
14

TouchDB 的 Android 端口https://github.com/couchbaselabs/TouchDB-Android可能很有趣:

“TouchDB 是一个轻量级的 CouchDB 兼容数据库引擎,适合嵌入到移动或桌面应用程序中。”

它不是 CouchDB 的直接替代品,而是承诺提供一个基本相同的 API,也许对您来说最重要的是它“确实支持与 CouchDB 之间的复制”。

于 2012-02-19T11:00:45.340 回答
6

TouchDB已被 Couchbase Lite Android 取代,Couchbase-Lite-Android只能用于 Honeycomb 及以上版本。

同样在 2013 年 9 月 16 日这个日期,该库处于 alpha 阶段,我认为它不会很快在生产中使用。

目前唯一的解决方案似乎是 parse.com,这当然是付费解决方案。

于 2013-09-15T20:58:44.523 回答
4

这里的答案有点过时了。

Couchbase Lite 是一个成熟的交付产品(开源),它实现了一个独立的、功能齐全的 NoSQL 数据库,用于移动、物联网和其他网络连接存在问题或需要比 Couchbase Server 更轻量级的应用。它具有广泛的平台支持。

Couchbase Lite 进行同步。它与 CouchDB 兼容。

您可以在 Couchbase 网站上找到更多信息。对于移动设备,请访问http://developer.couchbase.com/mobile

编辑:Couchbase Mobile 2.0 已经发布。这是一次重大的改写。Couchbase Lite 2.0 复制使用与 CouchDB兼容的新协议。

于 2016-11-17T19:03:01.983 回答