gpt4 book ai didi

mysql - 对于大型数据集,mongoDB 或 Cassandra 是否比 MySQL 更好?

转载 作者:IT老高 更新时间:2023-10-28 13:23:53 26 4
gpt4 key购买 nike

在我们的(目前是 MySQL)数据库中,有超过 1.2 亿条记录,我们经常使用 PHP 中涉及数据库的复杂 JOIN 查询和应用程序级逻辑。我们是一家营销公司,主要关注数据挖掘,因此我们有许多需要每天、每周或每月运行的大型报告。

同时,客户服务在同一数据库的复制从属设备上运行。

我们希望能够在网络上实时生成这些报告,而不必为它们手动生成电子表格。但是,我们的许多报告需要大量时间来提取数据(在某些情况下,需要一个多小时)。

我们不在云端运行,而是选择使用我们服务器机房中的两台物理服务器运行。

考虑到这一切,我们最好的数据库选择是什么?

最佳答案

我认为你在这个问题上走错路了。

认为如果你放弃 NoSQL,你会获得更好的性能,这并不是真的。在最低级别,您正在编写和检索相当大的数据 block 。这意味着您的瓶颈(很可能)是 HDD I/O(这是常见的瓶颈)。

坚持使用您暂时拥有的硬件并使用单片数据存储是不可扩展的,并且正如您所注意到的 - 在想要实时执行某些操作时会产生影响。

你有什么选择?您需要扩展您的服务器和软件设置(无论如何,这都是您对任何 NoSQL 都必须做的事情,在某些时候坚持使用更快的硬盘驱动器)。您可能还想研究替代存储引擎(MyISAM 和 InnoDB 除外 - 例如,似乎将随机 I/O 转换为顺序 I/O 的更好引擎之一是 TokuDB)。

实现更快的 HDD 子系统也有助于满足您的需求( FusionIO ,如果您有资源的话)。

如果没有关于您的更多信息(服务器设置是什么,您使用的 MySQL 版本以及您使用的存储引擎 + 数据大小),这都是猜测。

关于mysql - 对于大型数据集,mongoDB 或 Cassandra 是否比 MySQL 更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8521719/

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