【问题标题】:Database cluster for storage用于存储的数据库集群
【发布时间】:2017-09-21 11:10:25
【问题描述】:

我目前正在从事一个需要大量数据库存储和网络访问的大型项目。

关于网络服务器的性能,它看起来很容易部署。我会使用带有 PROXY HA/VARNISH 的负载平衡系统

我的问题是关于数据库存储。 我需要实时存储大量简单数据并生成统计数据。我在考虑 nosql,但我想让它保持“简单”,而且我对 nosql 没有任何了解……我认为对我来说最好的选择是部署可能是 mariadb 集群的 mysql 集群。

让我向您展示我需要存储的数据: 我每天将收到大约 1 到 150 万条记录:IP 地址、用户名、站点 ID、评级。 根据这些数据,我将每 6 小时生成一次统计数据。对于第一个数据库,我将拥有大量写入访问权限,以及非常小的读取访问权限(读取访问权限仅供内部使用)。对于统计数据,我每天将有大约 2500 万次读取查询。

因为几个月后数据库会非常庞大​​,我希望始终有足够的磁盘空间而不必移动到新服务器,我不知道哪种技术会是最好的。我想我会使用带有 2 个 NIC 的 OVH 专用服务器,首先用于公共访问,其次用于内部网络,这样每台服务器都可以与私有低延迟高性能网络进行通信。我需要使用软负载均衡器,因为它基于专用服务器。 我想要高可用性和“无限”的数据存储,所以我需要像 RAID 15 这样的东西……也许 RAID1 有 2 个具有实时复制功能的专用服务器

我真的不知道什么是最好的解决方案和软件。 - 每天对 150 万条记录进行实时写入访问 - 根据生成的统计数据,每天约有 2500 万次查询 - 存储是简单的文本 varchar 最大 50。

【问题讨论】:

    标签: mysql mariadb nosql


    【解决方案1】:

    我发现 NoSQL 比 sql 简单得多(关系更容易设置),但 SQL 更适合简单的 VARCHAR 存储,pacemaker 可以是您正在寻找的解决方案,它是一个简单的 HA/故障转移集群,您可以轻松设置一个 mysql 集群,它还可以设置一些负载平衡和 DRBD (RAID 1 over IP)。

    对于数据存储,我认为 RAID 15 不是最好的解决方案,RAID 5 提供的性能较低,有时会在磁盘故障时出现一些数据问题,在我的公司,我们只使用 RAID 10,它对于我们的软件来说已经足够了(每天大约 100 万次 NoSQL 请求)。

    如果你正在寻找一个 NoSQL 集群,Neo4j 有一个原生的集群系统(我没用过,但我知道它真的很强大),也许 mongodb 也可以,但我真的不知道,没用过.

    【讨论】:

    • 感谢您的 cmets
    【解决方案2】:

    目前还不能添加 cmets,只是想让您知道 mongo 对您来说可能是一个真正可行的解决方案。它可以轻松扩展,如果您丢失主节点,您的集群将自动重新配置(其中一个辅助节点将被提升为新的主节点)。

    根据查询数据的方式,您可能希望在 Elastic Search 或 Solr 中对其进行索引 - 这些引擎专为处理大量搜索查询而设计。

    【讨论】:

    • 你说得对,我想我会使用mongo(或其他nosql)来存储数据,统计数据会存储在mysql上方便查询
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-17
    • 1970-01-01
    • 2012-12-29
    • 2012-05-29
    相关资源
    最近更新 更多