大数据组件图谱
轉(zhuǎn)自https://blog.csdn.net/u010039929/article/details/70157376?
文件系統(tǒng)
數(shù)據(jù)存儲(chǔ)
內(nèi)存技術(shù)
數(shù)據(jù)搜集
消息系統(tǒng)
數(shù)據(jù)處理
查詢引擎
分析和報(bào)告工具
調(diào)度與管理服務(wù)
機(jī)器學(xué)習(xí)
開(kāi)發(fā)平臺(tái)
文件系統(tǒng)
??????HDFS Hadoop Distributed File System,簡(jiǎn)稱HDFS,是一個(gè)分布式文件系統(tǒng)。HDFS是一個(gè)高度容錯(cuò)性的系統(tǒng),適合部署在廉價(jià)的機(jī)器上。HDFS能提供高吞吐量的數(shù)據(jù)訪問(wèn),非常適合大規(guī)模數(shù)據(jù)集上的應(yīng)用。
??????GlusterFS 是一個(gè)集群的文件系統(tǒng),支持PB級(jí)的數(shù)據(jù)量。GlusterFS 通過(guò)RDMA和TCP/IP方式將分布到不同服務(wù)器上的存儲(chǔ)空間匯集成一個(gè)大的網(wǎng)絡(luò)化并行文件系統(tǒng)。
??????Ceph 是新一代開(kāi)源分布式文件系統(tǒng),主要目標(biāo)是設(shè)計(jì)成基于POSIX的沒(méi)有單點(diǎn)故障的分布式文件系統(tǒng),提高數(shù)據(jù)的容錯(cuò)性并實(shí)現(xiàn)無(wú)縫的復(fù)制。
??????Lustre 是一個(gè)大規(guī)模的、安全可靠的、具備高可用性的集群文件系統(tǒng),它是由SUN公司開(kāi)發(fā)和維護(hù)的。該項(xiàng)目主要的目的就是開(kāi)發(fā)下一代的集群文件系統(tǒng),目前可以支持超過(guò)10000個(gè)節(jié)點(diǎn),數(shù)以PB的數(shù)據(jù)存儲(chǔ)量。
??????Alluxio 前身是Tachyon,是以內(nèi)存為中心的分布式文件系統(tǒng),擁有高性能和容錯(cuò)能力,能夠?yàn)榧嚎蚣?#xff08;如Spark、MapReduce)提供可靠的內(nèi)存級(jí)速度的文件共享服務(wù)。?
??????PVFS 是一個(gè)高性能、開(kāi)源的并行文件系統(tǒng),主要用于并行計(jì)算環(huán)境中的應(yīng)用。PVFS特別為超大數(shù)量的客戶端和服務(wù)器端所設(shè)計(jì),它的模塊化設(shè)計(jì)結(jié)構(gòu)可輕松的添加新的硬件和算法支持。
數(shù)據(jù)存儲(chǔ)
??????MongoDB 是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù)。由C++語(yǔ)言編寫。旨在為web應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間的開(kāi)源產(chǎn)品,是非關(guān)系數(shù)據(jù)庫(kù)當(dāng)中功能最豐富、最像關(guān)系數(shù)據(jù)庫(kù)的產(chǎn)品。
??????Redis 是一個(gè)高性能的key-value存儲(chǔ)系統(tǒng),和Memcached類似,它支持存儲(chǔ)的value類型相對(duì)更多,包括string(字符串)、list(鏈表)、set(集合)和zset(有序集合)。Redis的出現(xiàn),很大程度補(bǔ)償了memcached這類key/value存儲(chǔ)的不足,在部分場(chǎng)合可以對(duì)關(guān)系數(shù)據(jù)庫(kù)起到很好的補(bǔ)充作用。
??????HDFS Hadoop分布式文件系統(tǒng)(HDFS)被設(shè)計(jì)成適合運(yùn)行在通用硬件(commodity hardware)上的分布式文件系統(tǒng)。它和現(xiàn)有的分布式文件系統(tǒng)有很多共同點(diǎn)。HDFS是一個(gè)高度容錯(cuò)性的系統(tǒng),適合部署在廉價(jià)的機(jī)器上。HDFS能提供高吞吐量的數(shù)據(jù)訪問(wèn),非常適合大規(guī)模數(shù)據(jù)集上的應(yīng)用。
??????HBASE 是Hadoop的數(shù)據(jù)庫(kù),一個(gè)分布式、可擴(kuò)展、大數(shù)據(jù)的存儲(chǔ)。是為有數(shù)十億行和數(shù)百萬(wàn)列的超大表設(shè)計(jì)的,是一種分布式數(shù)據(jù)庫(kù),可以對(duì)大數(shù)據(jù)進(jìn)行隨機(jī)性的實(shí)時(shí)讀取/寫入訪問(wèn)。提供類似谷歌Bigtable的存儲(chǔ)能力,基于Hadoop和Hadoop分布式文件系統(tǒng)(HDFS)而建。
??????Neo4j 是一個(gè)高性能的,NOSQL圖形數(shù)據(jù)庫(kù),它將結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)在網(wǎng)絡(luò)上而不是表中。自稱“世界上第一個(gè)和最好的圖形數(shù)據(jù)庫(kù)”,“速度最快、擴(kuò)展性最佳的原生圖形數(shù)據(jù)庫(kù)”,“最大和最有活力的社區(qū)”。用戶包括Telenor、Wazoku、ebay、必能寶(Pitney Bowes)、MigRaven、思樂(lè)(Schleich)和Glowbl等。?
??????Vertica 基于列存儲(chǔ)高性能和高可用性設(shè)計(jì)的數(shù)據(jù)庫(kù)方案,由于對(duì)大規(guī)模并行處理(MPP)技術(shù)的支持,提供細(xì)粒度、可伸縮性和可用性的優(yōu)勢(shì)。每個(gè)節(jié)點(diǎn)完全獨(dú)立運(yùn)作,完全無(wú)共享架構(gòu),降低了共享資源的系統(tǒng)競(jìng)爭(zhēng)。
??????Cassandra 是一個(gè)混合型的非關(guān)系的數(shù)據(jù)庫(kù),類似于Google的BigTable,其主要功能比Dynamo (分布式的Key-Value存儲(chǔ)系統(tǒng))更豐富。這種NoSQL數(shù)據(jù)庫(kù)最初由Facebook開(kāi)發(fā),現(xiàn)已被1500多家企業(yè)組織使用,包括蘋果、歐洲原子核研究組織(CERN)、康卡斯特、電子港灣、GitHub、GoDaddy、Hulu、Instagram、Intuit、Netfilx、Reddit及其他機(jī)構(gòu)。
??????CouchDB 號(hào)稱是“一款完全擁抱互聯(lián)網(wǎng)的數(shù)據(jù)庫(kù)”,它將數(shù)據(jù)存儲(chǔ)在JSON文檔中,這種文檔可以通過(guò)Web瀏覽器來(lái)查詢,并且用JavaScript來(lái)處理。它易于使用,在分布式上網(wǎng)絡(luò)上具有高可用性和高擴(kuò)展性。
??????Dynamo 是一個(gè)經(jīng)典的分布式Key-Value 存儲(chǔ)系統(tǒng),具備去中心化、高可用性、高擴(kuò)展性的特點(diǎn)。Dynamo在Amazon中得到了成功的應(yīng)用,能夠跨數(shù)據(jù)中心部署于上萬(wàn)個(gè)結(jié)點(diǎn)上提供服務(wù),它的設(shè)計(jì)思想也被后續(xù)的許多分布式系統(tǒng)借鑒。
??????Amazon SimpleDB 是一個(gè)用Erlang編寫的高可用的NoSQL數(shù)據(jù)存儲(chǔ),能夠減輕數(shù)據(jù)庫(kù)管理工作,開(kāi)發(fā)人員只需通過(guò)Web服務(wù)請(qǐng)求執(zhí)行數(shù)據(jù)項(xiàng)的存儲(chǔ)和查詢,Amazon SimpleDB 將負(fù)責(zé)余下的工作。作為一項(xiàng)Web 服務(wù),像Amazon的EC2和S3一樣,是Amazon網(wǎng)絡(luò)服務(wù)的一部分。
??????Hypertable 是一個(gè)開(kāi)源、高性能、可伸縮的數(shù)據(jù)庫(kù),它采用與Google的Bigtable相似的模型。它與Hadoop兼容,性能超高,其用戶包括電子港灣、百度、高朋、Yelp及另外許多互聯(lián)網(wǎng)公司。
內(nèi)存技術(shù)
??????Terracotta 聲稱其BigMemory技術(shù)是“世界上首屈一指的內(nèi)存中數(shù)據(jù)管理平臺(tái)”,支持簡(jiǎn)單、可擴(kuò)展、實(shí)時(shí)消息,聲稱在190個(gè)國(guó)家擁有210萬(wàn)開(kāi)發(fā)人員,全球1000家企業(yè)部署了其軟件。
??????Ignite 是一種高性能、整合式、分布式的內(nèi)存中平臺(tái),可用于對(duì)大規(guī)模數(shù)據(jù)集執(zhí)行實(shí)時(shí)計(jì)算和處理,速度比傳統(tǒng)的基于磁盤的技術(shù)或閃存技術(shù)高出好幾個(gè)數(shù)量級(jí)。該平臺(tái)包括數(shù)據(jù)網(wǎng)格、計(jì)算網(wǎng)格、服務(wù)網(wǎng)格、流媒體、Hadoop加速、高級(jí)集群、文件系統(tǒng)、消息傳遞、事件和數(shù)據(jù)結(jié)構(gòu)等功能。
??????GemFire Pivotal宣布它將開(kāi)放其大數(shù)據(jù)套件關(guān)鍵組件的源代碼,其中包括GemFire內(nèi)存中NoSQL數(shù)據(jù)庫(kù)。它已向Apache軟件基金會(huì)遞交了一項(xiàng)提案,以便在“Geode”的名下管理GemFire數(shù)據(jù)庫(kù)的核心引擎。
???????GridGain 由Apache Ignite驅(qū)動(dòng)的GridGrain提供內(nèi)存中數(shù)據(jù)結(jié)構(gòu),用于迅速處理大數(shù)據(jù),還提供基于同一技術(shù)的Hadoop加速器。
數(shù)據(jù)搜集
??????Logstash 是一個(gè)應(yīng)用程序日志、事件的傳輸、處理、管理和搜索的平臺(tái)。可以用它來(lái)統(tǒng)一對(duì)應(yīng)用程序日志進(jìn)行收集管理,提供了Web接口用于查詢和統(tǒng)計(jì)。
??????Scribe Scribe是Facebook開(kāi)源的日志收集系統(tǒng),它能夠從各種日志源上收集日志,存儲(chǔ)到一個(gè)中央存儲(chǔ)系統(tǒng)(可以是NFS,分布式文件系統(tǒng)等)上,以便于進(jìn)行集中統(tǒng)計(jì)分析處理。
??????Flume 是Cloudera提供的一個(gè)高可用的、高可靠的、分布式的海量日志采集、聚合和傳輸?shù)南到y(tǒng)。Flume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù)。同時(shí),Flume支持對(duì)數(shù)據(jù)進(jìn)行簡(jiǎn)單處理,并寫入各種數(shù)據(jù)接受方(可定制)。
消息系統(tǒng)
??????RabbitMQ 是一個(gè)受歡迎的消息代理系統(tǒng),通常用于應(yīng)用程序之間或者程序的不同組件之間通過(guò)消息來(lái)進(jìn)行集成。RabbitMQ提供可靠的應(yīng)用消息發(fā)送、易于使用、支持所有主流操作系統(tǒng)、支持大量開(kāi)發(fā)者平臺(tái)。
??????ActiveMQ 是Apache出品,號(hào)稱“最流行的,最強(qiáng)大”的開(kāi)源消息集成模式服務(wù)器。ActiveMQ特點(diǎn)是速度快,支持多種跨語(yǔ)言的客戶端和協(xié)議,其企業(yè)集成模式和許多先進(jìn)的功能易于使用,是一個(gè)完全支持JMS1.1和J2EE 1.4規(guī)范的JMS Provider實(shí)現(xiàn)。
??????Kafka 是一種高吞吐量的分布式發(fā)布訂閱消息系統(tǒng),它可以處理消費(fèi)者規(guī)模網(wǎng)站中的所有動(dòng)作流數(shù)據(jù),目前已成為大數(shù)據(jù)系統(tǒng)在異步和分布式消息之間的最佳選擇。
數(shù)據(jù)處理
??????Spark 是一個(gè)高速、通用大數(shù)據(jù)計(jì)算處理引擎。擁有Hadoop MapReduce所具有的優(yōu)點(diǎn),但不同的是Job的中間輸出結(jié)果可以保存在內(nèi)存中,從而不再需要讀寫HDFS,因此Spark能更好地適用于數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)等需要迭代的MapReduce的算法。它可以與Hadoop和Apache Mesos一起使用,也可以獨(dú)立使用
??????Kinesis 可以構(gòu)建用于處理或分析流數(shù)據(jù)的自定義應(yīng)用程序,來(lái)滿足特定需求。Amazon Kinesis Streams 每小時(shí)可從數(shù)十萬(wàn)種來(lái)源中連續(xù)捕獲和存儲(chǔ)數(shù)TB數(shù)據(jù),如網(wǎng)站點(diǎn)擊流、財(cái)務(wù)交易、社交媒體源、IT日志和定位追蹤事件。
??????Hadoop 是一個(gè)開(kāi)源框架,適合運(yùn)行在通用硬件,支持用簡(jiǎn)單程序模型分布式處理跨集群大數(shù)據(jù)集,支持從單一服務(wù)器到上千服務(wù)器的水平scale up。Apache的Hadoop項(xiàng)目已幾乎與大數(shù)據(jù)劃上了等號(hào),它不斷壯大起來(lái),已成為一個(gè)完整的生態(tài)系統(tǒng),擁有眾多開(kāi)源工具面向高度擴(kuò)展的分布式計(jì)算。高效、可靠、可伸縮,能夠?yàn)槟愕臄?shù)據(jù)存儲(chǔ)項(xiàng)目提供所需的YARN、HDFS和基礎(chǔ)架構(gòu),并且運(yùn)行主要的大數(shù)據(jù)服務(wù)和應(yīng)用程序。
??????Spark Streaming 實(shí)現(xiàn)微批處理,目標(biāo)是很方便的建立可擴(kuò)展、容錯(cuò)的流應(yīng)用,支持Java、Scala和Python,和Spark無(wú)縫集成。Spark Streaming可以讀取數(shù)據(jù)HDFS,Flume,Kafka,Twitter和ZeroMQ,也可以讀取自定義數(shù)據(jù)。
??????Trident 是對(duì)Storm的更高一層的抽象,除了提供一套簡(jiǎn)單易用的流數(shù)據(jù)處理API之外,它以batch(一組tuples)為單位進(jìn)行處理,這樣一來(lái),可以使得一些處理更簡(jiǎn)單和高效。
??????Flink 于今年躋身Apache頂級(jí)開(kāi)源項(xiàng)目,與HDFS完全兼容。Flink提供了基于Java和Scala的API,是一個(gè)高效、分布式的通用大數(shù)據(jù)分析引擎。更主要的是,Flink支持增量迭代計(jì)算,使得系統(tǒng)可以快速地處理數(shù)據(jù)密集型、迭代的任務(wù)。?
Samza 出自于LinkedIn,構(gòu)建在Kafka之上的分布式流計(jì)算框架,是Apache頂級(jí)開(kāi)源項(xiàng)目。可直接利用Kafka和Hadoop YARN提供容錯(cuò)、進(jìn)程隔離以及安全、資源管理。
??????Storm Storm是Twitter開(kāi)源的一個(gè)類似于Hadoop的實(shí)時(shí)數(shù)據(jù)處理框架。編程模型簡(jiǎn)單,顯著地降低了實(shí)時(shí)處理的難度,也是當(dāng)下最人氣的流計(jì)算框架之一。與其他計(jì)算框架相比,Storm最大的優(yōu)點(diǎn)是毫秒級(jí)低延時(shí)。
??????Yahoo S4 (Simple Scalable Streaming System)是一個(gè)分布式流計(jì)算平臺(tái),具備通用、分布式、可擴(kuò)展的、容錯(cuò)、可插拔等特點(diǎn),程序員可以很容易地開(kāi)發(fā)處理連續(xù)無(wú)邊界數(shù)據(jù)流(continuous unbounded streams of data)的應(yīng)用。它的目標(biāo)是填補(bǔ)復(fù)雜專有系統(tǒng)和面向批處理開(kāi)源產(chǎn)品之間的空白,并提供高性能計(jì)算平臺(tái)來(lái)解決并發(fā)處理系統(tǒng)的復(fù)雜度。
??????HaLoop 是一個(gè)Hadoop MapReduce框架的修改版本,其目標(biāo)是為了高效支持 迭代,遞歸數(shù)據(jù) 分析任務(wù),如PageRank,HITs,K-means,sssp等。
查詢引擎
??????Presto 是一個(gè)開(kāi)源的分布式SQL查詢引擎,適用于交互式分析查詢,可對(duì)250PB以上的數(shù)據(jù)進(jìn)行快速地交互式分析。Presto的設(shè)計(jì)和編寫是為了解決像Facebook這樣規(guī)模的商業(yè)數(shù)據(jù)倉(cāng)庫(kù)的交互式分析和處理速度的問(wèn)題。Facebook稱Presto的性能比諸如Hive和MapReduce要好上10倍有多。
??????Drill 于2012年8月份由Apache推出,讓用戶可以使用基于SQL的查詢,查詢Hadoop、NoSQL數(shù)據(jù)庫(kù)和云存儲(chǔ)服務(wù)。它能夠運(yùn)行在上千個(gè)節(jié)點(diǎn)的服務(wù)器集群上,且能在幾秒內(nèi)處理PB級(jí)或者萬(wàn)億條的數(shù)據(jù)記錄。它可用于數(shù)據(jù)挖掘和即席查詢,支持一系列廣泛的數(shù)據(jù)庫(kù),包括HBase、MongoDB、MapR-DB、HDFS、MapR-FS、亞馬遜S3、Azure Blob Storage、谷歌云存儲(chǔ)和Swift。
??????Phoenix 是一個(gè)Java中間層,可以讓開(kāi)發(fā)者在Apache HBase上執(zhí)行SQL查詢。Phoenix完全使用Java編寫,并且提供了一個(gè)客戶端可嵌入的JDBC驅(qū)動(dòng)。Phoenix查詢引擎會(huì)將SQL查詢轉(zhuǎn)換為一個(gè)或多個(gè)HBase scan,并編排執(zhí)行以生成標(biāo)準(zhǔn)的JDBC結(jié)果集。
??????Pig 是一種編程語(yǔ)言,它簡(jiǎn)化了Hadoop常見(jiàn)的工作任務(wù)。Pig可加載數(shù)據(jù)、轉(zhuǎn)換數(shù)據(jù)以及存儲(chǔ)最終結(jié)果。Pig最大的作用就是為MapReduce框架實(shí)現(xiàn)了一套shell腳本 ,類似我們通常熟悉的SQL語(yǔ)句。
??????Hive 是基于Hadoop的一個(gè)數(shù)據(jù)倉(cāng)庫(kù)工具,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫(kù)表,并提供簡(jiǎn)單的sql查詢功能,可以將sql語(yǔ)句轉(zhuǎn)換為MapReduce任務(wù)進(jìn)行運(yùn)行。 其優(yōu)點(diǎn)是學(xué)習(xí)成本低,可以通過(guò)類SQL語(yǔ)句快速實(shí)現(xiàn)簡(jiǎn)單的MapReduce統(tǒng)計(jì),不必開(kāi)發(fā)專門的MapReduce應(yīng)用,十分適合數(shù)據(jù)倉(cāng)庫(kù)的統(tǒng)計(jì)分析。
??????SparkSQL 的前身是Shark,SparkSQL拋棄原有Shark的代碼并汲取了一些優(yōu)點(diǎn),如內(nèi)存列存儲(chǔ)(In-Memory Columnar Storage)、Hive兼容性等。由于擺脫了對(duì)Hive的依賴性,SparkSQL無(wú)論在數(shù)據(jù)兼容、性能優(yōu)化、組件擴(kuò)展方面都得到了極大的方便。
??????Stinger 原來(lái)叫Tez,是下一代Hive,由Hortonworks主導(dǎo)開(kāi)發(fā),運(yùn)行在YARN上的DAG計(jì)算框架。某些測(cè)試下,Stinger能提升10倍左右的性能,同時(shí)會(huì)讓Hive支持更多的SQL。
??????Tajo 目的是在HDFS之上構(gòu)建一個(gè)可靠的、支持關(guān)系型數(shù)據(jù)的分布式數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng),它的重點(diǎn)是提供低延遲、可擴(kuò)展的ad-hoc查詢和在線數(shù)據(jù)聚集,以及為更傳統(tǒng)的ETL提供工具。
??????Impala Cloudera聲稱,基于SQL的Impala數(shù)據(jù)庫(kù)是“面向Apache Hadoop的領(lǐng)先的開(kāi)源分析數(shù)據(jù)庫(kù)”。它可以作為一款獨(dú)立產(chǎn)品來(lái)下載,又是Cloudera的商業(yè)大數(shù)據(jù)產(chǎn)品的一部分。Cloudera Impala 可以直接為存儲(chǔ)在HDFS或HBase中的Hadoop數(shù)據(jù)提供快速、交互式的SQL查詢。
??????Elasticsearch 是一個(gè)基于Lucene的搜索服務(wù)器。它提供了一個(gè)分布式、支持多用戶的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java開(kāi)發(fā)的,并作為Apache許可條款下的開(kāi)放源碼發(fā)布,是當(dāng)前流行的企業(yè)級(jí)搜索引擎。設(shè)計(jì)用于云計(jì)算中,能夠達(dá)到實(shí)時(shí)搜索、穩(wěn)定、可靠、快速、安裝使用方便。
??????Solr 基于Apache Lucene,是一種高度可靠、高度擴(kuò)展的企業(yè)搜索平臺(tái)。知名用戶包括eHarmony、西爾斯、StubHub、Zappos、百思買、AT&T、Instagram、Netflix、彭博社和Travelocity。
??????Shark 即Hive on Spark,本質(zhì)上是通過(guò)Hive的HQL解析,把HQL翻譯成Spark上的RDD操作,然后通過(guò)Hive的metadata獲取數(shù)據(jù)庫(kù)里的表信息,實(shí)際HDFS上的數(shù)據(jù)和文件,會(huì)由Shark獲取并放到Spark上運(yùn)算。Shark的特點(diǎn)就是快,完全兼容Hive,且可以在shell模式下使用rdd2sql()這樣的API,把HQL得到的結(jié)果集,繼續(xù)在scala環(huán)境下運(yùn)算,支持自己編寫簡(jiǎn)單的機(jī)器學(xué)習(xí)或簡(jiǎn)單分析處理函數(shù),對(duì)HQL結(jié)果進(jìn)一步分析計(jì)算。
??????Lucene 基于Java的Lucene可以非常迅速地執(zhí)行全文搜索。據(jù)官方網(wǎng)站聲稱,它在現(xiàn)代硬件上每小時(shí)能夠檢索超過(guò)150GB的數(shù)據(jù),它擁有強(qiáng)大而高效的搜索算法。
分析和報(bào)告工具
??????Kettle 這是一個(gè)ETL工具集,它允許你管理來(lái)自不同數(shù)據(jù)庫(kù)的數(shù)據(jù),通過(guò)提供一個(gè)圖形化的用戶環(huán)境來(lái)描述你想做什么,而不是你想怎么做。作為Pentaho的一個(gè)重要組成部分,現(xiàn)在在國(guó)內(nèi)項(xiàng)目應(yīng)用上逐漸增多。
??????Kylin 是一個(gè)開(kāi)源的分布式分析引擎,提供了基于Hadoop的超大型數(shù)據(jù)集(TB/PB級(jí)別)的SQL接口以及多維度的OLAP分布式聯(lián)機(jī)分析。最初由eBay開(kāi)發(fā)并貢獻(xiàn)至開(kāi)源社區(qū)。它能在亞秒內(nèi)查詢巨大的Hive表。
??????Kibana 是一個(gè)使用Apache 開(kāi)源協(xié)議的Elasticsearch 分析和搜索儀表板,可作為L(zhǎng)ogstash和ElasticSearch日志分析的 Web 接口,對(duì)日志進(jìn)行高效的搜索、可視化、分析等各種操作。
??????Druid 是一個(gè)用于大數(shù)據(jù)實(shí)時(shí)查詢和分析的高容錯(cuò)、高性能、分布式的開(kāi)源系統(tǒng),旨在快速處理大規(guī)模的數(shù)據(jù),并能夠?qū)崿F(xiàn)快速查詢和分析。
??????KNIME 的全稱是“康斯坦茨信息挖掘工具”(Konstanz Information Miner),是一個(gè)開(kāi)源分析和報(bào)表平臺(tái)。宣稱“是任何數(shù)據(jù)科學(xué)家完美的工具箱,超過(guò)1000個(gè)模塊,可運(yùn)行數(shù)百個(gè)實(shí)例,全面的集成工具,以及先進(jìn)的算法”。
??????Zeppelin 是一個(gè)提供交互數(shù)據(jù)分析且基于Web的筆記本。方便你做出可數(shù)據(jù)驅(qū)動(dòng)的、可交互且可協(xié)作的精美文檔,并且支持多種語(yǔ)言,包括 Scala(使用 Apache Spark)、Python(Apache Spark)、SparkSQL、 Hive、 Markdown、Shell等。
??????Talend Open Studio 是第一家針對(duì)的數(shù)據(jù)集成工具市場(chǎng)的ETL(數(shù)據(jù)的提取Extract、傳輸Transform、載入Load)開(kāi)源軟件供應(yīng)商。Talend的下載量已超過(guò)200萬(wàn)人次,其開(kāi)源軟件提供了數(shù)據(jù)整合功能。其用戶包括美國(guó)國(guó)際集團(tuán)(AIG)、康卡斯特、電子港灣、通用電氣、三星、Ticketmaster和韋里遜等企業(yè)組織。
??????Splunk 是機(jī)器數(shù)據(jù)的引擎。使用 Splunk 可收集、索引和利用所有應(yīng)用程序、服務(wù)器和設(shè)備(物理、虛擬和云中)生成的快速移動(dòng)型計(jì)算機(jī)數(shù)據(jù),從一個(gè)位置搜索并分析所有實(shí)時(shí)和歷史數(shù)據(jù)。
??????Pentaho 是世界上最流行的開(kāi)源商務(wù)智能軟件,以工作流為核心的、強(qiáng)調(diào)面向解決方案而非工具組件的、基于java平臺(tái)的商業(yè)智能(Business Intelligence)套件。包括一個(gè)web server平臺(tái)和幾個(gè)工具軟件:報(bào)表、分析、圖表、數(shù)據(jù)集成、數(shù)據(jù)挖掘等,可以說(shuō)包括了商務(wù)智能的方方面面。
??????Jaspersoft 提供了靈活、可嵌入的商業(yè)智能工具,用戶包括眾多企業(yè)組織:高朋、冠群科技、美國(guó)農(nóng)業(yè)部、愛(ài)立信、時(shí)代華納有線電視、奧林匹克鋼鐵、內(nèi)斯拉斯加大學(xué)和通用動(dòng)力公司。
??????SpagoBI Spago被市場(chǎng)分析師們稱為“開(kāi)源領(lǐng)袖”,它提供商業(yè)智能、中間件和質(zhì)量保證軟件,另外還提供相應(yīng)的Java EE應(yīng)用程序開(kāi)發(fā)框架。
調(diào)度與管理服務(wù)
??????Azkaban 是一款基于Java編寫的任務(wù)調(diào)度系統(tǒng)任務(wù)調(diào)度,來(lái)自LinkedIn公司,用于管理他們的Hadoop批處理工作流。Azkaban根據(jù)工作的依賴性進(jìn)行排序,提供友好的Web用戶界面來(lái)維護(hù)和跟蹤用戶的工作流程。
??????YARN 是一種新的Hadoop資源管理器,它是一個(gè)通用資源管理系統(tǒng),可為上層應(yīng)用提供統(tǒng)一的資源管理和調(diào)度,解決了舊MapReduce框架的性能瓶頸。它的基本思想是把資源管理和作業(yè)調(diào)度/監(jiān)控的功能分割到單獨(dú)的守護(hù)進(jìn)程。
??????Mesos 是由加州大學(xué)伯克利分校的AMPLab首先開(kāi)發(fā)的一款開(kāi)源群集管理軟件,支持Hadoop、ElasticSearch、Spark、Storm 和Kafka等架構(gòu)。對(duì)數(shù)據(jù)中心而言它就像一個(gè)單一的資源池,從物理或虛擬機(jī)器中抽離了CPU,內(nèi)存,存儲(chǔ)以及其它計(jì)算資源, 很容易建立和有效運(yùn)行具備容錯(cuò)性和彈性的分布式系統(tǒng)。
??????Ambari 作為Hadoop生態(tài)系統(tǒng)的一部分,提供了基于Web的直觀界面,可用于配置、管理和監(jiān)控Hadoop集群。目前已支持大多數(shù)Hadoop組件,包括HDFS、MapReduce、Hive、Pig、 Hbase、Zookeper、Sqoop和Hcatalog等。
??????ZooKeeper 是一個(gè)分布式的應(yīng)用程序協(xié)調(diào)服務(wù),是Hadoop和Hbase的重要組件。它是一個(gè)為分布式應(yīng)用提供一致性服務(wù)的工具,讓Hadoop集群里面的節(jié)點(diǎn)可以彼此協(xié)調(diào)。ZooKeeper現(xiàn)在已經(jīng)成為了 Apache的頂級(jí)項(xiàng)目,為分布式系統(tǒng)提供了高效可靠且易于使用的協(xié)同服務(wù)。
??????Thrift 在2007年facebook提交Apache基金會(huì)將Thrift作為一個(gè)開(kāi)源項(xiàng)目,對(duì)于當(dāng)時(shí)的facebook來(lái)說(shuō)創(chuàng)造thrift是為了解決facebook系統(tǒng)中各系統(tǒng)間大數(shù)據(jù)量的傳輸通信以及系統(tǒng)之間語(yǔ)言環(huán)境不同需要跨平臺(tái)的特性。
??????Chukwa 是監(jiān)測(cè)大型分布式系統(tǒng)的一個(gè)開(kāi)源數(shù)據(jù)采集系統(tǒng),建立在HDFS/MapReduce框架之上并繼承了Hadoop的可伸縮性和可靠性,可以收集來(lái)自大型分布式系統(tǒng)的數(shù)據(jù),用于監(jiān)控。它還包括靈活而強(qiáng)大的顯示工具用于監(jiān)控、分析結(jié)果。
機(jī)器學(xué)習(xí)
??????Tensorflow是Google開(kāi)源的一款深度學(xué)習(xí)工具,使用C++語(yǔ)言開(kāi)發(fā),上層提供Python API。在開(kāi)源之后,在工業(yè)界和學(xué)術(shù)界引起了極大的震動(dòng),因?yàn)門ensorFlow曾經(jīng)是著名的Google Brain計(jì)劃中的一部分,Google Brain項(xiàng)目的成功曾經(jīng)吸引了眾多科學(xué)家和研究人員往深度學(xué)習(xí)這個(gè)“坑”里面跳,這也是當(dāng)今深度學(xué)習(xí)如此繁榮的重要原因。
??????Theano是老牌、穩(wěn)定的庫(kù)之一。它是深度學(xué)習(xí)開(kāi)源工具的鼻祖,由蒙特利爾理工學(xué)院時(shí)間開(kāi)發(fā)于2008年并將其開(kāi)源,框架使用Python語(yǔ)言開(kāi)發(fā)。它是深度學(xué)習(xí)庫(kù)的發(fā)軔,許多在學(xué)術(shù)界和工業(yè)界有影響力的深度學(xué)習(xí)框架都構(gòu)建在Theano之上,并逐步形成了自身的生態(tài)系統(tǒng),這其中就包含了著名的Keras、Lasagne和Blocks。Theano是底層庫(kù),遵循Tensorflow風(fēng)格。因此不適合深度學(xué)習(xí),而更合適數(shù)值計(jì)算優(yōu)化。它支持自動(dòng)函數(shù)梯度計(jì)算,它有 Python接口 ,集成了Numpy,使得這個(gè)庫(kù)從一開(kāi)始就成為通用深度學(xué)習(xí)最常用的庫(kù)之一。
??????Keras是一個(gè)非常高層的庫(kù),工作在Theano或Tensorflow(可配置)之上。此外,Keras強(qiáng)調(diào)極簡(jiǎn)主義,你可以用寥寥可數(shù)的幾行代碼來(lái)構(gòu)建神經(jīng)網(wǎng)絡(luò)。在 這里 ,您可以看到一個(gè)Keras代碼示例,與在Tensorflow中實(shí)現(xiàn)相同功能所需的代碼相比較。
??????DSSTNE(Deep Scalable Sparse Tensor Network Engine,DSSTNE)是Amazon開(kāi)源的一個(gè)非常酷的框架,由C++語(yǔ)言實(shí)現(xiàn)。但它經(jīng)常被忽視。為什么?因?yàn)?#xff0c;撇開(kāi)其他因素不談,它并不是為一般用途設(shè)計(jì)的。DSSTNE只做一件事,但它做得很好:推薦系統(tǒng)。正如它的官網(wǎng)所言,它不是作為研究用途,也不是用于測(cè)試想法,而是為了用于生產(chǎn)的框架。
??????Lasagne是一個(gè)工作在Theano之上的庫(kù)。它的任務(wù)是將深度學(xué)習(xí)算法的復(fù)雜計(jì)算予以簡(jiǎn)單地抽象化,并提供一個(gè)更友好的 Python 接口。這是一個(gè)老牌的庫(kù),長(zhǎng)久以來(lái),它是一個(gè)具備高擴(kuò)展性的工具。在Ricardo看來(lái),它的發(fā)展速度跟不上Keras。它們適用的領(lǐng)域相同,但是,Keras有更好的、更完善的文檔。
??????Torch是Facebook和Twitter主推的一個(gè)特別知名的深度學(xué)習(xí)框架,Facebook Reseach和DeepMind所使用的框架,正是Torch(DeepMind被Google收購(gòu)之后才轉(zhuǎn)向TensorFlow)。出于性能的考慮, 它使用了一種比較小眾的編程語(yǔ)言Lua ,目前在音頻、圖像及視頻處理方面有著大量的應(yīng)用。在目前深度學(xué)習(xí)大部分以Python為編程語(yǔ)言的大環(huán)境之下,一個(gè)以Lua為編程語(yǔ)言的框架只有更多的劣勢(shì),而不是優(yōu)勢(shì)。Ricardo沒(méi)有Lua的使用經(jīng)驗(yàn),他表示,如果他要用Torch的話,就必須先學(xué)習(xí)Lua語(yǔ)言才能使用Torch。就他個(gè)人來(lái)說(shuō),更傾向于熟悉的Python、Matlab或者C++來(lái)實(shí)現(xiàn)。
??????mxnet是支持大多數(shù)編程語(yǔ)言的庫(kù)之一,它支持Python、R、C++、Julia等編程語(yǔ)言。Ricardo覺(jué)得使用R語(yǔ)言的人們會(huì)特別喜歡mxnet,因?yàn)橹钡浆F(xiàn)在,在深度學(xué)習(xí)的編程語(yǔ)言領(lǐng)域中,Python是衛(wèi)冕之王。
??????Ricardo以前并沒(méi)有過(guò)多關(guān)注mxnet,直到Amazon AWS宣布將mxnet作為其 深度學(xué)習(xí)AMI 中的 參考庫(kù) 時(shí),提到了它巨大的水平擴(kuò)展能力,他才開(kāi)始關(guān)注。
??????Ricardo表示他對(duì)多GPU的擴(kuò)展能力有點(diǎn)懷疑,但仍然很愿意去了解實(shí)驗(yàn)更多的細(xì)節(jié)。但目前還是對(duì)mxnet的能力抱有懷疑的態(tài)度。
??????DL4J,全名是Deep Learning for Java。正如其名,它支持Java。Ricardo說(shuō),他之所以能接觸到這個(gè)庫(kù),是因?yàn)樗奈臋n。當(dāng)時(shí),他在尋找 限制波爾茲曼機(jī)(Restricted Boltzman Machines) 、 自編碼器(Autoencoders) ,在DL4J找到這兩個(gè)文檔,文檔寫得很清楚,有理論,也有代碼示例。Ricardo表示D4LJ的文檔真的是一個(gè)藝術(shù)品,其他庫(kù)的文檔應(yīng)該向它學(xué)習(xí)。
??????DL4J背后的公司Skymind意識(shí)到,雖然在深度學(xué)習(xí)世界中,Python是王,但大部分程序員都是Java起步的,因此,DL4J兼容JVM,也適用于Java、Clojure和Scala。 隨著Scala的潮起潮落,它也被很多 有前途的初創(chuàng)公司 使用。
??????Cognitive Toolkit,就是之前被大家所熟知的縮略名CNTK,但最近剛更改為現(xiàn)在這個(gè)名字,可能利用Microsoft認(rèn)知服務(wù)(Microsoft Cognitive services)的影響力。在發(fā)布的基準(zhǔn)測(cè)試中,它似乎是非常強(qiáng)大的工具,支持垂直和水平推移。
??????到目前為止,認(rèn)知工具包似乎不太流行。關(guān)于這個(gè)庫(kù),還沒(méi)有看到有很多相關(guān)的博客、網(wǎng)絡(luò)示例,或者在Kaggle里的相關(guān)評(píng)論。Ricardo表示這看起來(lái)有點(diǎn)奇怪,因?yàn)檫@是一個(gè)背靠微軟研究的框架,特別強(qiáng)調(diào)自己的推移能力。而且這個(gè)研究團(tuán)隊(duì)在語(yǔ)音識(shí)別上打破了世界紀(jì)錄并逼近了人類水平。
??????你可以在他們的項(xiàng)目Wiki中的示例,了解到認(rèn)知工具包在Python的語(yǔ)法和Keras非常相似。
??????Caffe是最老的框架之一,比老牌還要老牌。 Caffe 是加州大學(xué)伯克利分校視覺(jué)與學(xué)習(xí)中心(Berkeley Vision and Learning Center ,BVLC)貢獻(xiàn)出來(lái)的一套深度學(xué)習(xí)工具,使用C/C++開(kāi)發(fā),上層提供Python API。Caffe同樣也在走分布式路線,例如著名的Caffe On Spark項(xiàng)目。?
??????Hivemall 結(jié)合了面向Hive的多種機(jī)器學(xué)習(xí)算法,它包括了很多擴(kuò)展性很好的算法,可用于數(shù)據(jù)分類、遞歸、推薦、k最近鄰、異常檢測(cè)和特征哈希等方面的分析應(yīng)用。?
RapidMiner 具有豐富數(shù)據(jù)挖掘分析和算法功能,常用于解決各種的商業(yè)關(guān)鍵問(wèn)題,解決方案覆蓋了各個(gè)領(lǐng)域,包括汽車、銀行、保險(xiǎn)、生命科學(xué)、制造業(yè)、石油和天然氣、零售業(yè)及快消行業(yè)、通訊業(yè)、以及公用事業(yè)等各個(gè)行業(yè)。?
??????Mahout 目的是“為快速創(chuàng)建可擴(kuò)展、高性能的機(jī)器學(xué)習(xí)應(yīng)用程序而打造一個(gè)環(huán)境”,主要特點(diǎn)是為可伸縮的算法提供可擴(kuò)展環(huán)境、面向Scala/Spark/H2O/Flink的新穎算法、Samsara(類似R的矢量數(shù)學(xué)環(huán)境),它還包括了用于在MapReduce上進(jìn)行數(shù)據(jù)挖掘的眾多算法。
開(kāi)發(fā)平臺(tái)
??????Lumify 歸Altamira科技公司(以國(guó)家安全技術(shù)而聞名)所有,這是一種開(kāi)源大數(shù)據(jù)整合、分析和可視化平臺(tái)。?
??????Lingual 是Cascading的高級(jí)擴(kuò)展,為Hadoop提供了一個(gè)ANSI SQL接口極大地簡(jiǎn)化了應(yīng)用程序的開(kāi)發(fā)和集成。Lingual實(shí)現(xiàn)了連接現(xiàn)有的商業(yè)智能(BI)工具,優(yōu)化了計(jì)算成本,加快了基于Hadoop的應(yīng)用開(kāi)發(fā)速度。?
??????Beam 基于Java提供了統(tǒng)一的數(shù)據(jù)進(jìn)程管道開(kāi)發(fā),并且能夠很好地支持Spark和Flink。提供很多在線框架,開(kāi)發(fā)者無(wú)需學(xué)太多框架。?
??????Cascading 是一個(gè)基于Hadoop建立的API,用來(lái)創(chuàng)建復(fù)雜和容錯(cuò)數(shù)據(jù)處理工作流。它抽象了集群拓?fù)浣Y(jié)構(gòu)和配置,使得不用考慮背后的MapReduce,就能快速開(kāi)發(fā)復(fù)雜的分布式應(yīng)用。?
??????HPCC 作為Hadoop之外的一種選擇,是一個(gè)利用集群服務(wù)器進(jìn)行大數(shù)據(jù)分析的系統(tǒng),HPCC在LexisNexis內(nèi)部使用多年,是一個(gè)成熟可靠的系統(tǒng),包含一系列的工具、一個(gè)稱為ECL的高級(jí)編程語(yǔ)言、以及相關(guān)的數(shù)據(jù)倉(cāng)庫(kù),擴(kuò)展性超強(qiáng)。
---------------------?
作者:Kuzury?
來(lái)源:CSDN?
原文:https://blog.csdn.net/u010039929/article/details/70157376?
版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請(qǐng)附上博文鏈接!
總結(jié)
- 上一篇: 3D数学 ---- 矩阵和线性变换
- 下一篇: ZooKeeper小结