Fw: [問題] 想走Big Data的選系困擾

看板Soft_Job (軟體人)作者 (心存善念盡力而為)時間11年前 (2015/02/10 06:49), 編輯推噓27(2705)
留言32則, 27人參與, 最新討論串1/1
※ [本文轉錄自 studyabroad 看板 #1KsDZyDQ ] 作者: dryman (dryman) 看板: studyabroad 標題: Re: [問題] 想走Big Data的選系困擾 時間: Mon Feb 9 23:57:46 2015 我現在也是在big data業界工作(OpenX)處理的是廣告實時競價 去除重複資料後,一分鐘的資料量也有25GB 先講兩個結論: 1. CS 是最接近的科系,但也有很多東西是CS沒有教,你要自己學的 這其實不意外。例如,怎麼把程式寫到production level 在業界明明就是非常需要的能力,但沒什麼研究價值 2. Process data in large scale != data science * * * 很多人以為big data就是要做大型數據分析 不過如果你沒有一個能靠數據吃飯的business model,你連資料都養不起 OpenX的資料量還不算是非常大的,但也是要700台來裝這些數據 資料甚至還不能留太久 我們的主要業務不是在分析數據,而是將數據處理成報表,才能跟客戶收錢 這種資料工程師要做的事情可以簡化成三件事: 1. 去除無效或重複資料 2. 將相關的資料join 3. join好的資料非常大,類似傳統資料庫的hyper cube 從這樣的資料再去切出各種角度的報表 英文比較好表達這個:aggregation 把這三件事做到好,才是一家公司有辦法養大數據的基礎 很不幸的,沒有學校會想要教你這些,因為這實在是沒有學術價值啊 * * * 資料工程要做的三件事雖然目標簡單,但要做到large scale一點也不直觀 雖然現在hadoop ecosystem上層工具很多,但我建議還是要能做到map-reduce API的程度 這裡面最困難的還是去除無效資料 如何篩選相關資料,然後送進同一台機器兩兩比對是否重複或無效 這種邏輯不直接寫到Map-Reduce API我還真無法想像該怎麼寫 另外跟金錢相關的資料,常常需要在currency間轉換 currency的轉換要留到最後一步做,太早變成浮點數,數據會在數次aggregation後失真 這種我們需要客製的資料結構來存,用上層工具(hive/pig)來做也是相當困難 這些東西該怎麼學?我是自己學的 買一本hadoop definitive guide,全本讀完 書裡面很多東西沒涵蓋到,就把API先瀏覽過一遍,才會發現很多有用的小工具 到最後就是在source code裡面挖東西了 我在寫自己的input/output format時,就是從它的source code裡面找靈感 學習過程也不是學完再做東西,都是一邊學一邊做 可以先從最簡單的目標開始寫: 1. 如何寫一個select count(1) from... group by xxx 進階一點select sum, avg, ... from ... group by xxx 2. 如何寫one-to-many join, many-to-many join 3. 如何寫「去除一分鐘內的重複資料」的map-reduce job * * * 以上是比較基礎的資料工程師要做的工作 更進階的會需要更多深入的資料結構及演算法 題目也會變得更靈活 例如,比起sort全部的資料,只找最高的一百個 用map-reduce加上自訂的資料結構效能可以比原本快非常多倍 或是如果你只在乎一個query最後會產生多少行,而且只在乎大略的數字 那你可以使用hyperloglog的演算法來做 又或是你如果想預先知道一個query會不會data skew 可以使用count min sketch 我自己的工作幾乎沒有資料分析 但需要很多技巧來將資料處理的演算法變得scalable 這也是big data工作的一種型態,我個人覺得應該是比資料分析還缺人啦 至少就我們公司來說,有太多PhD來應徵data science,而合格的data engineer 幾乎找不到... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 108.205.154.164 ※ 文章網址: https://www.ptt.cc/bbs/studyabroad/M.1423497468.A.35A.html

02/10 00:00, , 1F
頭推
02/10 00:00, 1F

02/10 00:13, , 2F
原po專業
02/10 00:13, 2F

02/10 00:13, , 3F
thanks for sharing :)
02/10 00:13, 3F

02/10 00:15, , 4F
這篇專業 現在這種處理方法幾乎都要另外開一門課
02/10 00:15, 4F

02/10 00:17, , 5F
可參考CMU 10605 非常實用 有影片可以看
02/10 00:17, 5F

02/10 01:22, , 6F
專業推 的確CS很多技術也很多要需自學!
02/10 01:22, 6F

02/10 01:36, , 7F
資料分析也許需從Orthogonality層面著手~
02/10 01:36, 7F
※ 發信站: 批踢踢實業坊(ptt.cc) ※ 轉錄者: TonyQ (61.231.167.14), 02/10/2015 06:49:50

02/10 06:50, , 8F
經原作者同意轉載。
02/10 06:50, 8F

02/10 07:56, , 9F
專業
02/10 07:56, 9F

02/10 08:20, , 10F
02/10 08:20, 10F

02/10 08:22, , 11F
謝分享
02/10 08:22, 11F

02/10 09:01, , 12F
推 但看不太懂
02/10 09:01, 12F

02/10 09:02, , 13F
學到一些知識
02/10 09:02, 13F

02/10 09:31, , 14F
分析 演算法 跟程式化真的是不同領域的訓練
02/10 09:31, 14F

02/10 09:36, , 15F
中肯
02/10 09:36, 15F

02/10 10:27, , 16F
好文
02/10 10:27, 16F

02/10 10:34, , 17F
推,雖然不是這個領域的,但受益良多,感謝:)
02/10 10:34, 17F

02/10 11:04, , 18F
推一個
02/10 11:04, 18F

02/10 11:15, , 19F
希望能用這篇文章拋磚引玉 :)
02/10 11:15, 19F

02/10 11:25, , 20F
謝謝分享!
02/10 11:25, 20F

02/10 12:06, , 21F
感謝分享
02/10 12:06, 21F

02/10 12:25, , 22F
02/10 12:25, 22F

02/10 12:46, , 23F
02/10 12:46, 23F

02/10 12:54, , 24F
用Impala下SQL Query一次解決 select xx from yy group oo
02/10 12:54, 24F

02/10 12:55, , 25F
所以沒想過寫map reduce code, 總覺得麻煩
02/10 12:55, 25F

02/10 13:02, , 26F
推 雖然看不太懂
02/10 13:02, 26F

02/10 13:40, , 27F
impala只是ad hoc query而已 沒有用到map reduce吧
02/10 13:40, 27F

02/10 13:48, , 28F
Big Data Now,每年都出一本。可以看看概念,有免費或是
02/10 13:48, 28F

02/10 13:49, , 29F
kindle 超便宜版本 http://oreil.ly/177rZWF
02/10 13:49, 29F

02/10 14:53, , 30F
我家資料就算已經aggregate過,還是塞不進impala...XD
02/10 14:53, 30F

02/10 15:51, , 31F
歡迎使用spark sql XD
02/10 15:51, 31F

02/10 15:59, , 32F
02/10 15:59, 32F

02/10 16:21, , 33F
impala跟MR 的用途還是有差啦 要做一些複雜的應用impala不夠
02/10 16:21, 33F

02/10 22:53, , 34F
02/10 22:53, 34F

02/11 20:49, , 35F
推分享
02/11 20:49, 35F

02/12 10:58, , 36F
推分享
02/12 10:58, 36F

02/12 22:58, , 37F
跟我目前做的很相似 還留在產報表 還沒進入分析
02/12 22:58, 37F

02/12 23:41, , 38F
推分享
02/12 23:41, 38F

02/15 20:02, , 39F
推分享
02/15 20:02, 39F
文章代碼(AID): #1KsJcGnt (Soft_Job)
文章代碼(AID): #1KsJcGnt (Soft_Job)