數據科學交流群,群號:189158789 ,歡迎各位對數據科學感興趣的小伙伴的加入!
1.Excel
Excel 處理的單表最大數據量為1048576行和16384列。一般來說處理規模在100萬行以下的數據較為合適。
2.PowerBI
PowerBI Desktop一般處理的數據在1G左右再往上就會很卡,一般處理的規模在不大於1G或者說1000萬行以下的數據較為合適。
3.MySQL
關於MySQL:
據D.V.B 團隊以及Cmshelp 團隊做CMS 系統評測時的結果來看,MySQL單表大約在2千萬條記錄(4G)下能夠良好運行,經過數據庫的優化后5千萬條記錄(10G)下運行良好。
所以我們姑且認為MySQL這樣類似的數據庫可以處理大概單表小於5000萬行或者小於10G的數據比較合適。
4.Python:
Python做數據分析時一般會擁有一些常用的庫,我們這里只說兩個,一個是Pandas,另外一個是PySpark。
1)Pandas
與其他工具不同的時,pandas沒有明顯的行數限制,跟內存有關,可以參考網友的一篇文章:
最近,我用pandas處理了一把大數據…… - 知乎
https://zhuanlan.zhihu.com/p/272115312
這篇文章中提到:對於一個2G的文件,讀取過程中內存占用會達到4G左右,大概是實際文件體積的兩倍。
一般用戶的單機內存在8-16G左右,有的可能到達32G,拋去4-8個G的系統占用,可以知道,實際能給Pandas做數據處理的空間很有限,一次最多加載幾G到十幾G的數據,這個處理量可以理解為比較適合處理1億行(20G)一下的數據!
2)PySpark
Spark雖然是in memory的運算平台,但從官方資料看,似乎本身對內存的要求並不是特別苛刻。官方網站只是要求內存在8GB之上即可(Impala要求機器配置在128GB)Spark建議需要提供至少75%的內存空間分配給Spark,至於其余的內存空間,則分配給操作系統與buffer cache。
如果當系統內存不足的時候,spark 會將數據落地到磁盤,將 spark 當成 mapreduce的方式解決內存不足的問題。
①單機spark
在單機狀態下,Spark能操作的數據只有本地磁盤上的數據,這個數據量取決你的本地磁盤容量大小。一般用戶的電腦磁盤容量在500G到1T之間,所以我們可以大致得到使用此方式來處理1TB以下的數據量!
②分布式spark
在分布式狀態下,Spark可以處理Hadoop生態中HDFS文件系統上的數據,這個數據量理論上是無上限的,因為分布式存儲,其容量是可以通過增加節點的方式來擴展的,使得處理TB甚至PB級數據量成為可能!
數據科學交流群,群號:189158789 ,歡迎各位對數據科學感興趣的小伙伴的加入!