spark 动态预加载数据_热门大数据引擎/组件概要
熱門大數(shù)據(jù)引擎/組件概要
TeraData
老牌數(shù)倉公司,已經(jīng)上市十幾年,數(shù)倉領(lǐng)導(dǎo)者地位(from Gartner),目前在向云端發(fā)力。主要提供一體機(jī),MPP架構(gòu),運(yùn)行穩(wěn)定,之前工行用的是TD的系統(tǒng),價(jià)格相對(duì)較貴。
Greenplum
2006年第一款產(chǎn)品,基于PostgreSQL,采用無共享MPP架構(gòu),主要用于數(shù)據(jù)分析OLAP。2010年被EMC收購,于2015年開源,擁有完整的生態(tài)。Greenplum是全球十大經(jīng)典和實(shí)時(shí)數(shù)據(jù)分析產(chǎn)品中唯一的開源數(shù)據(jù)庫。
Vertica
無共享列存MPP,開創(chuàng)列存DBMS先河,2006年1.0版本,2011被惠普收購,商業(yè)版功能強(qiáng)大,被很多以數(shù)據(jù)為主的公司采購使用。主要用于做數(shù)據(jù)倉庫和OLAP,支持時(shí)序數(shù)據(jù)、機(jī)器學(xué)習(xí)等,也可以適配hadoop,spark等,即便是適配hadoop,速度也顯著超越impala,就更不用說hive on tez了。
Hadoop(HDFS+MapReduce+Yarn)
2006年HDFS和MapReduce被納入Hadoop項(xiàng)目,2008年Cloudera基于Hadoop開始提供服務(wù)。Hadoop是一個(gè)能夠?qū)Υ罅繑?shù)據(jù)進(jìn)行分布式處理的軟件框架,高擴(kuò)展、高容錯(cuò)、低成本等特點(diǎn)可以認(rèn)為是為大數(shù)據(jù)領(lǐng)域開了另一扇門。
Hive
hive是基于Hadoop構(gòu)建的一套數(shù)據(jù)倉庫分析系統(tǒng),它提供了豐富的SQL查詢方式來分析存儲(chǔ)在Hadoop分布式文件系統(tǒng)中的數(shù)據(jù)。Hive比較適合離線處理,因?yàn)樗裇QL轉(zhuǎn)MapReduce執(zhí)行響應(yīng)速度較慢,也可以通過Hive on Tez通過DAG來減少落盤次數(shù)來提速。
HBase
基于Hadoop的列存數(shù)據(jù)庫,特點(diǎn)是對(duì)大寬表的支持,支持結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù)。2007年第一個(gè)可用的HBase隨著Hadoop 0.15.0發(fā)布。HBase的LSM-Tree架構(gòu)大幅提升了寫入性能,但影響了實(shí)時(shí)讀取性能,真是魚和熊掌啊。
Impala
Hadoop之上的開源MPP查詢分析引擎,C++,存儲(chǔ)支持hdfs、hbase、S3等。 主要解決Hive速度太慢的問題。Cloudera support。可以搭配hdfs+parquet存儲(chǔ)格式使用,也可以集成kudu一起使用。
Spark
用于大規(guī)模數(shù)據(jù)處理的統(tǒng)一分析引擎。既支持作業(yè)任務(wù)處理,又支持流處理(SparkStreaming)和SQL(SparkSQL),以及機(jī)器學(xué)習(xí)和圖處理,社區(qū)生態(tài)活躍。通常認(rèn)為,與MR相比spark通過內(nèi)存計(jì)算來顯著提速。Spark社區(qū)非常成熟,后面提到的很多平臺(tái)或大數(shù)據(jù)組件都與spark實(shí)現(xiàn)無縫集成。
Kylin
一個(gè)開源的分布式分析引擎,提供Hadoop/Spark之上的SQL查詢接口及多維分析(OLAP)能力以支持超大規(guī)模數(shù)據(jù),最初由eBay Inc. 開發(fā)并貢獻(xiàn)至開源社區(qū)。它能在亞秒內(nèi)查詢巨大的Hive表。核心是預(yù)加載和構(gòu)建cube,cube指定度量維度,我覺得本質(zhì)上是一種物化視圖吧。
Apache Kudu
Kudu是cloudera開源的運(yùn)行在hadoop平臺(tái)上的列式存儲(chǔ)系統(tǒng)(fast analytics on fast data),核心C++編寫。有了hdfs和hbase為什么還需要kudu?一是kudu的表結(jié)構(gòu)與關(guān)系型數(shù)據(jù)庫類似,使用簡(jiǎn)單;二是提供高效插入/更新機(jī)制,大量隨機(jī)讀性能要顯著超過hbase,因此可以適用于近實(shí)時(shí)的分析,快速分析那些快速變化的數(shù)據(jù)。kudu適合做基于SQL的OLAP,其存儲(chǔ)不依賴hdfs,也可以集成impala一起使用。
ClickHouse
最快開源OLAP引擎。列存+定長,更能發(fā)揮向量計(jì)算的優(yōu)勢(shì)。稀疏矩陣+近似計(jì)算提升響應(yīng)速度,但不能用于點(diǎn)查。對(duì)標(biāo)Vertica宣稱比vertica快3到5倍,速度是HIVE的300倍。俄羅斯產(chǎn),代碼開源很可貴,但詳細(xì)文檔不夠豐富。
SnappyData
基于Spark+GemFire的組合實(shí)現(xiàn)的一個(gè)統(tǒng)一的OLTP+OLAP+流式寫入的內(nèi)存分布式數(shù)據(jù)庫,Spark能適配的存儲(chǔ),它都可以適配支持,通過緩存到內(nèi)存來提速。某些增強(qiáng)功能(如近似計(jì)算等)由商用版提供。
Druid
OLAP數(shù)據(jù)庫+時(shí)序支持,支持高頻insert,攝入數(shù)據(jù)分Timestamp、Dimensions、Metrics三部分,按時(shí)間粒度給數(shù)據(jù)做預(yù)聚合,維度不爆炸(對(duì)比kylin)。索引使用bitmap,速度快。數(shù)據(jù)存儲(chǔ)在Deep Storage(永久),并加載到Historicals,可理解為冷數(shù)據(jù)和熱數(shù)據(jù),可以適配各種后端存儲(chǔ)。自帶可視化圖形界面,這個(gè)比較贊。
Presto
純內(nèi)存計(jì)算的OLAP引擎,FaceBook團(tuán)隊(duì)之前使用HIVE,但HIVE依賴的MR太慢了,所以他們又搞了個(gè)Presto,通過并行的內(nèi)存計(jì)算去提速,本身不存數(shù)據(jù)。用于做數(shù)據(jù)倉庫和OLAP。TeraData的團(tuán)隊(duì)支持過這個(gè)項(xiàng)目,但目前已經(jīng)沒有再支持了。
Google Mesa
Mesa是一個(gè)分布式、多副本的、高可用的數(shù)據(jù)處理、存儲(chǔ)和查詢系統(tǒng),針對(duì)結(jié)構(gòu)化數(shù)據(jù)。一般數(shù)據(jù)從上游服務(wù)產(chǎn)生(比如一個(gè)批次的spark streaming作業(yè)產(chǎn)生),在內(nèi)部做數(shù)據(jù)的聚合和存儲(chǔ)。支持近實(shí)時(shí)更新(與Cube方案比),數(shù)據(jù)分維度列和指標(biāo)列,指標(biāo)列指定聚合函數(shù)。
Apache Doris
前身是百度2017年開源系統(tǒng)PALO,后貢獻(xiàn)給apache更名為Doris。Doris 是一個(gè) MPP 的 OLAP 系統(tǒng),主 要整合了 Google Mesa(數(shù)據(jù)模型),Apache Impala(MPP Query Engine)和 Apache ORCFile (存儲(chǔ)格式,編碼和壓縮) 的 技術(shù)。高度兼容Mysql協(xié)議。 元數(shù)據(jù)管理對(duì)impala的p2p模式做了更新,Doris 采用 Paxos 協(xié)議以及 Memory + Checkpoint + Journal 的機(jī)制來確保元數(shù)據(jù)的 高性能及高可靠 。
ElasticSearch
2010年第一個(gè)版本,2012成立公司運(yùn)營。目前Elasticsearch是最受歡迎的企業(yè)搜索引擎,其次是Apache Solr,也是基于Lucene。用于實(shí)時(shí)檢索。看家本事是通過倒排索引支撐的全文檢索
Parquet
基于Google Dremel 實(shí)現(xiàn)的一種精巧的列式存儲(chǔ)格式。核心思想是使用“分片和聚合算法”來標(biāo)示嵌套類型數(shù)據(jù)。支持多種查詢引擎和計(jì)算框架,能夠平滑轉(zhuǎn)換多種數(shù)據(jù)模型(如Avro, Thrift..等)。聚合算法的核心是分r、d值,代表Repetition level 和 definition level。R標(biāo)示發(fā)生了重復(fù)的字段的level,D:optional 或者 repeated可以不存在,但若實(shí)際存在則D值+1。通過這兩個(gè)值可以使用向量機(jī)恢復(fù)數(shù)據(jù)結(jié)構(gòu)。
CarbonData
華為開源的一種用于交互查詢的indexed列存。通過建立多級(jí)索引,來支持多維OLAP和點(diǎn)查詢。支持物化視圖。使用上建議根據(jù)列值特點(diǎn)來定義良好的索引維度,避免出現(xiàn)強(qiáng)distinct值帶來的負(fù)面結(jié)果。與SPARK集成更平滑,但仍然要注意使用多種后端存儲(chǔ)格式可能帶來的工作量。
MongoDb
MongoDb是一種開源NoSQL文檔型數(shù)據(jù)庫,基本概念是數(shù)據(jù)庫、集合、文檔。文檔是一個(gè)鍵值(key-value)對(duì)(即BSON)。MongoDB 的文檔不需要設(shè)置相同的字段,并且相同的字段不需要相同的數(shù)據(jù)類型,這與關(guān)系型數(shù)據(jù)庫有很大的區(qū)別。支持固定大小的collection。支持MapReduce、聚合、分片與副本。MongoDb生態(tài)不斷完善,在數(shù)據(jù)庫排名中不斷升高,被各大互聯(lián)網(wǎng)公司追捧。商業(yè)公司10gen提供MongoDB支持,2009 年 2 月 10gen 正式開源了 MongoDB 的第一個(gè)版本,后該公司改名為MongoDB,商業(yè)版提供加密、LDAP和Kerberos集成等更為完善的功能支持。
Cassandra
Apache Cassandra是一套開源NoSQL數(shù)據(jù)庫系統(tǒng)。最初由facebook開發(fā)之后開源。使用寬列存儲(chǔ)模型,類似于HBase,但它不需要存儲(chǔ)在HDFS上,而是直接存本地,結(jié)合內(nèi)存和磁盤來進(jìn)行讀寫。寫入性能大于讀性能。從Benchmark測(cè)試結(jié)果來看整體性能優(yōu)于HBase。
參考:
Gartner 2019排名:Greenplum躍居第三
淺談從Google Mesa到百度PALO
使用Apache Kudu和Impala實(shí)現(xiàn)存儲(chǔ)分層
Oracle Exadata體系筆記
Teradata 架構(gòu)
有了HBase為什么還要Kudu?
MongoDB 上市后,帶你認(rèn)識(shí)這款非同一般的文檔數(shù)據(jù)庫
總結(jié)
以上是生活随笔為你收集整理的spark 动态预加载数据_热门大数据引擎/组件概要的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 高效能人士的七个习惯_《高效能人士的七个
- 下一篇: datatable 能不能有vlooku