InfiniDB在大數(shù)據(jù)的實(shí)戰(zhàn)應(yīng)用_第1頁(yè)
InfiniDB在大數(shù)據(jù)的實(shí)戰(zhàn)應(yīng)用_第2頁(yè)
InfiniDB在大數(shù)據(jù)的實(shí)戰(zhàn)應(yīng)用_第3頁(yè)
InfiniDB在大數(shù)據(jù)的實(shí)戰(zhàn)應(yīng)用_第4頁(yè)
InfiniDB在大數(shù)據(jù)的實(shí)戰(zhàn)應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Infinidb在大數(shù)據(jù)的實(shí)戰(zhàn)應(yīng)用目錄?

背景?

InfiniDB的特點(diǎn)?

Infinidb的實(shí)戰(zhàn)問(wèn)題一個(gè)真實(shí)的血案:?

需求:我們?cè)跀?shù)據(jù)庫(kù)mysql要做基于pv的分析。日均裸數(shù)據(jù)增量>10g?

初始方案:

使用innodb問(wèn)題:數(shù)據(jù)量增加太快,磁盤(pán)空間增加太快(40g)數(shù)據(jù)加載太慢了最最重要統(tǒng)計(jì)類(lèi)查詢(xún)太慢了,需要建太多的索引/匯總表?

改進(jìn)方案:換成tokudb解決問(wèn)題:數(shù)據(jù)壓縮4倍,空間增加勉強(qiáng)可以接受(10g)數(shù)據(jù)加載快些了4倍左右,勉強(qiáng)可以接受未解決:最最重要查詢(xún)太慢了,一個(gè)查詢(xún)5分鐘甚至更長(zhǎng),優(yōu)化太痛苦,需要建太多的索引/匯總表問(wèn)題一個(gè)真實(shí)的血案:?

需求:我們?cè)跀?shù)據(jù)庫(kù)mysql要做基于pv的分析。日均裸數(shù)據(jù)增量>10g?

初始方案:

使用innodb問(wèn)題:數(shù)據(jù)量增加太快,磁盤(pán)空間增加太快(40g)數(shù)據(jù)加載太慢了最最重要統(tǒng)計(jì)類(lèi)查詢(xún)太慢了,需要建太多的索引/匯總表?

改進(jìn)方案:換成tokudb解決問(wèn)題:數(shù)據(jù)壓縮4倍,空間增加勉強(qiáng)可以接受(10g)數(shù)據(jù)加載快些了4倍左右,勉強(qiáng)可以接受未解決:最最重要查詢(xún)太慢了,一個(gè)查詢(xún)5分鐘甚至更長(zhǎng),優(yōu)化太痛苦,需要建太多的索引/匯總表解決:--換成infinidb?

最終方案:

使用infinidb(和最初方案innodb比較)–

空間增量2g

(

原來(lái)增量40g)–

加載數(shù)據(jù)

20萬(wàn)/每秒

(原來(lái)

<1萬(wàn)/每秒)–

查詢(xún)一般小于1分鐘(原來(lái)5分鐘,甚至20分鐘)–

免優(yōu)化(再也不要建index了哦)?

業(yè)務(wù)線(xiàn)的反饋目錄?

背景?

InfiniDB的特點(diǎn)?

Infinidb的實(shí)戰(zhàn)Infinidb的定位Hbase

等infinidbinfinidbinfinidb產(chǎn)品介紹產(chǎn)品特點(diǎn):?

Mysql協(xié)議兼容?

全功能,支持dml?

統(tǒng)計(jì)類(lèi)查詢(xún)10倍?

Load數(shù)據(jù)快(每秒>10萬(wàn))?

壓縮率5倍(和裸數(shù)據(jù)比)?

免優(yōu)化Infinidb的單機(jī)構(gòu)架InfiniDB

分布式框架集群文件系統(tǒng)(hdfs/gfs)

2013.10.15

支持hdfs

–不太建議生產(chǎn)環(huán)境用真實(shí)業(yè)務(wù)性能測(cè)試—查詢(xún)性能分析類(lèi)存儲(chǔ)引擎InfiniDB

查詢(xún)性能對(duì)比測(cè)試TPCH測(cè)試(以下以1G數(shù)據(jù)量,150000行用戶(hù)數(shù)據(jù)測(cè)試)InfiniDB存儲(chǔ)

為啥查詢(xún)這樣快數(shù)據(jù)存儲(chǔ)方面,“拆拆拆”:?

按列拆?

按行(范圍)拆:核心算法:hash

joinInfiniDB存儲(chǔ)

按列拆InfiniDB存儲(chǔ)

按行(范圍)拆每個(gè)范圍(術(shù)語(yǔ):Extent

Map)都有最大/最小值,方便過(guò)濾Extent

Map

的向上擴(kuò)展更大的范圍(術(shù)語(yǔ):Partition)也有最大值/最小值每個(gè)Extent

Map

可以并行計(jì)算InfiniDB存儲(chǔ)

hash

join核心算法:hash

join?

每行都有一個(gè)rowid?

查詢(xún)2列以上:通過(guò)行rowid關(guān)聯(lián),使用hash

join?

不太怕表的關(guān)聯(lián)?

很怕Select

*InfiniDB存儲(chǔ)

為啥查詢(xún)這樣快(總結(jié))數(shù)據(jù)存儲(chǔ)方面,“拆拆拆”:?

按列拆?

按行(范圍)拆:?

通過(guò)核心算法:hash

join實(shí)現(xiàn)關(guān)聯(lián)裝載和更新-真實(shí)業(yè)務(wù)性能測(cè)試InfiniDB存儲(chǔ)

數(shù)據(jù)裝載語(yǔ)法load

data

local

infile

…?

速度超快

(>10萬(wàn)/每秒)?

一個(gè)表只能對(duì)應(yīng)一個(gè)load語(yǔ)句,不可并行內(nèi)部過(guò)程:?

內(nèi)部實(shí)現(xiàn)轉(zhuǎn)換成cpimport的方式?

內(nèi)部實(shí)現(xiàn)

并行加載(不可以調(diào)并行度,代碼寫(xiě)死了)?

Cpimport的實(shí)現(xiàn)是append

文件的方式

InfiniDB存儲(chǔ)

–-鎖、事務(wù)和mvcc對(duì)于DML:頁(yè)級(jí)別的鎖

Version

Buffer

(SCN)

:

1.

保存被修改的數(shù)據(jù)塊,用于管理回滾、MVCC支持和snapshot

2.

Initial

4M

內(nèi)存hash表,默認(rèn)文件1G,VersionBufferFileSize控制大小

3.

在HDFS上,MVCC是disabled的,回滾只支持在語(yǔ)句級(jí)對(duì)應(yīng)load數(shù)據(jù):append數(shù)據(jù)到文件末尾,需要回滾時(shí)直接拋棄數(shù)據(jù)InfiniDB

壓縮每一列的重復(fù)值多,所以壓縮率5倍set

infinidb_compression_type

=

n可以在實(shí)例級(jí)或session啟用關(guān)閉壓縮。0)

關(guān)閉壓縮1

or

2)

啟用壓縮,默認(rèn)為2(quicklz算法)InfiniDB

免優(yōu)化?

無(wú)index?

自動(dòng)分區(qū)?

dba唯一可以做的:sql優(yōu)化只能調(diào)整表的連接次序InfiniDB

和其他產(chǎn)品的對(duì)比Inforbright社區(qū)版?功能:不支持DML?

限制功能的開(kāi)源Hbase?

Hbase本質(zhì)上是個(gè)key

–多value的構(gòu)架?

復(fù)雜?

擴(kuò)展性好?

和infinidb是互補(bǔ)的結(jié)構(gòu)infinidb產(chǎn)品特點(diǎn)(總結(jié))產(chǎn)品特點(diǎn):?

Mysql協(xié)議兼容?

全功能,支持dml?

統(tǒng)計(jì)類(lèi)查詢(xún)10倍?

Load數(shù)據(jù)快(每秒>10萬(wàn))?

壓縮率5倍(和裸數(shù)據(jù)比)?

免優(yōu)化目錄?

背景?

InfiniDB的特點(diǎn)?

Infinidb的實(shí)戰(zhàn)InfiniDB

社區(qū)支持問(wèn)題現(xiàn)在支持比較差,未來(lái)前景比較好?

(現(xiàn)狀)文檔和問(wèn)題資料比較少?

2000

年公司,發(fā)布產(chǎn)品?

2013.10月,支持hadoop文件系統(tǒng)?

2014.10月公司倒閉?

2014.10月

mariadb接手?

2015.Q1會(huì)發(fā)布新的版本InfiniDB

高可用問(wèn)題集群版本沒(méi)有高可用文檔,但是也許不太穩(wěn)定單機(jī)版本本身不提供高可用???備份/恢復(fù)方案+手工補(bǔ)缺少數(shù)據(jù)

使用lvmDrbd的方案Mysql主從方案不適應(yīng)(

因?yàn)橛衎inlog問(wèn)題)InfiniDB

高可用drbdInfiniDB

規(guī)范(合適的場(chǎng)景)InfiniDB

–規(guī)范(不合適的場(chǎng)景)InfiniDB-兼容

性不支持最新版本mysql

官方的java驅(qū)動(dòng)支持marridb的mysql驅(qū)動(dòng)InfiniDB

–應(yīng)用類(lèi)問(wèn)題?Infinidb數(shù)據(jù)會(huì)混亂?使用最簡(jiǎn)單的語(yǔ)法?Infinidb的數(shù)據(jù)表?yè)p壞?重新建立表,然后把數(shù)據(jù)導(dǎo)回去?大量的delete/load并行容易死鎖?比如一天

84次delete,每次600萬(wàn)?Infinidb數(shù)據(jù)量排序大報(bào)錯(cuò)?max_length_for_sort_data?infindb

server本地

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論