Database 去还是不去?
注:(我已经调查了CouchDB一段时间,需要一些实际经验) 我有一个用于车队跟踪服务的Oracle数据库,以下是一些状态:Database 去还是不去?,database,oracle,nosql,couchdb,oracle11g,Database,Oracle,Nosql,Couchdb,Oracle11g,注:(我已经调查了CouchDB一段时间,需要一些实际经验) 我有一个用于车队跟踪服务的Oracle数据库,以下是一些状态: 100 GB分贝 每秒大量插入(我们收到的消息) 可靠的复制(通过4台服务器上的Oracle streams) 繁重复杂的查询 现在的问题是:在这种情况下可以使用CouchDB吗 注:我为什么想到CouchDB 我读过关于它水平伸缩能力的文章。这对我们来说非常重要 由于它是无模式的,我们可以更恰当地处理更改,因为不同的表和存储过程中有很多更改 谢谢 编辑一: 我也需要交易
我也需要交易。但我也能容忍其他解决方案。如果复制有一点延迟,如果有保证,那就没有问题。您正在享受数据库的以下功能:
- 例如,如果您有一个灵活的策略,只需在LAN上设置它
- 如果您有严格的网络和防火墙策略,则可以在VPN后面或使用SSL证书进行设置
- 或者用更大的CouchDB集群扩展核心
- 或者,将您的数据和应用程序复制到不同的数据中心,或复制到单个工作站或移动电话等(时机成熟时,该策略将更加明显)
CouchDB为您提供了一个简单的web服务器和web站点。它为您的数据提供了一个内置的web服务API。它使构建web应用程序变得容易。因此,CouchDB似乎非常适合扩展您的核心应用程序,而不是取代它。我不同意这个答案 我认为CouchDB特别适合车队跟踪用例,因为它们是分布式的。此外,用于传输位置数据的gprs连接不可靠,这使得couchapps的离线first paradygm成为您应用程序的完美合作伙伴 对于从卡车上载数据,插入速率可以从couchdb复制和大容量插入中获得巨大优势,尤其是在基于ssd的系统上执行时 为了将数据下载到卡车,couchdb提供了过滤复制,允许每辆卡车只下载它真正需要的数据,而不是整个数据库
对于复杂的查询,NoSQL数据库更灵活,执行速度比关系数据库快得多。。这只是合理构建和查询数据的问题。您需要交易吗?您需要保证同步复制吗?感谢您的澄清。对我需要事务处理,但我可以容忍复制延迟。谢谢edze!但这只回答了一部分!解释你所说的“繁重复杂的查询”是什么意思。它们在某种程度上比关系模型更适合CouchDB模型吗?非常感谢!这比我所希望的更具信息量和价值!旁注:我们仍在寻找用开源技术(PostgreSQL或MySQL(?)取代Oracle(主要原因是成本高)。我听说Jan Lehnardt(Couchbase联合创始人,最初的Apache CouchDB提交人)称PostgreSQL为“另一个好的数据库”:)同意——PostgreSQL被低估了。与其他开源竞争对手相比,它具有更一致的特性集。