當你學會炒菜的時候,你就學會了大資料
最近在學習數倉跟BI,突然發現,結合自己所學會抄的菜。試著把學過的大資料重新理解一番,希望各位都能來一起討論,共同進步。
走進廚房
走進廚房後,相信大家會看到各種鍋碗瓢盆,案板,切菜刀,調料,櫥櫃,水池………..而這些就相當於是大資料的架構。
其中櫥櫃,相當於是Hadoop。櫥櫃可以儲存各種食材,而Hadoop可以儲存各種不同類的資料(結構化與非結構化)。而櫥櫃可以存放不同食材,比如不規整的豆腐塊,大冬瓜,土豆….還有一些規整的食材,比如大米,小米,綠豆……..規整的食材與不規整的食材的區別,各家有各家不同的規定,而一般的規定就是規格的食材要用袋子把它們裝起來。這裡就相當於是大資料裡的資料整理流程。而這些半規整的食材要放到一個個小袋子裡,比如說,澱粉,姜粉,蒜泥…..用袋子或者盒子把它們裝好,放在相應櫥櫃的地方,就相當於我們大資料裡說的ETL(抽取,封裝,載入),以備後用。
而不同廠家的櫥櫃又會有不同的格子劃分及儲存區,比如:歐派,宜家的櫥櫃就會劃分出很多小的分割槽來裝不同的東西。而這一塊就相當於HBase,灶臺下邊有專門用於涼碗的,還有抽油煙機旁邊專門用於放刀具的區域,還有專門用於放各種鍋的區域。而當HBase劃分的好的時候,就對上層的MapReduce有很大的幫助,因為你各個區域規劃的越好,當你開始炒菜的時候,取用各種餐具的時候就會更加的得心用手。
至於上邊的Mahout,Pig,Hive就相當於你如何在櫥櫃中找到你相應的食材的過程,比如說,你要抄蕃茄雞蛋,你要找雞蛋跟蕃茄………..再往上走就是一個對廚房的整體管理了。你做過的哪些菜,或者你想按照某個食譜來做菜,你就要有一個本子寫上你每次做菜的步驟,這個就相當於是FlumeL,而Sqoop就相當於蘿蔔擦,你想吃蘿蔔絲,你就要用工具把蘿蔔切成絲才可以,這裡,用刀具可以,用蘿蔔擦會更高效。
再來說說Zookeeper吧!它就相當於把你經常用的幾項工具放到離你做菜最近的一個櫥櫃中。方便管理這些工具。
好了,說完了Hadoop,再來說一說Spark.它跟櫥櫃的唯一不同就是:櫥櫃是給你全部安裝固定好了的,而Spark這種櫥櫃是可以移動的櫥櫃,同時對於你經常用的工具,可以進行優先排序。讓你更快的對食材進行加工。剛開始,你做完一道菜,要半個小時多,而當你熟練之後,加之Spark移動櫥櫃+優先推送食材(記憶體計算+可迭代演算法),你可以在5分鐘內就做完這道菜。
加工食材
實際上,我們食材的儲存過程就相當於是一個數倉的建立過程,而在一個數倉的建立過程中。最重要的莫過於區分不同維度。比如在大資料裡的Key+Value,Big list,實際上都是提供一種基於可擴充套件的列值儲存。而在資料視覺化中,資料多維分維裡,也是強調資料的不同維度的區分。這裡我們就以食材的區分為例來說明。
首先,廚房裡的食材維度可以大致分析:蔬菜維度,禽肉維度,米麵維度…………不同的維度決定了你對食物的理解程度,比如:你可以把糯米放在米麵維度,也可以放在糕點維度。所以資料的不同維度也取決於你對食材的功能及使用場景。再比如:把你香茹切的很小,曬幹,然後碾成粉,要這些香茹粉就會從蔬菜維度進入到調料維度。
當我們明白了食材維度的這個概念之後,我們就要開始我們的加工了。是先抄,還是先炸,還是先熱水湯一下,都是對食材的一種加工。這裡就相當於對初始資料進行相應的整形。由於要用到不同的廚具,就涉及到前邊講的走進廚房的細節的。在大資料裡,可以用不同的元件對原始資料進行處理。而在廚房,可以用不同的廚具對食材進行處理。比如:蒸饅頭,可以用抄鍋來蒸,同時可以用鋼精鍋來蒸。雖然都能達到能吃的地步。但是所用的時間及口感不同。這些也就相當於大資料裡各種不同元件之間的動行效果。
最後,先感謝下我現在的公司,每個月不定期給我們髮菜,同時也感謝下老婆,教會了我抄各種菜。最後,附一張我抄好的菜吧(先給它起一個響亮的名字:亂棍打死豬八戒! )!敬請期待下一次的技術普及課:如何上菜?資料視覺化流程
走進廚房
走進廚房後,相信大家會看到各種鍋碗瓢盆,案板,切菜刀,調料,櫥櫃,水池………..而這些就相當於是大資料的架構。
其中櫥櫃,相當於是Hadoop。櫥櫃可以儲存各種食材,而Hadoop可以儲存各種不同類的資料(結構化與非結構化)。而櫥櫃可以存放不同食材,比如不規整的豆腐塊,大冬瓜,土豆….還有一些規整的食材,比如大米,小米,綠豆……..規整的食材與不規整的食材的區別,各家有各家不同的規定,而一般的規定就是規格的食材要用袋子把它們裝起來。這裡就相當於是大資料裡的資料整理流程。而這些半規整的食材要放到一個個小袋子裡,比如說,澱粉,姜粉,蒜泥…..用袋子或者盒子把它們裝好,放在相應櫥櫃的地方,就相當於我們大資料裡說的ETL(抽取,封裝,載入),以備後用。
而不同廠家的櫥櫃又會有不同的格子劃分及儲存區,比如:歐派,宜家的櫥櫃就會劃分出很多小的分割槽來裝不同的東西。而這一塊就相當於HBase,灶臺下邊有專門用於涼碗的,還有抽油煙機旁邊專門用於放刀具的區域,還有專門用於放各種鍋的區域。而當HBase劃分的好的時候,就對上層的MapReduce有很大的幫助,因為你各個區域規劃的越好,當你開始炒菜的時候,取用各種餐具的時候就會更加的得心用手。
至於上邊的Mahout,Pig,Hive就相當於你如何在櫥櫃中找到你相應的食材的過程,比如說,你要抄蕃茄雞蛋,你要找雞蛋跟蕃茄………..再往上走就是一個對廚房的整體管理了。你做過的哪些菜,或者你想按照某個食譜來做菜,你就要有一個本子寫上你每次做菜的步驟,這個就相當於是FlumeL,而Sqoop就相當於蘿蔔擦,你想吃蘿蔔絲,你就要用工具把蘿蔔切成絲才可以,這裡,用刀具可以,用蘿蔔擦會更高效。
再來說說Zookeeper吧!它就相當於把你經常用的幾項工具放到離你做菜最近的一個櫥櫃中。方便管理這些工具。
好了,說完了Hadoop,再來說一說Spark.它跟櫥櫃的唯一不同就是:櫥櫃是給你全部安裝固定好了的,而Spark這種櫥櫃是可以移動的櫥櫃,同時對於你經常用的工具,可以進行優先排序。讓你更快的對食材進行加工。剛開始,你做完一道菜,要半個小時多,而當你熟練之後,加之Spark移動櫥櫃+優先推送食材(記憶體計算+可迭代演算法),你可以在5分鐘內就做完這道菜。
加工食材
實際上,我們食材的儲存過程就相當於是一個數倉的建立過程,而在一個數倉的建立過程中。最重要的莫過於區分不同維度。比如在大資料裡的Key+Value,Big list,實際上都是提供一種基於可擴充套件的列值儲存。而在資料視覺化中,資料多維分維裡,也是強調資料的不同維度的區分。這裡我們就以食材的區分為例來說明。
首先,廚房裡的食材維度可以大致分析:蔬菜維度,禽肉維度,米麵維度…………不同的維度決定了你對食物的理解程度,比如:你可以把糯米放在米麵維度,也可以放在糕點維度。所以資料的不同維度也取決於你對食材的功能及使用場景。再比如:把你香茹切的很小,曬幹,然後碾成粉,要這些香茹粉就會從蔬菜維度進入到調料維度。
當我們明白了食材維度的這個概念之後,我們就要開始我們的加工了。是先抄,還是先炸,還是先熱水湯一下,都是對食材的一種加工。這裡就相當於對初始資料進行相應的整形。由於要用到不同的廚具,就涉及到前邊講的走進廚房的細節的。在大資料裡,可以用不同的元件對原始資料進行處理。而在廚房,可以用不同的廚具對食材進行處理。比如:蒸饅頭,可以用抄鍋來蒸,同時可以用鋼精鍋來蒸。雖然都能達到能吃的地步。但是所用的時間及口感不同。這些也就相當於大資料裡各種不同元件之間的動行效果。
最後,先感謝下我現在的公司,每個月不定期給我們髮菜,同時也感謝下老婆,教會了我抄各種菜。最後,附一張我抄好的菜吧(先給它起一個響亮的名字:亂棍打死豬八戒! )!敬請期待下一次的技術普及課:如何上菜?資料視覺化流程
相關文章
- ActiveMQ你學會了嗎MQ
- 你是什麼時候”突然”學會程式設計的程式設計
- 學會以下幾個軟體你就會3D遊戲模型了3D遊戲模型
- 其實你就學不會 PythonPython
- 資料分析的黃金時期,你再不會就晚了!
- 堆排序你真的學會了嗎?排序
- 搞懂了這幾點,你就學會了Web程式設計Web程式設計
- 細說 Android 下的多執行緒,學會了多執行緒,你就學會了壓榨CPU!Android執行緒
- 面試的時候別再說你不會設計模式了面試設計模式
- 排序演算法你學會了嗎?排序演算法
- Python協程你學會了嗎?Python
- JVM,我就不信學不會你了JVM
- 動態規劃你學會了嗎?動態規劃
- 學會了這些技術,你離BAT大廠不遠了BAT
- Redis的持久化機制你學會了嗎Redis持久化
- flink的watermark機制你學會了嗎?
- 動態規劃你學會了嗎(二)?動態規劃
- 陣列手撕堆,你學會了嗎?陣列
- 東西學了容易忘?學會跟蹤你的知識
- 震驚!喝個茶的時間就學會了vuexVue
- 面試常遇的打家劫舍問題你學會了嗎~面試
- Linux當機了 你會怎麼辦?Linux
- 看完這篇 Linux 的基本操作你就會了!Linux
- 未來公務員都會是資料分析高手了,你還要當個只會Excel的小白嗎?Excel
- 讀《學習之道》— 學會自我欣賞、朔造你的大腦
- Facebook大資料能預測你何時會墜入愛河大資料
- 一學就會!快來領取你的Smartbi資料視覺化圖表分類指南視覺化
- 頁面置換演算法你學會了嗎?演算法
- 大資料時代,再不學習就OUT了大資料
- TikTok最全帶貨引流教程,學會你就爆賣全球?
- Python的十七個騷操作,你都學會了嗎?(上)Python
- 學習UI設計的一些小技巧你會了嗎?UI
- CSS的23個垂直居中技巧,你都學會了嗎?CSS
- 大資料學習方向,知道這些,你就知道你可以做什麼工作了大資料
- 四大搭配思路,讓你快速學會珠寶穿搭
- 學會用這些“套路”,你才算資料分析師
- Python上下文管理器你學會了嗎?Python
- SpringCloud 三種服務呼叫方式,你學會了嗎?SpringGCCloud