mesos存儲管理
Ⅰ 大數據方面核心技術有哪些
大數據技術的體系龐大且復雜,基礎的技術包含數據的採集、數據預處理、分布式存儲、資料庫、數據倉庫、機器學習、並行計算、可視化等。
1、數據採集與預處理:
Flume NG實時日誌收集系統,支持在日誌系統中定製各類數據發送方,用於收集數據;
Zookeeper是一個分布式的,開放源碼的分布式應用程序協調服務,提供數據同步服務。
2、數據存儲:
Hadoop作為一個開源的框架,專為離線和大規模數據分析而設計,HDFS作為其核心的存儲引擎,已被廣泛用於數據存儲。
HBase,是一個分布式的、面向列的開源資料庫,可以認為是hdfs的封裝,本質是數據存儲、NoSQL資料庫。
3、數據清洗:MapRece作為Hadoop的查詢引擎,用於大規模數據集的並行計算
4、數據查詢分析:
Hive的核心工作就是把SQL語句翻譯成MR程序,可以將結構化的數據映射為一張資料庫表,並提供 HQL(Hive SQL)查詢功能。
Spark 啟用了內存分布數據集,除了能夠提供互動式查詢外,它還可以優化迭代工作負載。
5、數據可視化:對接一些BI平台,將分析得到的數據進行可視化,用於指導決策服務。
Ⅱ Mesos和YARN的區別以及它們如何協同工作
Hadoop 2.0之後把對集群資源的管理從MapRece v1的JobTracker中提取出來,在YARN中進行了實現。雖然YARN支持了多種不同的計算框架,但依舊沒有很好的解決集群資源的彈性伸縮問題。本文介紹了一個新的項目- Myriad,它把YARN和Mesos兩者的優勢結合起來,不僅使YARN的運行使用更加靈活,而且讓整個數據中心的擴容變得更簡單。
這是一個關於兩個集群的故事。第一個是Apache Hadoop集群,其中資源與Hadoop以及進程完全隔離。另一個集群是對所有資源的描述,這些資源並不是Hadoop集群的一部分。通過這種方式來區分兩個集群是因為Hadoop通過Apache YARN(Yet Another Resource Negotiator)來管理自己的資源。對於Hadoop來說,在沒有大數據任務在隊列中時,這些資源常常是未被充分使用的。當一個大數據任務運行時,這些資源迅速被用到極限,並且在請求更多資源。這對於第一種集群而言相當困難。
Myriad把YARN和Mesos兩者的優勢結合起來。通過使用Myriad項目,讓Mesos和YARN可以協作,你可以完成一個實時業務。數據分析可以在和運行生產服務的相同硬體上執行。你不再需要面臨由靜態分區引起的資源限制(和低利用率)。資源可以根據業務的需求彈性的伸縮。
最後的思考
為了確保人們理解這個項目的來源,我認為Mesos和YARN擅長在自己特定的場景下工作,並且都有提升的空間。兩者的資源管理器在安全領域都能有所提升;而安全的支持對企業採納與否至關重要。
Mesos需要一個端到端的安全架構,我個人覺得可以使用Kerberos來提供安全支持,但根據個人經驗,這樣做應該不會簡單。對Mesos其他方面的提升同樣十分復雜,主要歸納為資源的搶占和撤銷。假設一個業務的所有資源已經分配,當業務依賴運行的一個最重要的資源項需要擴容時,甚至這個擴容工作僅需要數十分鍾來完成,你仍然會因為缺少資源而無法完成。資源的搶占和撤銷就可以解決這個問題。目前,Mesos圍繞著這個問題有多種解決方案,但我十分期待Mesos委員會使用Dynamic Reservations和Optimistic (Revocable) Resources Offers來解決這個問題。
Myriad作為一種新的技術,讓我們把數據中心或雲端的所有資源當作一個簡單的資源池來使用。正如Hadoop消除數據孤島之間的壁壘一樣,Myriad消除了孤立的集群之間的壁壘。通過Myriad,開發者可以專注於業務依賴的數據和應用程序,而運維團隊可以更敏捷地管理他們的計算資源。這為我們專注數據而不被基礎設施持續困擾打開了另一扇窗。有了Myriad,存儲網路的限制和計算與存儲之間的協調就成為我們在實現完整的靈活性、敏捷和伸縮上的最後一個需要攻克的難題。