gpt4 book ai didi

mysql - 大数据或关系数据库(如 MySQL 集群)?

转载 作者:行者123 更新时间:2023-12-01 00:20:38 25 4
gpt4 key购买 nike

我将在我的项目中处理大量数据。我读过有关大数据的概念,但从未使用过。但是阅读所有这些大数据文档,我仍然不确定我的需求是否需要大数据,或者是否适合使用传统关系数据库处理。

这是关于我的数据库的一些信息。

我的主数据库是不同数据源的存储库。这些数据源中的每一个都处理相同类型的数据(同一域中的数据),但是一些数据源包含额外的字段,这些字段在其他数据源中不可用,而一些包含的更少。也就是说这些数据源中的数据字段有的是相同的,有的是不同的。所以我的核心数据库应该包含所有这些字段。我的核心数据库中的总字段应约为 2000 个字段,它可能包含 10 到 2000 万条记录。

我的核心数据库中发生的数据库操作将是数据插入和读取(搜索)。因为它处理大量数据,所以我想使用大数据概念。但我仍然不确定这是否适合大数据。因为我的一些数据具有相似的特征(相同的字段)并且一些包含额外的信息。我需要在我的数据库中进行所有类型的快速搜索。谢谢。

最佳答案

像 MySQL 这样的关系数据库可以处理数十亿行/记录,因此决定将取决于您的用例。对于大数据 NoSQL 系统,了解每个系统的优势和局限性如何映射到您的用例非常重要,因为它们的行为可能非常不同。

以下是一些 MySQL 示例:

在第二个示例中,他们从 MySQL 迁移到 Redis,因为他们需要存储相当于 3590 亿行,远远超过他们在 MySQL 中存储的 9.5 亿行。

鉴于您说您有快速搜索要求,了解您需要什么样的搜索很重要,因为不同的数据库支持不同的搜索。此外,某些受支持的搜索功能可能有限。如果您有超出核心数据存储功能的搜索需求,通常会添加全文解决方案,例如,使用 Cassandra 作为数据存储,使用 Elasticsearch 作为搜索组件。

要为这个决定提供一些背景知识,考虑您对 CAP 定理的要求是有用且重要的,该定理指出分布式计算机系统可以提供以下一些但不是全部的保证(来自维基百科):

  • 一致性(所有节点同时看到相同的数据)
  • 可用性(保证每个请求都能收到响应关于它是成功还是失败)
  • 分区容忍度(尽管任意消息丢失或部分系统出现故障,系统仍继续运行)

http://en.wikipedia.org/wiki/CAP_theorem

您可以在此处以图形方式查看包括 MySQL 和 NoSQL 解决方案在内的不同数据库解决方案的映射方式:

enter image description here

如果您提供有关您的用例的更多信息,您可以获得更详细的回复。

关于mysql - 大数据或关系数据库(如 MySQL 集群)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29116841/

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