2

我有一个 MySQL 表,每天需要存储大约 2 亿条记录。数据来自平面文件,我将使用“LOAD DATA INFILE”批量上传。大多数数据元素都是 ID,因此文本不多。一个包含 200M 条记录的平面文件大约是 27GB。

我的问题是我应该将所有这些信息存储在一个表中,还是应该将每天的数据拆分到一个单独的表中。拆分信息肯定会使分析变得更加困难,但我不确定 MySQL 将如何处理单个表中会累积一个月的 60 亿条记录。

我目前正在使用 MyISAM 表为 MySQL 使用开箱即用的安装。

(是的,我希望建立一个长期的 Hadoop 解决方案,但想知道我是否可以在短期内使用 MySQL)

谢谢。

4

1 回答 1

1

是的,MySQL 可以在一个表中存储数十亿行。请参阅我对 MySQL 数据库表中的最大记录数的
回答。

如何查询具有数十亿行的表是一个不同的问题。您应该研究Table Partitioning,了解如何对表进行分区必须针对您需要针对该表运行的查询进行仔细设计。

此外,如果您不希望数据损坏,请不要使用 MyISAM。使用 InnoDB。

于 2013-11-01T06:47:18.273 回答