相對於直接操作資料庫進行分析,hadoop和SPSS等數據分析軟體的作用是什麼?
可能我的標題會讓專業人士有些鄙視,我是作為一個基本小白的角度提出這個問題的.
我目前在某國企的基層分公司從事數據統計工作,具體的工作就是按照市場分析人員的要求,每天從oracle資料庫里寫SQL或存儲過程,調取相應的數據,製成excel表格給市場分析人員進行二次加工或分析. 簡單來說,算是個人肉數據提取器.
一晃工作已經快十年了,感覺每天做的工作已經從新奇變成低級的重複勞動,技術上已經處於半荒廢狀態,只對oracle有個大致的了解,對數據倉庫的最簡單應用有個大概的認識.對於未來還是越來越惶恐,所以想學習一些新的知識來勉強跟上時代.
(我們常用的一個數據倉庫簡略來說是這樣的,若干個系統搜集的底層數據經過清洗放在DW層,進過二次加工的原始數據放在一個中間層MID層,最終系統級的展現及前台應用放在DM層; 而我們是通過這三層數據用SQL語句進行一些系統外的整理加工. 一般的表日全量數據大約一千萬到1億行不等,常用的基礎表大約百來個)
由於一直從事的是數據挖掘(勉強算吧)工作,我們一直以來都是直接通過sql語句操作進行過清洗的底層數據.在網上搜索數據分析相關的知識,大部分的答案都指向SPSS及hadoop等數據挖掘軟體. 大概搜索了一下這些軟體的概況,可能我比較笨或是很久沒有學習專業知識了,很難看懂它們的作用.
說了那麼多,主要想請問下從事這個行業的牛人們,
1,假設我學習hadoop或SPSS,對我目前從事的數據統計分析工作有什麼幫助?
2,相對於直接用sql操作資料庫,hadoop和SPSS可以更便捷的實現哪些方面的功能?
3,這些軟體的學習周期大致是個什麼情況?
4,在拋開主題,我上面提到的數據倉庫的規模下,擴展學習哪些技能能起到最快的幫助.期待專業人士的回答我這個開始有些中年危機的小白,萬分感謝.
1, 假設我學習 hadoop 或 SPSS, 對我目前從事的數據統計分析工作有什麼幫助?
取代你們的市場人員進行二次加工
2, 相對於直接用 sql 操作資料庫,hadoop 和 SPSS 可以更便捷的實現哪些方面的功能?
功能不同,SPSS 是把很多對數據的操作集成在一起了,這樣點一些按鈕通過 GUI 就能實現對數據的統計功能,Hadoop 是實現演算法的一種並行化操作,和 SQL 沒有什麼關係。回答你的問題,SQL 和 SPSS Hadoop 都沒有什麼關係,因為 SQL 是查詢數據的,後兩者一個是分析數據,一個是實現演算法的一個框架。
3, 這些軟體的學習周期大致是個什麼情況?
SPSS 其實蠻好學的,只是需要懂其中的統計學知識,才知道要用哪些功能。Hadoop 的話,看你的需求了,如果有集群設備,然後知道分析什麼,學學也不錯。至於學習周期,我沒有在工業界呆過,還請工業界的人回答吧。
4, 在拋開主題, 我上面提到的數據倉庫的規模下, 擴展學習哪些技能能起到最快的幫助.
數據量很大了,在上面進行一些深加工,依照需求選擇性的學習一些數據挖掘方法。你可以把你提取出來的數據放到 SPSS 裡面,看看一些演算法的計算結果,說不定會有收穫。
這個Hadoop我就完全不懂了。
SPSS的話心理學都要學很多了,略微評論兩句。
做數據做得多了,常常陷進去的怪圈是:無比注重軟體、方法,陷到P值,顯著性等等。
但是可能在工作中更重要的是你從數據中發現問題
發現問題後知道用哪個方法去驗證自己的假設或者發現
在有限的時間精力和大量的數據中,選擇最合適的方法去驗證
親,概念搞錯了。
- hadoop是個分布計算系統,文件系統只是一個模塊叫hdfs。另外的主要模塊是Yarn(scheduling)mapreduce(並行計算模塊)。處理海量數量、異構數據時hadoop明顯優於傳統資料庫如oracle。 thanks @Xiaoyu Ma
- spss是個統計分析工具,同樣具有一定的數據處理能力,但重點在統計分析上面。spss在社會統計、市場營銷方面用的比較多,更加普通的場景大家一般就用excel了。用spss其實也就是拿來做做回歸、做做方差分析什麼的。一般人都不會用主成分、因子、聚類方法什麼的了。
-----------------------------------------------------------------
您現在的情況,是對資料庫系統的了解還蠻多。建議您學習下hadoop相關的東西。hadoop本身是個開源的系統,您可以學習一下java,這樣您可以根據您的業務需求,定製您的hadoop系統。另外,再學習下hive。hive本身可以執行簡單的sql,除此之外的語法上手也計較快。hive基本上相當於sql語句。
至於spss,您學習一下倒也無妨。但是,spss本質上是統計分析、和您說的數據分析(描述性統計)側重點不一樣。spss要用起來很容易,數據處理好了往裡一丟,結果就出來了。但是沒有統計學相關知識的話,您沒辦法理解您做的模型是否是正確的、以及出來的結果意味著什麼。
--------------------------------------------------------------------
以上
Hadoop是一個分散式處理大數據的平台, 而SPSS是一個(小)數據分析軟體.
SPSS也可以連接到資料庫上去取數據, 然後進行分析. 如果你的數據只有幾千條, 幾萬條, 可以直接在SPSS中處理. 如果你的數據到了幾千萬條幾億條, SPSS已經完全瓦特了, 只能上Hadoop了(土豪可以用SAS HP)...SPSS已經給你準備好了分析的模塊, 演算法什麼的不需要你操心, 提供數據和必要的參數就OK. Hadoop上, 演算法你得自己編寫.
SPSS不了解,單說hadoop。Hadoop由兩個主要部分,HDFS 和 mapReduce。
HDFS 是一個 Google File System 的開源實現。這貨不是資料庫,而是一個分散式文件系統。
MapReduce 是個分散式計算平台,就是用來分析儲存在HDFS上的文件的。
這個和資料庫不太好直接比較。但是對於處理少量結構化數據而言,易用性上絕對是資料庫勝出。
而大量公司使用hadoop的原因,除了裝B,就是不得不用。
一個hadoop集群能夠到數千台的規模,能夠處理TB級的數據量,而且只需要x86伺服器即可。
我不知道oracle的能夠處理多少數據,但是處理海量數據的時候肯定沒有hadoop集群便宜。
hadoop 一般用於數據量大,實時性低的時候。而處理關鍵性的高實時性的交易數據之類,還是關係資料庫用的多。
如果說解決你的問題,可以考慮IBM SPSS Analytic Server / Analytic Catalyst
IBM SPSS Analytic Catalyst
IBM - SPSS Analytic Server
幾乎不需要專業的知識,支持HADOOP。
想充電的話,鑒於樓主經常操作資料庫,應該比較熟了。我覺得入手HADOOP會好些。根據2013年的技術成熟度曲線,BIG DATA向低谷期走去,這樣表明快成熟了。如果能學得比較精,我覺得過兩三年到了成熟期後,應該前景還不錯。
Statistics (注,老SPSS軟體改名叫Statistics了) 學個皮毛容易,想學精學深,需要統計學的知識背景,並了解各類演算法的優缺點才能比較好的應用。我們這邊一般還是要求博士學位的。
PS -
Big data is like teenage sex: everyone talks about it, nobody really knows how to do it, everyone thinks everyone else is doing it, so everyone claims they are doing it.」
Dan Ariely
數據倉庫工作更偏向業務邏輯,數據清洗,資料庫建模;這裡涉及的分析主要是寫大量存儲過程或其他腳本語言去實現數據的計算和多維展現。這些屬於描述性分析,相對的另一面是推斷性分析,也就是統計專業的內容,例如假設檢驗方差分析以及現在比較火的機器學習,需要有一定數學和統計基礎,至於代碼實現倒沒有多困難,學習一下R或者Python,裡面都有很完備的演算法庫,當然高手不用lib的這裡就不談了。SPSS還是算了(具體不想解釋,對不起不要噴我)。其實以樓主的經歷,建議先學習Hadoop,能夠充分利用BI方面的經驗。統計分析更重要的是理論和方法,至於是SAS還是R或者Python都沒關係,工具本身不重要,有空餘時間可以從理論課開始了解。
推薦閱讀:
※數據可視化,大屏展示,哪家公司做的不錯?
※哪些工具或網站可以分析亞馬遜全行業的數據?
※矩陣的奇異值與特徵值有什麼相似之處與區別之處?
※中國現在各行業的發展情況如何?
※怎樣快速掌握 VLookup?