Facebook的Realtime Hadoop及其應用
enter link description here 作者:冠誠, IBM中國研究院, 研究員
在今年的SIGMOD‘11上,Facebook又發了一篇新paper,講述了它們在提高Hadoop實時性上的工作及其應用。簡單來講,他們的專案需求主要有:
1.Elasticity(伸縮性)
2. High write throughput(高寫吞吐量)
3. Efficient and low-latency strong consistency semantics within
a data center(單個data center內高效能、低延遲的強一致性)
4. Efficient random reads from disk(disk的高效能隨機讀)
5. High Availability and Disaster Recovery(高可靠性、災後恢復能力)
6. Fault Isolation(錯誤隔離)
7. Atomic read-modify-write primitives(read-modify-write原子操作)
8. Range Scans(範圍掃描)
- 最終他們選擇了Hadoop和HBase作為解決方案的基石,因為HBase已經滿足了上述需求中的大部分。與此同時,他們還做了如下三點改進以滿足實時性需求:
- File Appends
- Name Node的高可靠性優化 (AvatarNode)
- HBase的讀效能的優化
文章還列舉了三個基於此方案的應用:Facebook Message,Facebook Insight,Facebook Metric Systems,大家可以著重看看這三個應用的特點及需求是怎樣被這個方案滿足的。
在現在這個時代,只有大公司才有如此大的資料來做新東西,難怪Facebook,Google的paper被大量追捧了。
參考資料:
1 Facebook’s New Realtime Analytics System: HBase To Process 20 Billion Events Per Day
2 Real Time Analytics for Big Data: An Alternative Approach
相關文章
- ZooKeeper 原理及其在 Hadoop 和 HBase 中的應用Hadoop
- 大資料之 ZooKeeper原理及其在Hadoop和HBase中的應用大資料Hadoop
- Facebook實時人體姿態估計:Dense Pose及其應用展望
- Ajax及其應用
- Facebook 的應用機器學習平臺機器學習
- 泛型及其應用泛型
- 閉包及其應用
- 解析 Facebook 的 Flux 應用架構UX應用架構
- hadoop jetty的應用薦HadoopJetty
- 動態代理的原理及其應用
- 流程卡的應用及其侷限性
- 掃描線及其應用
- 位運算子及其應用
- Hash函式及其應用函式
- 如何改善應用啟動效能 | Facebook 應用的經驗分享
- 淺析RunLoop原理及其應用OOP
- 淺談webscoket原理及其應用Web
- Java 組合模式及其應用Java模式
- 閉包及其應用場景
- Sherman-Morrison公式及其應用公式
- Hash 演算法及其應用演算法
- AllFacebook:Facebook應用領先iPhone和Android總和iPhoneAndroid
- Facebook應用Mercurial經驗談
- JavaScript中的bind方法及其常見應用JavaScript
- 說說 PHP 的魔術方法及其應用PHP
- AOP及其在Spring中的應用(一) .Spring
- AOP及其在Spring中的應用(二)Spring
- Facebook註冊移動應用以投放應用廣告
- 線段樹差分及其應用
- 細說 Java 泛型及其應用Java泛型
- Vue底層架構及其應用Vue架構
- 【分散式】CAP理論及其應用分散式
- 堆排序原理及其應用場景排序
- 【資料結構】——堆及其應用資料結構
- Java 超程式設計及其應用Java程式設計
- 6.6 哈夫曼樹及其應用
- Hadoop的Server及其執行緒模型分析HadoopServer執行緒模型
- Hadoop 的 Server 及其執行緒模型分析HadoopServer執行緒模型