大資料技術人員的工具包——開源大資料處理工具list

五柳-先生發表於2016-02-27

下面是文件簡版,收集整理者為Aquester

類別 名稱 官網 備註
查詢引擎 Phoenix http://phoenix.incubator.apache.org/ Salesforce公司出品,Apache HBase之上的一個SQL中間層,完全使用Java編寫
Stinger http://hortonworks.com/labs/stinger/ 原叫Tez,下一代Hive,Hortonworks主導開發,執行在YARN上的DAG計算框架
http://tez.incubator.apache.org/
Presto http://prestodb.io/ Facebook開源
Shark http://shark.cs.berkeley.edu/ Spark上的SQL執行引擎
Pig http://pig.apache.org/ 基於Hadoop MapReduce的指令碼語言
Cloudera Impala http://www.cloudera.com/content/cloudera/en/products-and-services/cdh/impala.html 參照Google Dremel實現,能執行在HDFS或HBase上,使用C++開發
Apache Drill http://incubator.apache.org/drill/ 參照Google Dremel實現
Apache Tajo http://tajo.incubator.apache.org/ 一個執行在YARN上支援SQL的分散式資料倉儲
Hive http://hive.apache.org/ 基於Hadoop MapReduce的SQL查詢引擎
流式計算 Facebook Puma   實時資料流分析
Twitter Rainbird   分散式實時統計系統,如網站的點選統計
Yahoo S4 http://incubator.apache.org/s4/ Java開發的一個通用的、分散式的、可擴充套件的、分割槽容錯的、可插拔的無主架構的流式系統
Twitter Storm http://storm.incubator.apache.org/ 使用Java和Clojure實現
迭代計算 Apache Hama https://hama.apache.org/ 建立在Hadoop上基於BSP(Bulk Synchronous Parallel)的計算框架,模仿了Google的Pregel。
Apache Giraph https://giraph.apache.org/ 建立在Hadoop上的可伸縮的分散式迭代圖處理系統,靈感來自BSP(bulk synchronous parallel)和Google的Pregel
HaLoop https://code.google.com/p/haloop/ 迭代的MapReduce
Twister http://www.iterativemapreduce.org/ 迭代的MapReduce
離線計算 Hadoop MapReduce http://hadoop.apache.org/ 經典的大資料批處理系統
Berkeley Spark http://spark.incubator.apache.org/ 使用Scala語言實現,和MapReduce有較大的競爭關係,效能強於MapReduce
http://shark.cs.berkeley.edu/
DataTorrent http://www.datatorrent.com/ 基於Hadoop2.X構建的實時流式處理和分析平臺,每秒可以處理超過10億個實時事件
鍵值儲存 LevelDB https://code.google.com/p/leveldb/ Google開源的高效KV程式設計庫,注意它只是個庫
RocksDB http://rocksdb.org/ Facebook開源的,基於Google的LevelDB,但提高了擴充套件性可以執行在多核處理器上
HyperDex http://hyperdex.org/ 下一代KV儲存系統,支援strings、integers、floats、lists、maps和sets等豐富的資料型別
TokyoCabinet http://fallabs.com/tokyocabinet/ 日本人Mikio Hirabayashi(平林幹雄)開發的一款DBM資料庫,注意它只是個庫(大名鼎鼎的DBM資料庫qdbm就是Mikio Hirabayashi開發的),讀寫非常快
Voldemort http://www.project-voldemort.com/voldemort/ 一個分散式鍵值儲存系統,是Amazon Dynamo的一個開源克隆,LinkedIn開源
Amazon Dynamo https://github.com/dynamo/dynamo 亞馬遜的KV模式的儲存平臺,無主架構
Tair http://tair.taobao.org/ 淘寶出品的高效能、分散式、可擴充套件、高可靠的KV結構儲存系統,專為小檔案優化,並提供簡單易用的介面(類似Map),Tair支援Java和C版本的客戶端
Apache Accumulo https://accumulo.apache.org/ 一個可靠的、可伸縮的、高效能的排序分散式的KV儲存系統,參照Google Bigtable而設計,建立在Hadoop、Thrift和Zookeeper之上。
Redis http://redis.io/ 使用ANSI C語言編寫、支援網路、可基於記憶體亦可持久化的日誌型、單機版KV資料庫。從2010年3月15日起,Redis的開發工作由VMware主持
表格儲存 OceanBase http://alibaba.github.io/oceanbase/ 支援海量資料的高效能分散式資料庫系統,實現了數千億條記錄、數百TB資料上的跨行跨表事務
Amazon SimpleDB http://aws.amazon.com/cn/simpledb/ 一個可大規模伸縮、用 Erlang 編寫的高可用資料儲存
Vertica http://www.vertica.com/ 惠普2011收購Vertica,Vertica是傳統的關係型資料庫,基於列儲存,同時支援MPP,使用標準的SQL查詢,可以和Hadoop/MapReduce進行整合
Cassandra http://cassandra.apache.org/ Hadoop成員,Facebook於2008將Cassandra開源,基於O(1)DHT的完全P2P架構
HyperTable http://hypertable.org/ 搜尋引擎公司Zvents針對Bigtable的C++開源實現
FoundationDB https://foundationdb.com/ 支援ACID事務處理的NoSQL資料庫,提供非常好的效能、資料一致性和操作彈性
HBase http://hbase.apache.org/ Bigtable在Hadoop中的實現,最初是Powerset公司為了處理自然語言搜尋產生的海量資料而開展的專案
檔案儲存 CouchDB http://couchdb.apache.org/ 面向文件的資料儲存
MongoDB https://www.mongodb.org/ 文件資料庫
Tachyon http://tachyon-project.org/ 加州大學伯克利分校的AMPLab基於Hadoop的核心元件開發出一個更快的版本Tachyon,它從底層重構了Hadoop平臺。
https://github.com/amplab/tachyon
KFS http://code.google.com/p/kosmosfs/ GFS的C++開源版本
HDFS http://hadoop.apache.org/ GFS在Hadoop中的實現
資源管理 Twitter Mesos http://mesos.apache.org/ Google Borg的翻版
Hadoop Yarn http://hadoop.apache.org/ 類似於Mesos
日誌收集系統 Facebook Scribe https://github.com/facebook/scribe Facebook開源的日誌收集系統,能夠從各種日誌源上收集日誌,儲存到一箇中央儲存系統(可以是NFS,分散式檔案系統等)上,以便於進行集中統計分析處理,常與Hadoop結合使用,Scribe用於向HDFS中Push日誌
Cloudera Flume http://flume.apache.org/ Cloudera提供的日誌收集系統,支援對日誌的實時性收集
logstash http://www.logstash.net/ 日誌管理、分析和傳輸工具,可配合kibana、ElasticSearch組建成日誌查詢系統
kibana http://www.elasticsearch.org/overview/kibana/ 為日誌提供友好的Web查詢頁面
訊息系統 StormMQ http://stormmq.com/  
ZeroMQ http://zeromq.org/ 很底層的高效能網路庫
RabbitMQ https://www.rabbitmq.com/ 在AMQP基礎上完整的,可複用的企業訊息系統
Apache ActiveMQ http://activemq.apache.org/ 能力強勁的開源訊息匯流排
Jafka http://kafka.apache.org/ 開源的、高效能的、跨語言分散式訊息系統,最早是由Apache孵化的Kafka(由LinkedIn捐助給Apache)克隆而來
Apache Kafka http://kafka.apache.org/ Linkedin於2010年12月份開源的分散式訊息系統,它主要用於處理活躍的流式資料,由Scala寫成
分散式服務 ZooKeeper http://zookeeper.apache.org/ 分散式鎖服務,PoxOS演算法的實現,對應Google的Chubby
RPC Apache Avro http://avro.apache.org/ Hadoop中的RPC
Facebook Thrift http://thrift.apache.org/ RPC,支援C++/Java/PHP等眾多語言
叢集管理 Nagios http://www.nagios.org/ 監視系統執行狀態和網路資訊的監視系統
Ganglia http://ganglia.sourceforge.net/ UC Berkeley發起的一個開源叢集監視專案,設計用於測量數以千計的節點。
Apache Ambari http://ambari.apache.org/ Hadoop成員,管理和監視Apache Hadoop叢集的開源框架
基礎設施 LevelDB http://code.google.com/p/leveldb/ Google頂級大牛開發的單機版鍵值資料庫,具有非常高的寫效能
SSTable   源於Google,orted String Table
RecordIO   源於Google
Flat Buffers https://github.com/google/flatbuffers 針對遊戲開發的,高效的跨平臺序列化庫,相比Proto Buffers開銷更小,因為Flat Buffers沒有解析過程
Protocol Buffers http://code.google.com/p/protobuf/ Google公司開發的一種資料描述語言,類似於XML能夠將結構化資料序列化,可用於資料儲存、通訊協議等方面。它不依賴於語言和平臺並且可擴充套件性極強。
Consistent Hashing   1997年由麻省理工學院提出,目標是為了解決因特網中的熱點(Hot spot)問題,初衷和CARP十分類似,基本解決了在P2P環境中最為關鍵的問題——如何在動態的網路拓撲中分佈儲存和路由。
Netty http://netty.io/ JBOSS提供的一個java開源框架,提供非同步的、事件驅動的網路應用程式框架,用以快速開發高效能、高可靠性的網路伺服器和客戶端程式。
BloomFilter   布隆過濾器,1970年由布隆提出,是一個很長的二進位制向量和一系列隨機對映函式,可以用於檢索一個元素是否在一個集合中,優點是空間效率和查詢時間都遠遠超過一般的演算法,缺點是有一定的誤識別率和刪除困難。
搜尋引擎 Nutch https://nutch.apache.org/ 開源Java 實現的搜尋引擎,誕生Hadoop的地方。
Lucene http://lucene.apache.org/ 一套資訊檢索工具包,但並不包含搜尋引擎系統,它包含了索引結構、讀寫索引工具、相關性工具、排序等功能。
SolrCloud   基於Solr和Zookeeper的分散式搜尋, Solr4.0 的核心元件之一,主要思想是使用 Zookeeper 作為叢集的配置資訊中心
Solr https://lucene.apache.org/solr/ Solr是基於Lucene的搜尋。
ElasticSearch http://www.elasticsearch.org/ 開源的(Apache2協議),分散式的,RESTful的,構建在Apache Lucene之上的的搜尋引擎。
http://www.elasticsearch.cn/
Sphinx http://sphinxsearch.com 一個基於SQL的全文檢索引擎,可結合MySQL、PostgreSQL做全文檢索,可提供比資料庫本身更專業的搜尋功能,單一索引可達1億條記錄,1000萬條記錄情況下的查詢速度為0.x秒(毫秒級)。
SenseiDB http://senseidb.com Linkin公司開發的一個開源分散式實時半結構化資料庫,在全文索引的基礎封裝了Browse Query Language (BQL,類似SQL)的查詢語法。
資料探勘 Mahout http://mahout.apache.org/ Hadoop成員,目標是建立一個可擴充套件的機器學習庫
Iaas OpenStack https://www.openstack.org/ 美國國家航空航天局和Rackspace合作研發的,以Apache許可證授權雲平臺管理的專案,它不是一個軟體。這個專案由幾個主要的元件組合起來完成一些具體的工作,旨在為公共及私有云的建設與管理提供軟體的開源專案。6個核心專案:Nova(計算,Compute),Swift(物件儲存,Object),Glance(映象,Image),Keystone(身份,Identity),Horizon(自助門戶,Dashboard),Quantum & Melange(網路&地址管理),另外還有若干社群專案,如Rackspace(負載均衡)、Rackspace(關係型資料庫)。
Docker http://www.docker.io/ 應用容器引擎,讓開發者可打包應用及依賴包到一個可移植的容器中,然後釋出到Linux機器上,也可實現虛擬化。
Kubernetes https://github.com/GoogleCloudPlatform/kubernetes/ Google開源的容器叢集管理系統
Imctfy https://github.com/google/Imctfy/ Google開源的Linux容器
監控管理 Dapper http://bigbully.github.io/Dapper-translation/ Google生產環境下的大規模分散式系統的跟蹤系統
Zipkin http://twitter.github.io/zipkin/ Twitter開源的參考Google Dapper而開發,使用Apache Cassandra做為資料儲存系統
https://github.com/twitter/zipkin/

轉載:http://www.36dsj.com/archives/25191

相關文章