數(shù)據(jù)越來越多,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫支撐不了,分布式數(shù)據(jù)倉庫又非常貴。幾十億、幾百億、甚至幾千億的數(shù)據(jù)量,如何才能高效的分析?
mdrill是由阿里媽媽開源的一套數(shù)據(jù)的軟件,針對(duì)TB級(jí)數(shù)據(jù)量,能夠僅用10臺(tái)機(jī)器,達(dá)到秒級(jí)響應(yīng),數(shù)據(jù)能實(shí)時(shí)導(dǎo)入,可以對(duì)任意的維度進(jìn)行組合與過濾。
mdrill作為數(shù)據(jù)在線分析處理軟件,可以在幾秒到幾十秒的時(shí)間,分析百億級(jí)別的任意組合維度的數(shù)據(jù)。
在阿里10臺(tái)機(jī)器完成每日30億的數(shù)據(jù)存儲(chǔ),其中10億為實(shí)時(shí)的數(shù)據(jù)導(dǎo)入,20億為離線導(dǎo)入。目前集群的總存儲(chǔ)3200多億80~400維度的數(shù)據(jù)。
mdrill的特性
1.滿足大數(shù)據(jù)查詢需求:adhoc每天的數(shù)據(jù)量為30億條,隨著日積月累,數(shù)據(jù)會(huì)越來越大,mdrill采用列存儲(chǔ),索引,分布式技術(shù),適當(dāng)?shù)姆謪^(qū)等滿足用戶對(duì)數(shù)據(jù)的實(shí)時(shí)在線分析的需求。
2.支持增量更新:離線形式的mdrill數(shù)據(jù)支持按照分區(qū)方式的增量更新。
3.支持實(shí)時(shí)數(shù)據(jù)導(dǎo)入:在僅有10臺(tái)機(jī)器的情況下,支持每天10億級(jí)別(高峰每小時(shí)2億)的實(shí)時(shí)導(dǎo)入。
4.響應(yīng)時(shí)間快:列存儲(chǔ)、倒排索引、高效的數(shù)據(jù)壓縮、內(nèi)存計(jì)算,各種緩存、分區(qū)、分布式處理等等這些技術(shù),使得mdrill可以僅在幾秒到幾十秒的時(shí)間分析百億級(jí)別的數(shù)據(jù)。
5.低成本:目前在阿里adhoc僅僅使用10臺(tái)48G內(nèi)存的PC機(jī),但確存儲(chǔ)了超過千億規(guī)模的數(shù)據(jù)。
6.全文檢索模式:在mdrill的全文檢索模式數(shù)據(jù)可以直接存儲(chǔ)在hdfs中,并且以每天160億*70維度的數(shù)據(jù)增量提供全文檢索服務(wù)(注:該模式下不能進(jìn)行統(tǒng)計(jì),只能進(jìn)行關(guān)鍵詞匹配查詢數(shù)據(jù)明細(xì))
mdrill的定位
大數(shù)據(jù)
要數(shù)據(jù)量大,幾十億上百億。
還要省錢,普通PC就能搞定。
多維分析
要任意維度組合與過濾
還要對(duì)任意指標(biāo)進(jìn)行統(tǒng)計(jì)和排序
即席查詢
要查詢快,秒級(jí)響應(yīng)。
還要數(shù)據(jù)快,數(shù)據(jù)分鐘級(jí)延遲。