天天看點

大資料入門--大資料架構整理

分布式檔案系統

HDFS百度百科

Hadoop分布式檔案系統(HDFS)是指被設計成适合運作在通用硬體(commodity hardware)上的分布式檔案系統(Distributed File System)

HDFS是一個高度容錯性的系統

tachyon百度百科

Tachyon是一個高性能、高容錯、基于記憶體的開源分布式存儲系統

kfs百度百科

Kosmos distributed file system (KFS)是一個專門為資料密集型應用(搜尋引擎,資料挖掘等)而設計的存儲系統

計算引擎

離線計算

Spark百度百科

Spark:各種格式、各種計算(機器學習、圖形計算)、可sql、可代碼處理、支援scala/java/python語言開發。提供scala/python代碼指令行運作、超大資料支援差。

Hadoop百度百科

Hadoop是一個由Apache基金會所開發的分布式系統基礎架構。

Hadoop的架構最核心的設計就是:HDFS和MapReduce。HDFS為海量的資料提供了存儲,而MapReduce則為海量的資料提供了計算

MapReduce百度百科

MapReduce是一種程式設計模型,用于大規模資料集(大于1TB)的并行運算。概念"Map(映射)“和"Reduce(歸約)”,是它們的主要思想,都是從函數式程式設計語言裡借來的,還有從矢量程式設計語言裡借來的特性

流式、實時計算

Apache Storm 分布式實時計算系統 開源中國

Apache Storm 是一個免費開源的分布式實時計算系統。簡化了流資料的可靠處理,像 Hadoop 一樣實作實時批處理。Storm 很簡單,可用于任意程式設計語言。

資源管理

YARN百度百科

Apache Hadoop YARN (Yet Another Resource Negotiator,另一種資源協調者)是一種新的 Hadoop 資料總管,它是一個通用資源管理系統,可為上層應用提供統一的資源管理和排程,它的引入為叢集在使用率、資源統一管理和資料共享等方面帶來了巨大好處

Mesos百度百科

Apache Mesos 是一個叢集管理器類似于YARN,提供了有效的、跨分布式應用或架構的資源隔離和共享,可以運作 Hadoop、MPI、Hypertable、Spark

分析引擎(預計算系統)

Apache Druid中文文檔

Apache Druid是一個高性能的實時分析型資料庫

Kylin百度百科

Kylin:預計算、好優化、高性能、支援mr、spark、基于時間的增量更新、流式更新、資料源有hive/kafka、提供開發用的管理台是一套開發系統。由于有預計算、是以其他各個子產品獨立,能支援高并發。可以直接作為軟體系統的資料源。

中間件

Apache Phoenix csdn文章:Phoenix是一個開源的HBASE SQL層

資料庫

Hbase百度百科

Hbase:key/value、強一緻性、不丢資料

HBase – Hadoop Database,是一個高可靠性、高性能、面向列、可伸縮的分布式存儲系統

cassandra百度百科

Cassandra:弱一緻性,資料可能丢失。可用性高、讀寫性能比hbase高

Cassandra是一套開源分布式NoSQL資料庫系統

資料庫工具

Hive百度百科

hive是基于Hadoop的一個資料倉庫工具

Presto實作原理和美團的使用實踐

Presto是一個facebook開源的分布式SQL查詢引擎

Impala百度百科

Impala查詢系統:hadoop的sql平台、支援hbase/hdfs、支援超大資料、支援多并發、sql支援好、對記憶體依賴比較嚴重。需要自己優化,并且有的語句超過記憶體會報錯。

搜尋伺服器(搜尋引擎)

Elasticsearch百度百科

Elasticsearch是一個基于Lucene的搜尋伺服器。它提供了一個分布式多使用者能力的全文搜尋引擎,基于RESTful web接口

機器學習庫

TensorFlow百度百科

TensorFlo是一個基于資料流程式設計(dataflow programming)的符号數學系統

DeepLearning4J開源中國

DeepLearning4J:(DL4J)是一套基于Java語言的神經網絡工具包,可以建構、定型和部署神經網絡。DL4J與Hadoop和Spark內建,支援分布式CPU和GPU。

Keras百度百科

Keras是一個由Python編寫的開源人工神經網絡庫

mahout百度百科

Mahout 是 Apache Software Foundation(ASF) 旗下的一個開源項目,提供一些可擴充的機器學習領域經典算法的實作,旨在幫助開發人員更加友善快捷地建立智能應用程式。

Spark MLlib簡介

MLlib 是 Spark 的機器學習庫,旨在簡化機器學習的工程實踐工作,并友善擴充到更大規模。

繼續閱讀