• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
D22 目覚めよDBエンジニア 〜世界最速カラムナーデータベースは本物だ!〜 by Koji Shinkubo
 

D22 目覚めよDBエンジニア 〜世界最速カラムナーデータベースは本物だ!〜 by Koji Shinkubo

on

  • 2,213 views

 

Statistics

Views

Total Views
2,213
Views on SlideShare
2,193
Embed Views
20

Actions

Likes
1
Downloads
42
Comments
0

2 Embeds 20

https://twitter.com 18
https://web.tweetdeck.com 2

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    D22 目覚めよDBエンジニア 〜世界最速カラムナーデータベースは本物だ!〜 by Koji Shinkubo D22 目覚めよDBエンジニア 〜世界最速カラムナーデータベースは本物だ!〜 by Koji Shinkubo Presentation Transcript

    • Copyright © 2013 Insight Technology, Inc. All Rights Reserved.Insight Technology, Inc.新久保 浩二目覚めよDBエンジニア世界最速カラムナーデータベースは本物だ!
    • 2Copyright © 2013 Insight Technology, Inc. All Rights Reserved.Who am I ?1. Insight Qube & Vectorwise & Any DBs2. おら オラ Oracle どっぷり検証生活2. Oracle ACE3. @kouji_s_08084. JPOUG(Japan Oracle User Group)本資料に使用されている社名、ロゴ、製品、サービス名およびブランド名は、該当する各社の登録商標または商標です。本資料の一部あるいは全体について、許可なく複製および転載することを禁じます。
    • 3Copyright © 2013 Insight Technology, Inc. All Rights Reserved.DBのイノベーションはとっくの昔におきてます
    • 4Copyright © 2013 Insight Technology, Inc. All Rights Reserved.197xOracle(ORACLE)鬼熱いRDBMS勢力地図System R(IBM)Ingres(Actian 旧Ingres)主にOLTP用途主にDWH用途買収等1975
    • 5Copyright © 2013 Insight Technology, Inc. All Rights Reserved.198xInformix(Informix)DB2(IBM)Teradata(Teradata)SQL Server(Microsoft)PostgreSQL(Open Source)主にOLTP用途主にDWH用途買収等1985Sybase(Sybase)Non Stop SQL(Tandem)
    • 6Copyright © 2013 Insight Technology, Inc. All Rights Reserved.199xMySQL(MySQL AB)Symfoware(Fujitsu)Sybase IQ(Sybase)HiRDB(Hitachi)主にOLTP用途主にDWH用途買収等1995
    • 7Copyright © 2013 Insight Technology, Inc. All Rights Reserved.200xNetezza(Netezza)Informix(IBM)Greenplum(Greenplum)Vertica(Vertica)Infobright(Infobright)ParAccel(ParAccel)Asterdata(Asterdata)Vectorwise(Vectorwise)Oracle Exadata(ORACLE)MySQL(Sun Microsystems)MonetDB(Open Source)主にOLTP用途主にDWH用途買収等2005
    • 8Copyright © 2013 Insight Technology, Inc. All Rights Reserved.201xVertica(HP)Asterdata(Teradata)Redshift(Amazon) ParAccel(Actian 旧Ingres)主にOLTP用途主にDWH用途買収等Vectorwise(Actian 旧Ingres)Sybase (IQ)(SAP)Netezza(IBM)Greenplum(EMC)InfiniDB(Calpont)SAP HANA(SAP)MySQL(ORACLE)2013
    • 9Copyright © 2013 Insight Technology, Inc. All Rights Reserved.Non-Clusterで世界最速(TPC-H)
    • 10VectorwiseのイノベーションCopyright © 2013 Insight Technology, Inc. All Rights Reserved.Time/CyclestoProcessDataProcessedDISKRAMCHIP10GB2-3GB40-400MB2-20150-250MillionsCPUの最適化(オンチップコンピューティング)カラム指向データベース圧縮CPUが持つSIMD機能をフル活用。※メモリより高速なCPUキャッシュ上でデータを処理することで、高速な処理を実現。カラムごとの格納構造のため、分析において、不要なカラムを読み込まない。データを、自動的にカラムごとに圧縮するため、高い圧縮率と効率的なデータ処理(領域の削減、I/O性能の向上)を実現。Queryの並列処理Queryを並列処理し、メニーコアに対する高いスケーラビリティ効率的なブロックI/O各データブロックに対して自動的に最大値、最小値を格納し、検索時に利用するストレージインデックス
    • 11カラム指向データベースのメリットCopyright © 2013 Insight Technology, Inc. All Rights Reserved.• 列指向とは?• メリットは?(シーケンシャルな)アクセス効率 + データ圧縮 = 分析基盤に向いているProd ID Prod NameProd ID Prod NameProd ID Prod NameProd ID Prod NameProd ID Prod NameDateDateDateDateDateProd ID Prod NameProd ID Prod NameProd ID Prod NameProd ID Prod NameProd ID Prod NameDateDateDateDateDate1ブロックには様々なタイプのデータが格納されているので圧縮効率を上げにくい1ブロックには同様のタイプのデータが格納されているので圧縮効率を上げやすい
    • 12カラム指向データベースのデメリットCopyright © 2013 Insight Technology, Inc. All Rights Reserved.• デメリットは?一般的に(ランダムな)アクセスが非効率 + データ圧縮 = OLTP基盤に向いていないProd ID Prod NameProd ID Prod NameProd ID Prod NameProd ID Prod NameProd ID Prod NameDateDateDateDateDateProd ID Prod NameProd ID Prod NameProd ID Prod NameProd ID Prod NameProd ID Prod NameDateDateDateDateDate更新時に圧縮・展開のオーバーヘッドが大きい(*1)
    • 13ベクトル処理とキャッシュ最適化Copyright © 2013 Insight Technology, Inc. All Rights Reserved.SIMD (Single Instruction Multiple Data)Pentium ⅢよりSSE(Streaming SIMD Extensions)として搭載され、Sandy BridgeよりIntel AVX(Advanced Vector eXtensions)へ・・・・・・・・・・・・・・・InstructionDataOutput
    • 14+ 雑談Copyright © 2013 Insight Technology, Inc. All Rights Reserved.RDBMSは、1つの仕事しかしない。というわけがないので、あくまでも雑談レベルとしてみてください。上記は、各データベースの全インストラクション中に、XMMレジスタ(128ビット)を使った処理の割合です。VectorwiseがSIMDに最適化されたコード(であろうことが窺えます…)4.31.30.41.70.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0Vectorwise(x100_server)PostgreSQLMySQL某商用DB X全インストラクション中に含まれるXMMレジスタを使用した割合(%)
    • 15反響の多かったロードを含めた性能比較Copyright © 2013 Insight Technology, Inc. All Rights Reserved.Redhat EnterpriseLinux 6.3 64bitIntel Xeon L56402.27GHz(6core) * 248GBSAS HDD * 2 (RAID1)いろいろ環境
    • 16反響の多かったロードを含めた性能比較Copyright © 2013 Insight Technology, Inc. All Rights Reserved.TPC-H(dbgen) 10GBをロード時のパフォーマンス(秒) – インデックスなし -MySQL5.1PostgreSQL8.4customer(234MB/1.5M rows)lineitem(7416MB/60M rows)nation(0MB/25 rows)orders(1668MB/15M rows)part(232MB/2.0M rows)partsupp(1149MB/8.0M rows)region(0MB/5 rows)supplier(14MB/0.1M rows)Total(10GB/86.6M rows)Actual DB Size(10GB/86.6M rows)商用RDBMSXVectorwise3.0某カラムナーDB(1)某カラムナーDB(2)
    • 17Copyright © 2013 Insight Technology, Inc. All Rights Reserved.反響の多かったロードを含めた性能比較0246810121416180200400600800100012001400PostgreSQL8.4MySQL5.1商用RDBMSXVectorwise3.0某カラムナーDB(1)某カラムナーDB(2)データロード性能データサイズ(GB) ロード時間(秒)(秒) (GB)
    • 18反響の多かったロードを含めた性能比較Copyright © 2013 Insight Technology, Inc. All Rights Reserved.TPC-H(qgen) 10GBに対するQuery時のパフォーマンス(秒) - キャッシュなし -MySQL5.1PostgreSQL8.4Query1Query3Query4Query6Query7Query8Query9Query10Query11Query12Query13Query14Query16Query18Query19Query20Query21Query22Total商用RDBMSXVectorwise3.0某カラムナーDB(1)某カラムナーDB(2)MySQLはインデックスなしでは返ってこないので、Primary Keyのみ付与
    • 19実際にPoCを実施した結果(チラっと)Copyright © 2013 Insight Technology, Inc. All Rights Reserved.Redhat EnterpriseLinux 6.3 64bitIntel Xeon E5-46502.70GHz(8core) * 4512GBSAS SSD * 8(RAID10)Vectorwise 2.5.1環境
    • 20某お客様にて、POSデータ分析のPoC– Vectorwiseのデータ量と処理速度の関係• データ量を75億件、150億件、340億件と変えて同一SQLを実行– VectorwiseのCPU数と処理速度の関係• 使用するCPU数(Vectorwise側で)を変えて同一のSQLを実行– SQLイメージ(インデックスなし)購買年齢層別売上金額“SELECT age, sum(amt) FROM pos GROUP BY age”店舗指定(範囲)売上金額“SELECT shop,sum(amt) FROM posWHERE shop BETWEEN 2 and 5 GROUP BY shop”Copyright © 2013 Insight Technology, Inc. All Rights Reserved.実際にPoCを実施した結果(チラっと)
    • 21Copyright © 2013 Insight Technology, Inc. All Rights Reserved.実際にPoCを実施した結果(チラっと)2.194.29.6702468101275億件 150億件 340億件経過秒数(秒)店舗指定(範囲)売上金額1.471.821.7200.20.40.60.811.21.41.61.8275億件 150億件 340億件経過秒数購買年齢層別売上金額データ量と処理速度の関係
    • 22Copyright © 2013 Insight Technology, Inc. All Rights Reserved.実際にPoCを実施した結果(チラっと)9.67 14.6927.3753.84105.33020406080100120DOP=32 DOP=16 DOP=8 DOP=4 DOP=2経過秒数(秒)購買年齢層別売上金額1.722.775.099.5318.5302468101214161820DOP=32 DOP=16 DOP=8 DOP=4 DOP=2経過秒数店舗指定(範囲)売上金額CPU数と処理速度の関係(340億件固定)
    • 23アプライアンスはイノベーションか?Copyright © 2013 Insight Technology, Inc. All Rights Reserved.肝は、- H/W性能を徹底的に使い切るS/Wのイノベーション- S/W特性に合わせた最新H/Wのコンフィグレーション
    • 24H/Wのイノベーションも活用Copyright © 2013 Insight Technology, Inc. All Rights Reserved.×136H/W: 汎用サーバー H/W: Insight QubeH/W: 汎用サーバー×13
    • 25Copyright © 2013 Insight Technology, Inc. All Rights Reserved.99%1%tweets demo tweets世界中のツイート(*1)の1%を抽出(2012/4/23 - 2012/4/25)ツイートの語句解析(MeCabによる形態素解析)データベースにロードデモのためデータを5倍に増幅- ツイートデータで1000万件(10GB)- 解析後語句データで260万件(100MB)データロードは各データベースベンダーが用意するローダーを使用1000万件のツイートデータから世界のツイート数の国別ランキングを出してみると?1000万件のツイートデータから世界のツイートの時間帯別ツイート数の推移を見てみると?1000万件のツイートデータと260万件の解析後の語句データから日本でホットだったキーワードを探ってみると?+DEMO
    • 26Copyright © 2013 Insight Technology, Inc. All Rights Reserved.Redhat EnterpriseLinux 5.7 64bitIntel Xeon X56723.20GHz * 248GBRedhat EnterpriseLinux 5.7 64bitIntel Xeon E56452.40GHz * 448GBSATA SSD * 6(RAID10)Vectorwise 2.5.1SATA 1K rpm HDD *18 (RAID50)DBMS XVectorwise DBMS X+DEMO
    • 27+DEMOCopyright © 2013 Insight Technology, Inc. All Rights Reserved.
    • 28Copyright © 2013 Insight Technology, Inc. All Rights Reserved.DBのイノベーションはとっくの昔におきてますそのDWHシステムは、そのデータベースでいいんですか?
    • 29Copyright © 2013 Insight Technology, Inc. All Rights Reserved.