標籤:

分析處理幾十萬條以上的數據excel會很慢,也會出現數據不準的情況,請問處理這類數據大家一般都用什麼軟體?


題主說的應該是指SQL型的傳統數據,而非MongoDB這種文檔型數據,即行為元組、列為屬性,有固定格式的數據類型。

對於這種數據,建議是:

1行-5萬行,Excel;

5萬-50萬行,Access、STATA、Matlab等;

50萬-500萬行,R、Python、SQL Server等;

500萬行-1億行,C、SAS、MySQL等;

超過1億行通常需要專業設備支持,作為個人應該不太需要接觸。

Excel2007版以後最大元組數才支持到100萬,但超過5萬行打開速度就有點不行了,運算起來更慢。對於數據處理,主要分為IO時間與CPU時間,其實IO時間往往是大頭兒,一般使用固態硬碟就能很大程度上解決,而使用內存資料庫則效果更佳。作為個人用戶,可以通過使用RamDisk來一定程度上實現類似內存資料庫的IO效率,詳情可自行百度。

針對題主10-100萬行的數據處理量,我推薦使用Matlab、R或Python,理由是效率可以接受,穩定性不錯而且學習成本較低,對今後的工作也有幫助,學了不白學。

我個人喜歡使用SAS處理數據,最大單次處理的數據量是1.5億行、50列,約80GB。在固態硬碟上執行,處理速度大約是0.2GB/秒,加上CPU時間處理80GB數據大約需要10分鐘左右。

據我所知,目前中國國家統計局處理住戶細分數據時使用的是Server版的SAS,billion級的元組數量,在擁有超大內存的大型機上執行。四大行聽說也是用SAS處理總行客戶數據的。

PS

金融數據挖掘是比較常見的會接觸到較大量數據處理的地方,比如2016年1月份的A股level2十檔數據就大約78GB大小。當然,其實其中只有極少一部分數據真正被需要使用,因此數據的分拆打包方法也很重要,以能夠最快速度提取所需數據為佳,不過這就不是本題範疇的事了。


10B以下: 草稿紙

10B-100B: 計算器

100B-100KB: excel

100KB-10MB: R

10MB-100MB: JVM

100MB-10GB: 學校的Hadoop集群

10GB-1TB: AWS EMR

1TB以上: 助教或者實驗室師兄


SQL server


人生苦短,該用python


Life is short,I use Python.


如果是我的話,我會用ACCESS做數據後台,用EXCEL去ACCESS裡面讀取統計或乾脆用ACCESS處理後輸出

理論上來說,如果你的電腦性能夠好(尤其是內存)的話,10版及以上的EXCEL足夠處理這幾十萬條數據了


推薦閱讀:

大數據究竟是什麼?一篇文章讓你認識並讀懂大數據
關於微軟的Power BI介紹?
數據分析、大數據、數據挖掘或者數據分析學習相關的網站推薦幾個?
mpp架構是什麼?它與各種sql on hadoop架構根本區別在那裡,優點和缺點是什麼?求專業人士賜教?
以後的路線如何走,入職半年的職場小白的困惑,研發、弱電、強電?

TAG:大數據 |