首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从mysql迁移到couchbase。这是个好主意吗?

从mysql迁移到couchbase。这是个好主意吗?
EN

Stack Overflow用户
提问于 2019-03-13 00:50:59
回答 2查看 0关注 0票数 0

目前我们正在使用MySQL数据库。数据库大小约为45 GB,并且不断增长。

  1. 每秒大约有4000个数据被写入数据库。
  2. 同时,几个用户从数据库中获取数据。这意味着读取和写入将持续在数据库中进行。

我们正在考虑使用couchbase迁移到NoSQL技术。我不是数据库专家,在我进一步思考之前,我几乎没有问题

  1. NoSQL技术在速度,性能和灵活性方面是否可行,当数据库大小太大且每秒读取和写入次数过多时?
  2. 谁不应该使用Couchbase?
  3. 我们还使用Erlang,它每秒将数千条记录写入数据库。Erlang是否支持NoSQL Couchbase?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2019-03-13 09:02:14

Couchbase员工在这里,

1 - 就写入吞吐量而言,考虑到couchbase的体系结构以及如何自动分片/分发数据,可以轻松实现此性能。考虑到数据库可以扩展到单个集群中的数百个节点(理论上为1024个节点),数据的大小也应该不是问题,但即使是最大的客户端也拥有少于100个节点的集群。

如果您通过其密钥获取数据,CB将作为键值存储工作,区别在于默认情况下写入是异步的,并且它顶部还有一个托管缓存(您甚至可以使用CB作为托管缓存btw ),所以如果你不得不一遍又一遍地读取相同的数据,那么这些数据将自动保留在缓存中。

如果需要大量查询数据,只需向集群添加更多索引/查询节点并创建一些索引即可。

2 - 在这个确切的时刻(可能会在不久的将来发生变化),如果您需要在单个事务中更新多个文档,RDBM仍然是一个更好的解决方案。但是,文档更新是原子的,由于您在文档存储中建模数据的方式,您可能根本不需要事务。

3 - 尽管CB的某些模块是用erlang编写的,但我们还没有Erlang SDK(https://docs.couchbase.com/server/6.0/sdk/overview.html)。但是,由于CB本身被设计为具有反应性,因此如果您确实需要获得最大吞吐量,您仍然可以使用node或java进行反应性写入/读取。

我还没有提到其他一些细节,但如果您有任何其他问题,请随时给我打电话。

票数 0
EN

Stack Overflow用户

发布于 2019-03-13 10:35:39

选择使用SQL vs NoSQL vs Graph ..这是第一步。您的数据如何根据数据之间的关系进行组织。如果你需要对象之间的关系使用SQL / Graph DB,如果你需要的只是一个对象使用NoSQL。

如果你选择使用NoSQL,有很多选择。使用Erlang我使用过CouchDB和Elastic Search,但你可以选择MangoDB,Raik或其他东西。要考虑的最重要的事情是如何访问数据,清除/删除大量数据的容易程度(CouchDB是不行的),你需要ACID或最终一致性......

有时我使用MySQL并只在其中一个字段中存储json,它比将所有内容存储在字段中或使用两个数据库(一个用于相关数据,另一个用于json)更好。

Erlang将与任何数据库一起使用,只需弄清楚您的要求是什么。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100006447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档