小编YSY*_*YSY的帖子

我的应用程序应该使用哪个服务器?(300GB MySQL 数据库和 Sphinx)

可能的重复:
你能帮助我进行容量规划吗?

我编写了一个使用 MySQL 和 Sphinx 来搜索和存储信息的应用程序。

该应用程序包含一个权重为 300GB 的数据库(主要是 text、mediumtext 和 varchars)。我的狮身人面像指数权重 30GB。

当我计划拥有一个 100GB~ 的数据库时,我的问题出现了,而我现在有一个 300GB 的数据库,无法加载到内存中(?)。

我正在寻找能够为我提供最高性能的最佳架构。

我的应用程序首先获取一个查询,然后针对 sphinx 索引运行它,从 sphinx 获取大量 ID,在数据库中查询这些 ID 的几个文本字段,并将结果发送到 .NET 排名器(特殊算法)。

为了获得最佳性能,我为 MySQL 使用了带有 2 个 SSD 磁盘(24GB ram)的 Xeon i7 W3520 服务器,这并不便宜,而且我空间不足,无法添加更多磁盘,所以我需要另一台服务器。

如果我使用带有常规磁盘的服务器来运行 mysql,您认为会对性能产生重大影响吗?我知道我需要快速磁盘来进行 sphinx 搜索(这是我的全文搜索引擎),我正在使用索引字段 (ID) 从数据库中选择行而不进行任何复杂的查询,我可能需要将数据库托管在具有足够存储空间的更便宜的服务器。

你能看出我的瓶颈吗?.NET 应用程序主要需要 RAM 和 CPU,DB 需要大量空间和/或 RAM,而 sphinx 需要快速磁盘和 RAM。

  1. 是否可以将 MySQL 索引加载到 RAM 中?
  2. 如果 300GB,我可以做些什么来减轻 DB 的大小这一事实?
  3. 磁盘速度较慢的服务器会对性能产生多大影响?(如果不在硬件上花费数百美元,我就无法对其进行基准测试)。
  4. 如果我为 MySQL 使用 Linux 或 Windows 机器,这有关系吗?

mysql configuration sphinx

0
推荐指数
1
解决办法
1201
查看次数

标签 统计

configuration ×1

mysql ×1

sphinx ×1