以“大數(shù)據(jù)技術(shù)探索和價(jià)值發(fā)現(xiàn)”為主題的第六屆2015中國數(shù)據(jù)庫技術(shù)大會(huì)(以下簡稱大會(huì))近日在京召開。大會(huì)吸引了近2500名技術(shù)愛好者參與,活動(dòng)主辦方除設(shè)置主會(huì)場外還開設(shè)了多個(gè)專場,在《專場19:大數(shù)據(jù)-商業(yè)與開源架構(gòu)》上來自中海紀(jì)元數(shù)字技術(shù)公司技術(shù)總監(jiān)任廣坤,攜程網(wǎng)高級架構(gòu)經(jīng)理趙俊,搜狐DBA賴億,博曉通聯(lián)合創(chuàng)始人董健將為我們帶來一場精彩的大數(shù)據(jù)全方位的知識“盛宴”。
▲中海紀(jì)元數(shù)字技術(shù)公司技術(shù)總監(jiān)任廣坤
中海紀(jì)元數(shù)字技術(shù)公司技術(shù)總監(jiān)任廣坤首先介紹了大數(shù)據(jù)在智慧政務(wù)上的應(yīng)用。他指出,在云計(jì)算已經(jīng)遍布國內(nèi)大江南北,各地都在建設(shè)云計(jì)算基地能夠?yàn)榇髷?shù)據(jù)應(yīng)用奠定基礎(chǔ)。再說電子政務(wù)的發(fā)展,它與我們的生活是密切相關(guān)的,回顧整個(gè)電子政務(wù)的發(fā)展經(jīng)歷來看,它主要經(jīng)歷了幾個(gè)階段:
第一個(gè)階段90年代左右其信息化是垂直的系統(tǒng);第二階段是從2000年到2005年是兩網(wǎng)一站,四庫十二金的應(yīng)用;第三階段是從2006年到2011年,面向業(yè)務(wù)協(xié)同提高辦事效率主要推是標(biāo)準(zhǔn)化市民中心。第四階段從2012年以后政務(wù)向是一站式智慧政務(wù)。所謂一站式主要是基于云計(jì)算、大數(shù)據(jù)等提供的服務(wù)。
▲新技術(shù)帶來的行業(yè)變化
任廣坤指出大數(shù)據(jù)帶來了行業(yè)的變革,給政府行業(yè)大數(shù)據(jù)帶來了六大轉(zhuǎn)變:從粗放管理向精細(xì)化轉(zhuǎn)變,從單相管制向政民互動(dòng)轉(zhuǎn)變,從各自為戰(zhàn)向協(xié)作共享轉(zhuǎn)變,從被動(dòng)響應(yīng)向主動(dòng)預(yù)見轉(zhuǎn)變,從行政主導(dǎo)的政府向以人為本服務(wù)型政府轉(zhuǎn)變,從經(jīng)驗(yàn)決策向基于大數(shù)據(jù)的科學(xué)決策轉(zhuǎn)變。
▲業(yè)務(wù)新要求、IT新需求推動(dòng)統(tǒng)一化
談到電子政務(wù)的應(yīng)用,其實(shí)電子政務(wù)與企業(yè)的架構(gòu)有很高的相似性,過去企業(yè)建了很多的IT系統(tǒng),形成“煙筒”式的架構(gòu),這些問題不僅僅是企業(yè)面對,對于電子政務(wù)而言,同樣也面臨相信的問題比如當(dāng)有了新的業(yè)務(wù)需求時(shí),同樣也對IT提出了新的需求,這就要求必須統(tǒng)一化。以政務(wù)數(shù)據(jù)為例,政務(wù)的需求是縱向訪問上級部門,縱向各業(yè)務(wù)之間要隔離,要求數(shù)據(jù)需要更強(qiáng)的穩(wěn)定性、安全性、可靠性。 大數(shù)據(jù)是政務(wù)資源整合和業(yè)務(wù)協(xié)同的重要組成部分,對于政務(wù)的需求推薦使用面向電子政務(wù)領(lǐng)域的EDATA平臺,它是基于大數(shù)據(jù)的采集、存儲(chǔ)、分析與挖掘及可視化展示應(yīng)用等全方位一體化解決方案,基于開放性架構(gòu)的平臺,可面向電子政務(wù)各行業(yè)應(yīng)用進(jìn)行具體業(yè)務(wù)需求快速實(shí)現(xiàn)。
▲平臺系統(tǒng)架構(gòu)設(shè)計(jì)
▲平臺設(shè)計(jì)理念
▲平臺設(shè)計(jì)功能
攜程高級架構(gòu)經(jīng)理趙俊就《應(yīng)用與DB的實(shí)時(shí)依賴分析與故障定位》作了主題分享。他指出,當(dāng)網(wǎng)站訪問量越來越大的時(shí)候,對于DB是一個(gè)“災(zāi)難”,大量報(bào)錯(cuò)需要花很久的時(shí)候才能定位。基于此,攜程開發(fā)了DAP。DAP(Data Arch Portal)是基于Java開發(fā)的, 使用12種開源框架的實(shí)時(shí)應(yīng)用與DB監(jiān)控平臺。它為攜程提供了從架構(gòu)到應(yīng)用訪問DB的全面監(jiān)控服務(wù)和決策支持。
▲攜程高級架構(gòu)經(jīng)理趙俊
現(xiàn)在DAP的現(xiàn)狀是擁有16臺物理監(jiān)控肌群,1500+業(yè)務(wù)應(yīng)用(包括.net,Java,和MS SQL),4000+應(yīng)用服務(wù)器,>10TB消息大小,>100億消息(每天),單機(jī)Max QPS 10w/S(生產(chǎn)環(huán)境)。一套好的監(jiān)控系統(tǒng)指標(biāo)不僅要具備對應(yīng)用無影響,還能夠具備實(shí)時(shí)性、吞吐量、開銷低、可靠性、服務(wù)端處理100%的到達(dá)消息等元素。
▲DAP報(bào)表之系統(tǒng)報(bào)錯(cuò)大盤
▲DAP報(bào)表之應(yīng)用與DB耦合依賴
▲DAP報(bào)表之架構(gòu)總圖
在專場現(xiàn)場,搜狐DBA賴億以infinidb列式數(shù)據(jù)庫為基礎(chǔ),詳細(xì)的介紹了infinidb在大數(shù)據(jù)的應(yīng)用的。以某應(yīng)用場景為例,搜狐某業(yè)務(wù)使用了其它數(shù)據(jù)庫,但整體的效率不是很理想,最終使用infinidb解決了問題。眾所周知,在整個(gè)數(shù)據(jù)處理中,infinidb的定位在Hbase功能之上做了匯總,它是一個(gè)匯聚層。而且它具有MySql協(xié)議兼容,能夠支持dml,統(tǒng)計(jì)類查詢10倍,Load數(shù)據(jù)快,壓縮率5倍,而且最主要的是免優(yōu)化等特點(diǎn)。
▲搜狐DBA賴億
Infinidb能夠查詢29億數(shù)據(jù)只需要3.13秒,不管查詢條件如何組合,它的查詢很快。Infinidb在數(shù)據(jù)量越大,它的優(yōu)勢越明顯,這是因?yàn)樵跀?shù)據(jù)存儲(chǔ)方面,它是按列進(jìn)行查詢,再按行業(yè)查詢,然后在查詢,這樣的速度會(huì)更快。
▲Infinidb的單機(jī)構(gòu)架
Infinidb的核心算法是:hash join 每行都有一個(gè)rowid,查詢2列以上,通過rowid關(guān)聯(lián),使用hash join。而且infinidb不擔(dān)心表的關(guān)聯(lián),但是很怕Select *。
▲Infinidb的開發(fā)式框構(gòu)
▲Infinidb核心算法hash join
Infinidb不適合的場景如下:查詢包括大量的查詢,它的單行查詢效率其實(shí)和統(tǒng)計(jì)類查詢效率差不多,大量存在Select*這種列出所有列的查詢;通過在線的單行insert錄入數(shù)據(jù),它的單選插入每秒只能是幾十條;需要特別快的查詢響應(yīng)時(shí)間比如50ms內(nèi);有大的并發(fā),比如200個(gè)并發(fā);大量的varchar甚至text的字段。
博曉通聯(lián)合創(chuàng)始人董健在專場上作了《基于混搭存儲(chǔ)引擎的融合型分布式數(shù)據(jù)庫架構(gòu)》。他指出,現(xiàn)在商業(yè)應(yīng)用場景存在很多的困境需要我們用多個(gè)節(jié)點(diǎn)解決單個(gè)節(jié)點(diǎn)不能解決的問題。那么分布式是最好的解決方案之一。分布式通過scale out解脫單一計(jì)算節(jié)點(diǎn)上無法從硬件無限突破的兩大性能瓶頸:CPU和磁盤。實(shí)現(xiàn)高可用,高可靠、高性能,彈性可伸縮。
▲博曉通聯(lián)合創(chuàng)始人董健
分布式的目標(biāo)是安排盡可能多的人共同執(zhí)行一個(gè)任務(wù),但分布式不是一種新技術(shù),它是一種設(shè)計(jì)模式,它衍生的支撐技術(shù)如路由、負(fù)載均衡、任務(wù)調(diào)度、并行計(jì)算、資源競爭、線程間/進(jìn)程間/網(wǎng)絡(luò)通訊。理想的分布式是站在應(yīng)用的角度來講是“分而治之”,這樣的好處是所有的應(yīng)用都可以實(shí)現(xiàn)分布式。理想的分布式計(jì)算框架最主要的分布式應(yīng)用。
博曉通聯(lián)能夠提供了服務(wù)型分布式計(jì)算服務(wù),它是以服務(wù)化的開發(fā)方式,自上而下,自內(nèi)而外的SOA。它不改變業(yè)務(wù)流和編程模型,單機(jī)單用戶思路設(shè)計(jì)分布式應(yīng)用。服務(wù)型分布式計(jì)算服務(wù)的功能是靈活強(qiáng)大的編程模型,數(shù)據(jù)/通訊協(xié)議全透明,核心架構(gòu)方面提供了分布式虛擬機(jī),背板+刀片的架構(gòu)。
提到分布式計(jì)算,離不開對于Map-Reduce,Map-Reduce是偉大的創(chuàng)新,復(fù)雜任務(wù)并行的好方案,通用、成熟、“廉價(jià)”的大數(shù)據(jù)方案,唾手可得的“免費(fèi)”方案。但Map-Reduce不是分布式計(jì)算、大數(shù)據(jù)領(lǐng)域的萬金油,也不是阿司匹林!
▲基于混搭存儲(chǔ)引擎的融合型分布式數(shù)據(jù)庫
傳統(tǒng)數(shù)據(jù)庫面臨的許多的煩惱如數(shù)據(jù)的維度和容量極大擴(kuò)展,數(shù)據(jù)維度頻繁變化,不支持新的數(shù)據(jù)類型,數(shù)據(jù)容量有限,數(shù)據(jù)維度有限,維度修改成本高。那么如何該解決?基于混搭存儲(chǔ)引擎的融合型分布式數(shù)據(jù)庫或許是一個(gè)不錯(cuò)的選擇。
▲融合型分布式數(shù)據(jù)庫的分布式架構(gòu)