gpt4 book ai didi

database - 使用 CouchDB 还是不使用?

转载 作者:太空狗 更新时间:2023-10-30 01:47:54 25 4
gpt4 key购买 nike

注意:(我研究CouchDB有一段时间了,需要一些实际经验)。

我有一个用于车队跟踪服务的 Oracle 数据库,这里的一些状态是:

  1. 100 GB 数据库
  2. 大量插入/秒(我们收到的消息)
  3. 可靠的复制(通过 4 台服务器上的 Oracle 流)
  4. 繁重的复杂查询。

现在的问题是:在这种情况下可以使用 CouchDB 吗?

注意:为什么我想到了 CouchDB?

  1. 我了解到它能够很好地横向扩展。这对我们来说非常重要。
  2. 由于它是无模式的,我们可以更恰本地处理更改,因为我们在不同的表和存储过程中进行了大量更改。

谢谢

编辑我:我也需要交易。但我也可以容忍其他解决方案。如果复制有一点延迟,如果有保证的话,那是没有问题的。

最佳答案

您正在享受数据库的以下功能:

  1. 在生产中使用它
  2. 数据自然是相关的(与自身相关)
  3. 巨大的插入率(无 MVCC 问题)
  4. 复杂查询
  5. 交易

这些都是切换到 CouchDB 的原因。

当然,故事并没有这么简单。我想您已经发现了许多人永远学不会的东西:复杂的问题需要复杂的解决方案。我们不能简单地更换我们的数据库并在这个月剩下的时间里休息。当然,CouchDB(和 BigCouch)支持出色的水平扩展(以及跨数据中心复制!),但成本将是重写生产应用程序。这是不对的。

那么,CouchDB 可以在哪些方面给您带来好处?

我建议您开始使用 CouchDB 应用程序增强您的应用程序。部署 CouchDB,将您的数据导入其中,然后构建非关键任务应用程序。查看最适合的位置。

对于您的项目,以下是 CouchDB 的主要优势:

  1. 这是一个小巧、简单的工具 — 您可以轻松地在工作站或服务器上进行设置
  2. 它是一个网络服务器。它非常与您的基础架构和安全策略集成。
    • 例如,如果您有灵活的策略,只需在您的 LAN 上设置即可
    • 如果您有严格的网络和防火墙政策,您可以将其设置在 VPN 后面,或使用您的 SSL 证书
  3. 完成该步骤后,现在可以非常轻松访问了。只需发出 http 或 http 请求。无论您是使用自定义工具从 Oracle 导入数据,还是使用您的网络浏览器,都是一样的。
  4. 是的! CouchDB 也是一个应用服务器!它有一个内置的管理应用程序,用于探索数据、更改配置等(如内置的 phpmyadmin)。但对您而言,值(value)在于将管理应用程序和报告构建为简单、传统的 HTML/Javascript/CSS 应用程序。您可以随心所欲地变得花哨或简单。
  5. 随着您的项目成长并变得有值(value),您可以使用复制来成长
    • 要么用更大的 CouchDB 集群扩展核心
    • 或者,将您的数据和应用程序复制到不同的数据中心,或复制到个人工作站或手机等(到时候该策略会更加明显。)

CouchDB 为您提供了一个简单 Web 服务器和网站。它为您的数据提供了一个内置 Web 服务 API。它使构建 Web 应用程序变得容易。因此,CouchDB 似乎非常适合扩展您的核心应用程序,而不是替换它。

关于database - 使用 CouchDB 还是不使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9972889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com