3

(我已经看到了这个问题,但对于我想问的内容还不够具体。)

我正在设置一个大型(一百 GB 左右)日志表,平均记录大小为 100-200 字节和几个索引(索引?)。插入速率约为每秒 100-200 条记录。我将在这张表上运行分析查询,可能不是所有的查询都能找到合适的索引,所以它们可能会运行很长时间并查找大量数据。

  1. 你会推荐什么存储引擎?(基本上是 MyISAM 与 InnoDB。)
  2. 如果使用 MyISAM,长查询会阻塞插入吗?
  3. 表大小是一个问题(不是一个大问题,但仍然)。在这方面,一个引擎比另一个更有效吗?
  4. 在性能方面,它们如何比较?
  5. 在这种情况下,我还有什么需要注意的吗?
4

1 回答 1

7

如果你使用 INSERT 和 UPDATE 高性能使用 InnoDB 而不是 MyISAM 更好。如果在 INSERT / UPDATE 使用 MyISAM 之前使用更多的 SELECT 语句。InnoDB 支持 ACID(原子性、一致性、隔离性和持久性),因此 SELECT 和 JOIN 越多,速度越慢,但插入速度更快。

EYE:如果你需要交易这样的支付网关,你应该使用 InnoDB 有交易支持

于 2012-09-20T16:58:17.660 回答