online gambling singapore online gambling singapore online slot malaysia online slot malaysia mega888 malaysia slot gacor live casino malaysia online betting malaysia mega888 mega888 mega888 mega888 mega888 mega888 mega888 mega888 mega888 知道Hadoop就夠了?這九大技術你也必須了解!

摘要: 除Hadoop外的9個大數據技術: 1.Apache Flink 2.Apache Samza 3.Google Cloud Data Flow 4.StreamSets 5.Tensor Flow 6.Apache NiFi 7.Druid 8.LinkedIn WhereHows 9.Mic​​rosoft Cognitive Services

 


▲(來源:36大數據)

Hadoop是大數據領域最流行的技術,但並非唯一。還有很多其他技術可用於解決大數據問題。除了Apache Hadoop外,另外9個大數據技術也是必須要了解的。

1.Apache Flink

是一個高效、分佈式、基於Java實現的通用大數據分析引擎,它具有分佈式MapReduce一類平台的高效性、靈活性和擴展性以及並行數據庫查詢優化方案,它支持批量和基於流的數據分析,且提供了基於Java和Scala的API。這是一種由社區驅動的分佈式大數據分析開源框架,類似於Apache Hadoop和Apache Spark。它的引擎可藉助數據流和內存中(in-memory)處理與迭代操作改善性能。目前Apache Flink已成為一個頂級項目(Top Level Project,TLP),於2014年4月被納入Apache孵化器,目前在全球範圍內有很多貢獻者。

Flink受到了MPP數據庫技術(Declaratives、Query Optimizer、Parallel in-memory、out-of-core 算法)和Hadoop MapReduce技術(Massive scale out, User Defined functions, Schema on Read)的啟發,有很多獨特功能(Streaming , Iterations, Dataflow, General API)。

2.Apache Samza

是一個開源、分佈式的流處理框架,它使用開源分佈式消息處理系統Apache Kafka來實現消息服務,並使用資源管理器Apache Hadoop Yarn實現容錯處理、處理器隔離、安全性和資源管理。該技術由LinkedIn開發,最初目的是為了解決Apache Kafka在擴展能力方面存在的問題,包含諸如Simple API、Managed state、Fault Tolerant、Durable messaging、Scalable、Extensible,以及Processor ​​Isolation等功能。

Samza的代碼可作為Yarn作業運行,還可以實施StreamTask接口,藉此定義process()調用。StreamTask可以在任務實例內部運行,其本身也位於一個Yarn容器內。

3.Cloud Dataflow

Dataflow是一種原生的Google Cloud數據處理服務,是一種構建、管理和優化複雜數據流水線的方法,用於構建移動應用,調試、追踪和監控產品級雲應用。它採用了Google內部的技術Flume和MillWhell,其中Flume用於數據的高效並行化處理,而MillWhell則用於互聯網級別的帶有很好容錯機制的流處理。該技術提供了簡單的編程模型,可用於批處理和流式數據的處理任務。該技術提供的數據流管理服務可控制數據處理作業的執行,數據處理作業可使用Data Flow SDK(Apache Beam)創建。

Google Data Flow為數據相關的任務提供了管理、監視和安全能力。Sources和Sink可在管線中抽像地執行讀寫操作,管線封裝而成的整個計算序列可以接受外部來源的某些輸入數據,通過對數據進行轉換生成一定的輸出數據。

4.StreamSets

StreamSets是一種專門針對傳輸中數據進​​行過優化的數據處理平台,提供了可視化數據流創建模型,通過開源的方式發行。該技術可部署在內部環境或云中,提供了豐富的監視和管理界面。

數據收集器可使用數據管線實時地流式傳輸並處理數據,管線描述了​​數據從源頭到最終目標的流動方式,可包含來源、目標,以及處理程序。數據收集器的生命週期可通過管理控制台進行控制。

5.TensorFlow

是繼DistBelief之後的第二代機器學習系統。TensorFlow源自Google旗下的Google Brain項目,主要目標在於為Google全公司的不同產品和服務應用各種類型的神經網絡機器學習能力。支持分佈式計算的TensorFlow能夠使用戶在自己的機器學習基礎結構中訓練分佈式模型。該系統以高性能的gRPC數據庫為支撐,與最近發布的Google雲機器學習系統互補,使用戶能夠利用Google雲平台,對TensorFlow模型進行訓練並提供服務。這是一種開源軟件庫,可使用數據流圖譜(data flow graph)進行數值運算,這種技術已被包括DeepDream、RankBrain、Smart Replyused在內的各種Google項目所使用。

數據流圖譜使用由節點(Node)和邊緣(Edge)組成的有向圖(Directed graph)描述數值運算。圖譜中的節點代表數值運算,邊緣代表負責在節點之間進行通信的多維數據陣列(張量,Tensor)。邊緣還描述了節點之間的輸入/輸出關係。“TensorFlow”這個名稱蘊含了張量在圖譜上流動的含義。

6.Druid

Druid是一個用於大數據實時查詢和分析的高容錯、高性能開源分佈式系統,旨在快速處理大規模的數據,並能夠實現快速查詢和分析,誕生於2011年,包含諸如驅動交互式數據應用程序,多租戶:大量並髮用戶,擴展能力:每天上萬億事件,次秒級查詢,實時分析等功能。Druid還包含一些特殊的重要功能,例如低延遲數據攝入、快速聚合、任意切割能力、高可用性、近似計算與精確計算等。創建Druid的最初意圖主要是為了解決查詢延遲問題,當時試圖使用Hadoop來實現交互式查詢分析,但​​是很難滿足實時分析的需要。而Druid提供了以交互方式訪問數據的能力,並權衡了查詢的靈活性和性能而採取了特殊的存儲格式。

該技術還提供了其他實用功能,例如實時節點、歷史節點、Broker節點、Coordinator節點、使用基於JSON查詢語言的索引服務。了解詳情

7.Apache NiFi

Apache NiFi是一套強大可靠的數據處理和分發系統,可用於對數據的流轉和轉換創建有向圖。借助該系統可以用圖形界面創建、監視、控制數據流,有豐富的配置選項可供使用,可在運行時修改數據流,動態創建數據分區。此外還可以對數據在整個系統內的​​流動進行數據起源跟踪。通過開發自定義組件,還可輕鬆對其進行擴展。

Apache NiFi的運轉離不開諸如FlowFile、Processor,以及Connection等概念。

8.LinkedIn WhereHows

WhereHows提供帶元數據搜索的企業編錄(Enterprise catalog),可以讓您了解數據存儲在哪裡,是如何保存到那裡的。該工具可提供協作、數據血統分析等功能,並可連接至多種數據源和提取、加載和轉換(ETL)工具。

該工具為數據發現提供了Web界面,支持API的後端服務器負責控制元數據的爬網(Crawling)以及與其他系統的集成。

9.Mic​​rosoft Cognitive Services

該技術源自Project Oxford和Bing,提供了22種認知計算API,主要分類包括:視覺、語音、語言、知識,以及搜索。該技術已集成於Cortana Intelligence Suite。

這是一種開源技術,提供了22種不同的認知計算REST API,並為開發者提供了適用於Windows、IOS、Android以及Python的SDK。

轉貼自: 36大數據

 


留下你的回應

以訪客張貼回應

0

在此對話中的人們