2013-11-01 47 views
2

我有一個MySQL表,每天需要存儲大約2億條記錄。數據來自平面文件,我將使用「LOAD DATA INFILE」批量上傳。大多數數據元素都是ID,所以文本不多。一天中包含200M記錄的平面文件大約爲27GB。MySQL - 每天處理200M +記錄

我的問題是我應該將所有這些信息存儲在一張表中,還是應該將每天的數據分割成單獨的表格。分裂信息肯定會使分析變得更加困難,但我不確定MySQL能夠在一張表中處理60億條記錄,這將會在一個月內積累起來。

我目前正在使用MyISAM表爲MySQL開箱安裝。

(是的,我希望建立一個Hadoop解決長期的,但想知道如果我能湊合着用的MySQL在短期內)

感謝。

回答

1

是的,MySQL可以在單個表中存儲數十億行。
請參閱我對Maximum number of records in a MySQL database table的回答。

如何到查詢表中有數十億行是一個不同的問題。您應該查看Table Partitioning,瞭解如何對錶進行分區必須仔細設計,以針對需要在表中運行的查詢。

此外,如果您不希望數據損壞,請勿使用MyISAM。使用InnoDB。