大數據通常人聽着比較複雜,以爲可能須要很大成原本部署和實施。幸運地是市面上已經有一些雲服務來幫助咱們讓大數據變得更簡單。另外,若是你選擇合適的開源工具,也每每會使你的大數據之路起到事半功倍的效果。下面會列出實用而且較低成本的大數據實施系統,供參考。編程
請注意本文不討論實時或者流數據處理,若是你在尋找那些方面的解決方案,爲了節省你的時間,咱們建議你忽略本文。微信
在選擇據具體大數據工具以前,你最好回答兩個問題:分佈式
1. 你的數據有多大?工具
2. 你但願你的數據查詢要多快?大數據
第一個問題決定你須要什麼樣的大數據存儲系統,第二個問題決定你須要什麼樣的查詢或者執行引擎。下面是基於對這兩個問題的不一樣回答,推薦採用的一些工具。spa
1. 超大數據(幾百TB),查詢時間容忍度很高(幾小時)rest
這個是批處理(batch processing)適用的場景。一個可行的方案是:AWS S3 + Apache Spark。你能夠執行Spark任務,讀取S3中的數據,而後將計算結果存成CSV文件,最後用Excel分析或者可視化結果。code
2. 中等規模數據(幾十TB),但願查詢快速響應(幾秒鐘)開發
這個一般是交互式查詢適用的場景。一個可行的方案是:AWS Redshift + Tableau。Redshift提供低延遲查詢處理,Tableau提供很好的數據可視化功能,兩者結合起來能夠輕鬆的分析大量數據,只是須要必定的成本。須要提醒的是,你最好提早規劃好Redshift集羣的規模和容量,減小隨機動態調整, 由於在Redshift中,擴展集羣(scale up or scale out)是個比較痛苦的過程。部署
3. 中等規模數據(幾十TB),必定的查詢響應容忍度(幾分鐘),低成本
這個場景適用於預算有限的狀況,或者你不想在AWS Redshift和Tableau上投入太多。你將須要對大數據比較瞭解的開發人員,從而能夠本身搭建企業內部的大數據集羣。一個可行的解決方案是:Apache Cassandra + Presto Query Engine + H2 Console (from H2 Database Engine)。
Cassandra提供高可靠性大數據存儲系統,而且比較容易部署。Presto提供分佈式SQL執行引擎,能夠運行在Cassandra之上,並提供JDBC支持。H2 Console是一個簡單可是有效的Web界面,用來查詢JDBC數據源。利用這些工具組合,你不須要任何編程工做,就能夠在企業內部搭建起一個端到端大數據解決方案。
綜上,你能夠看到,根據不一樣的大數據需求,能夠選擇不一樣的工具組合。但願本文能夠幫助你快速進入大數據領域。若有任何問題或者反饋,歡迎聯繫做者本人(boyang798@gmail.com)。
掃描微信二維碼聯繫做者