【问题标题】:Pros/Cons of incorporating multiple database types into same project将多种数据库类型合并到同一个项目中的优点/缺点
【发布时间】:2021-06-05 04:04:52
【问题描述】:

我开始着手我的第一个在线项目,我计划需要扩展,因此我选择了 NoSQL 数据库。对此进行一些阅读并对我的查询进行建模,并且我正在考虑两个数据库。 Cassandra 似乎是按关键字查找项目的正确选择,但 MongoDB 听起来是最初输入数据的正确选择,因为它可以以文档形式保留帐户结构。

这个拆分决定让我想知道:是否有任何大公司使用多种数据库类型来存储不同的项目,就像同时使用 Cassandra 和 Mongo 一样?

我认为扩大规模会更困难,但额外的好处(如果有的话)值得麻烦吗?我不是这方面的专家。我希望你是。提前感谢您分享您的经验。

【问题讨论】:

    标签: database mongodb cassandra scaling


    【解决方案1】:

    Cassandra 可以处理这两种用例,因此您可以使用同一个数据库来实现您的目的。

    Stargate (https://stargate.io/) 是一个开源 API 平台,它通过 REST API、GraphQL API、文档 API 甚至原生 CQL 访问为 Cassandra 提供数据网关。

    Document API 让您可以直接在您的应用中将无模式 JSON 文档保存到 Cassandra 或从 Cassandra 中搜索。

    您可以在Astra 上免费试用,无需信用卡。只需单击几下,您就可以启动一个预先配置了 Stargate 的 Cassandra 集群,这样您就可以直接使用 Document API 并立即构建一个概念验证应用程序,而无需担心下载/安装/配置 Cassandra 集群。

    您甚至可以直接从 Astra 仪表板访问示例应用程序,这样您就可以看到 Stargate 的运行情况。有关详细信息,请参阅Using the Document API on Astra。干杯!

    【讨论】:

      【解决方案2】:

      在同一个项目中使用多种数据库技术现在有些普遍,称为“多语言持久性”。

      许多人使用这种方法来利用多个系统 - 正如您所提到的,Cassandra 适合某些东西,而其他东西(也许 MongoDB)最适合其他东西,因此使用组合可以发挥两全其美的优势。

      当您使用多种技术时,扩展、复制和支持的成本可能会更高,因为您需要这两种技术的专业知识来提供支持。

      因此,如果您确实有 Cassandra 不是一个好选择的用例,并且您有一些 Cassandra 是最佳选择的主要用例,那么是的,如果您准备好冒险,那么使用两个数据库可能是最佳选择支持两个系统。

      【讨论】:

        猜你喜欢
        • 2011-01-17
        • 1970-01-01
        • 1970-01-01
        • 2018-06-01
        • 1970-01-01
        • 2021-12-01
        • 2013-09-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多