SlideShare une entreprise Scribd logo
1  sur  27
Télécharger pour lire hors ligne
【SIGMOD2012勉強会】


    Session 7: Storage Systems, Query
          Processing and Optimization
                           担当: 山室健(NTT)



1
Today Outline
       1. bLSM: A General Purpose Log Structured Merge Tree
           Russell Sears, Yahoo! Research; Raghu Ramakrishnan, Yahoo!
            Research
       2. NoDB: Efficient Query Execution on Raw Data File
           Ioannis Alagiannis, EPFL; Renata Borovica, EPFL; Miguel
            Branco, EPFL; Stratos Idreos, CWI; Anastasia Ailamaki, EPFL
       3. Skeleton Automata for FPGAs: Reconfiguring without
        Reconstructing
           Jens Teubner, ETH Zürich; Louis Woods, ETH Zürich;
            Chongling Nie, ETH Zürich



    2       Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree
- Russell Sears, Yahoo! Research; Raghu Ramakrishnan, Yahoo! Research




   3   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

         論文概要
             Update/insert-intensiveな環境向けのLSM木(’96年)の改良
              であるbLSM木*1を提案、 B木に近いlookup/scan性能と時間
              有界保証のあるmerge処理(後述)を実現
         技術背景                                       update   -- read&modify values
                                                     insert   – append a new key/value pair
             B木の特徴                                  lookup   – read a single key/value pair
                                                     scan     – read a range of key/value pairs
                 scan/lookup性能はほぼ最適
                 update/insertの際のシーク回数はやや多い
             LSM木の特徴
                 ならし解析的にupdate/insertのコストが良い
                 scan/lookupの際のシーク回数が要素数の対数必要
                 update/insertが内部データのmerge処理に阻害される
*1Yahoo!のPNUTS[10]/Walnut[9]のバックエンドとして使用

      4       Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

         論文概要
             Update/insert-intensiveな環境向けのLSM木(’96年)の改良
              であるbLSM木*1を提案、 B木に近いlookup/scan性能と時間
              有界保証のあるmerge処理(後述)を実現
         技術背景                                       update   -- read&modify values
                                                     insert   – append a new key/value pair
             B木の特徴                                  lookup   – read a single key/value pair
                                                     scan     – read a range of key/value pairs
                 scan/lookup性能はほぼ最適
                 update/insertの際のシーク回数はやや多い
                                          目標
             LSM木の特徴                                                          bLSM木
                                       継承
               ならし解析的にupdate/insertのコストが良い
                                               改善
                 scan/lookupの際のシーク回数が要素数の対数必要
                 update/insertが内部データのmerge処理に阻害される
*1Yahoo!のPNUTS[10]/Walnut[9]のバックエンドとして使用

      5       Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

            LSM木[25]の概要
                update/insert-intensiveな環境に最適化された索引木
                変更内容をメモリ上(図のC0)で遅
                 延させてバッチ的にディスク上の
                 データ(図でC1*1)にmerge
                merge処理は順読み込みのみ
                     シーク回数を最小化
                検索は遅い
                     分割されている全てのデータ(図の
                      C0とC1 )が検索対象となるため
                merge処理がupdate/insertを阻害                    参考文献[25]のFigure2.2から引用
                                                                (Merge処理の概要)

 ディスク上のデータは段階的に複数個で構成されていても良い、つまりC1、C2、C3・・・
*1

         6           Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

       LSM木の様々な適用例
           Google Bigtable
           Apache HBase
           Cassandra pre1.0
               sizeに応じた2段階粒度のmerge処理: major&minor compaction
           TokuDB
           LevelDB
               exponential-sized level、file partitioning、fractional cascading
           Riak
               LevelDB + customized merge scheduler & bloom filter




    7       Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

       LSM木の課題: merge処理がupdate/insertを阻害
           merge処理中のinsertのlatencyが増大(下図)




                引用: MySQL vs. LevelDB, https://github.com/m1ch1/mapkeeper/wiki/MySQL-vs.-LevelDB


    8       Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

       bLSMの概要
           lookup/scan処理の最適化
               C0、C1とC2の3-level固定の構成/bloom filter/file partitioning
           Merge処理の最適化
               Level Schedulerによるupdate/insertとmerge処理の同期化




                             本論文内のFigure 1から引用
    9       Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

      Level(Spring & Gear) Scheduler
          update/insertで書き込むデータとmerge量との比率(ギア
           比)を調整して、それぞれのスレッドを同期化
          APが行うupdate/insertを中断させず継続させることが目的




       各スレッドをスケジューラで同期化

                              本論文内のFigure 1/5から引用

※絵で描くのは簡単だが、実装は大変らしいです→https://github.com/sears/bLSM
      10   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

     bLSMの性能概要
         Update系の処理はLevelDB(LSM木)に対しても有利
             R/Wの際のRの処理をBloom-Filterで最適化
         Lookup/scan系の処理もB+Treeに近い性能
             Bloom FilterとPartitioning
         UniformなUpdateは有界時間で完了
             ただし、集中したUpdateの場合は保証できない                           シーク回数
本論文内のTable 1から引用




     11   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

     bLSMの性能概要
         Update系の処理はLevelDB(LSM木)に対しても有利
             R/Wの際のRの処理をBloom-Filterで最適化
         Lookup/scan系の処理もB+Treeに近い性能
             Bloom FilterとPartitioning
         UniformなUpdateは有界時間で完了
             ただし、集中したUpdateの場合は保証できない                           シーク回数
本論文内のTable 1から引用




     12   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

     bLSMの性能概要
         Update系の処理はLevelDB(LSM木)に対しても有利
             R/Wの際のRの処理をBloom-Filterで最適化
         Lookup/scan系の処理もB+Treeに近い性能
             Bloom FilterとPartitioning
         UniformなUpdateは有界時間で完了
             ただし、集中したUpdateの場合は保証できない                           シーク回数
本論文内のTable 1から引用




     13   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

    bLSMの性能結果
        Schedulerの恩恵により、latencyのスパイクが減少




                          本論文内のFigure 7から引用
                         左がbLSM木、右がLSM木(LSM木)


    14   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

    bLSMの性能結果
        lookup性能がB木(InnoDB)より良い結果に
        未記載だがshort-range scanはInnoDBの性能が良い




                           本論文内のFigure 8から引用
    15   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
1. bLSM: A General Purpose Log Structured Merge Tree

    bLSMの性能結果
        lookup性能がB木(InnoDB)より良い結果に
        未記載だがshort-range scanはInnoDBの性能が良い
                                                        bLSM木は100% writeで
                                                           33,000ops/sec.




                           本論文内のFigure 8から引用
    16   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
2. NoDB: Efficient Query Execution on Raw Data File
 - Ioannis Alagiannis, EPFL; Renata Borovica, EPFL; Miguel Branco, EPFL;
Stratos Idreos, CWI; Anastasia Ailamaki, EPFL




   17   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
2. NoDB: Efficient Query Execution on Raw Data File
    論文概要
        データ規模が大きくなるにつれてコストが高くなるDBへのデー
         タロードの課題に着手、データのロードをなくしつつ既存のDB
         機能を利用する新たなシステムデザイン(NoDB)の提案、ま
         たこれをPostgreSQL上に実装したPostgreRawを提示
    研究背景
        CIDER’11の”Here are my Data Files. Here are my Queries.
         Where are my Results?”[15]のAdaptive Loadingが先駆け
        ICDE’12でAilamaki先生が「The Future of Scientific Data
         Bases」パネリストとして参加、NoDBの話題
        SIGMOD’12採択←いまここ


    18   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
2. NoDB: Efficient Query Execution on Raw Data File
    NoDBの目標
        必要なデータをRawFile(CSVファイル等)から適宜読み込み
         解析する(In situ Processing)ことで、ロード時間をなくしロード
         済みのDBとほぼ同等の性能を目指す

    DBMS w external files?
        Oracle/PostgreSQL/MySQL等
         にはRawFileを内部Relationとし
         てみせる機能が実装済み




                                               本論文内のFigure 1から引用
                                             ※Q1~Q4は任意のクエリを表している
    19   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
2. NoDB: Efficient Query Execution on Raw Data File
    「DBMS w external files」との差分機能
        1. Selective tokenizing/parsing/tuple formation
            RawFileにおける各行の必要カラムのみを変換
        2. Adaptive indexing (positional map)
            B木のように全ての行の対応関係を保持
             するのではなく参照
             に応じて適宜記憶




        3. Tuple caching                     本論文内のFigure 2から引用
            一度読み込んだtupleを参照頻度に応じてcaching

    20   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
2. NoDB: Efficient Query Execution on Raw Data File
    性能評価
        PostgresRaw PM + C (Positional Map + Cache enabled)
        クエリQ1~Q9の詳細は明記無し・・・
            単純なWHERE句を用いたSELECTでselectivity/projectivityを変化




                              本論文内のFigure 7から引用
    21   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
3. Skeleton Automata for FPGAs
 - Jens Teubner, ETH Zürich; Louis Woods, ETH Zürich; Chongling Nie, ETH Zürich




   22   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
3. Skeleton Automata for FPGAs
    論文概要
        部分的な処理をオフロードする 処理の記述能力を落とさず
         にFPGAにおけるコンパイルコストを解消したXML Projection
         (ストリームデータのFiltering処理)を実現

    技術背景
        処理の高速化を目的に部分的処理を
         FPGAにオフロード
        処理に応じたプログラムの組み替え
         (コンパイル)に数時間かかることも


                                                       引用: wikipediaのFPGA項
                                                       ※FPGAはプログラム可能なLSIのこと

    23   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
3. Skeleton Automata for FPGAs
    余談




                引用: http://japan.zdnet.com/development/analysis/35021200/



    24   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
3. Skeleton Automata for FPGAs
     XML Projection[14]
         クエリに記述された条件に合致する要素を抽出(Filtering)
XML Projection処理例:




               右図の赤背景部を抽出



                                                 本論文内のFigure 1から引用
     25   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
3. Skeleton Automata for FPGAs
    基本アプローチ
        XML ProjectionはNFAに変換可能
        [N|D]FAはFPGA上で容易に表現可能
        Skeleton Automata: FAの雛型をもちいることでパラメータの変更の
         みで処理の変更に対応




                    NFAのイプシロン遷移に対応

                          本論文内のFigure 3/4から引用
    26   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
3. Skeleton Automata for FPGAs
    性能評価
        Saxon-EEを用いたFiltering(下図網掛け棒)との比較
            in-memory処理向けのXMLプロセッサ
        XMark benchmark suite [22].を使用




                          本論文内のFigure 15から引用
    27   Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)

Contenu connexe

Tendances

[db tech showcase Tokyo 2017] E23: クラウド異種データベース(AWS)へのデータベース移行時の注意点 ~レプリケーション...
[db tech showcase Tokyo 2017] E23: クラウド異種データベース(AWS)へのデータベース移行時の注意点 ~レプリケーション...[db tech showcase Tokyo 2017] E23: クラウド異種データベース(AWS)へのデータベース移行時の注意点 ~レプリケーション...
[db tech showcase Tokyo 2017] E23: クラウド異種データベース(AWS)へのデータベース移行時の注意点 ~レプリケーション...Insight Technology, Inc.
 
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...Insight Technology, Inc.
 
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)Colin Charles
 
事例から見るNoSQLの使い方 - db tech showcase Tokyo 2015 2015/06/11
事例から見るNoSQLの使い方 - db tech showcase Tokyo 2015 2015/06/11事例から見るNoSQLの使い方 - db tech showcase Tokyo 2015 2015/06/11
事例から見るNoSQLの使い方 - db tech showcase Tokyo 2015 2015/06/11MapR Technologies Japan
 
[db tech showcase Tokyo 2017] E34: データベース・サービスを好きなところで動かそう Db2 Warehouse by 日...
[db tech showcase Tokyo 2017] E34: データベース・サービスを好きなところで動かそう Db2 Warehouse by 日...[db tech showcase Tokyo 2017] E34: データベース・サービスを好きなところで動かそう Db2 Warehouse by 日...
[db tech showcase Tokyo 2017] E34: データベース・サービスを好きなところで動かそう Db2 Warehouse by 日...Insight Technology, Inc.
 
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイントPostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイントNTT DATA OSS Professional Services
 
IBM版Hadoop - BigInsights/Big SQL (2013/07/26 CLUB DB2発表資料)
IBM版Hadoop - BigInsights/Big SQL (2013/07/26 CLUB DB2発表資料)IBM版Hadoop - BigInsights/Big SQL (2013/07/26 CLUB DB2発表資料)
IBM版Hadoop - BigInsights/Big SQL (2013/07/26 CLUB DB2発表資料)Akira Shimosako
 
Yahoo! JAPANのOracle構成-2017年版
Yahoo! JAPANのOracle構成-2017年版Yahoo! JAPANのOracle構成-2017年版
Yahoo! JAPANのOracle構成-2017年版Makoto Sato
 
[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...
[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...
[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...Insight Technology, Inc.
 
20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京
20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京
20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京Koichiro Sasaki
 
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@KyotoPostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@KyotoShigeru Hanada
 
簡単!AWRをEXCELピボットグラフで分析しよう♪
簡単!AWRをEXCELピボットグラフで分析しよう♪簡単!AWRをEXCELピボットグラフで分析しよう♪
簡単!AWRをEXCELピボットグラフで分析しよう♪Yohei Azekatsu
 
大規模ログ分析におけるAmazon Web Servicesの活用
大規模ログ分析におけるAmazon Web Servicesの活用大規模ログ分析におけるAmazon Web Servicesの活用
大規模ログ分析におけるAmazon Web Servicesの活用Shintaro Takemura
 
[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki Ohasi
[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki Ohasi[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki Ohasi
[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki OhasiInsight Technology, Inc.
 
[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...
[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...
[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...Insight Technology, Inc.
 
VLDB2015 会議報告
VLDB2015 会議報告VLDB2015 会議報告
VLDB2015 会議報告Yuto Hayamizu
 
SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能
SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能
SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能Koichiro Sasaki
 
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...Insight Technology, Inc.
 
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)Chika SATO
 

Tendances (20)

[db tech showcase Tokyo 2017] E23: クラウド異種データベース(AWS)へのデータベース移行時の注意点 ~レプリケーション...
[db tech showcase Tokyo 2017] E23: クラウド異種データベース(AWS)へのデータベース移行時の注意点 ~レプリケーション...[db tech showcase Tokyo 2017] E23: クラウド異種データベース(AWS)へのデータベース移行時の注意点 ~レプリケーション...
[db tech showcase Tokyo 2017] E23: クラウド異種データベース(AWS)へのデータベース移行時の注意点 ~レプリケーション...
 
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
 
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
 
事例から見るNoSQLの使い方 - db tech showcase Tokyo 2015 2015/06/11
事例から見るNoSQLの使い方 - db tech showcase Tokyo 2015 2015/06/11事例から見るNoSQLの使い方 - db tech showcase Tokyo 2015 2015/06/11
事例から見るNoSQLの使い方 - db tech showcase Tokyo 2015 2015/06/11
 
[db tech showcase Tokyo 2017] E34: データベース・サービスを好きなところで動かそう Db2 Warehouse by 日...
[db tech showcase Tokyo 2017] E34: データベース・サービスを好きなところで動かそう Db2 Warehouse by 日...[db tech showcase Tokyo 2017] E34: データベース・サービスを好きなところで動かそう Db2 Warehouse by 日...
[db tech showcase Tokyo 2017] E34: データベース・サービスを好きなところで動かそう Db2 Warehouse by 日...
 
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイントPostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
 
IBM版Hadoop - BigInsights/Big SQL (2013/07/26 CLUB DB2発表資料)
IBM版Hadoop - BigInsights/Big SQL (2013/07/26 CLUB DB2発表資料)IBM版Hadoop - BigInsights/Big SQL (2013/07/26 CLUB DB2発表資料)
IBM版Hadoop - BigInsights/Big SQL (2013/07/26 CLUB DB2発表資料)
 
Yahoo! JAPANのOracle構成-2017年版
Yahoo! JAPANのOracle構成-2017年版Yahoo! JAPANのOracle構成-2017年版
Yahoo! JAPANのOracle構成-2017年版
 
[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...
[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...
[db tech showcase Tokyo 2015] C17:MySQL Cluster ユーザー事例紹介~JR東日本情報システム様における導入事例...
 
20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京
20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京
20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京
 
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@KyotoPostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
 
簡単!AWRをEXCELピボットグラフで分析しよう♪
簡単!AWRをEXCELピボットグラフで分析しよう♪簡単!AWRをEXCELピボットグラフで分析しよう♪
簡単!AWRをEXCELピボットグラフで分析しよう♪
 
Oracle Data Guard による高可用性
Oracle Data Guard による高可用性Oracle Data Guard による高可用性
Oracle Data Guard による高可用性
 
大規模ログ分析におけるAmazon Web Servicesの活用
大規模ログ分析におけるAmazon Web Servicesの活用大規模ログ分析におけるAmazon Web Servicesの活用
大規模ログ分析におけるAmazon Web Servicesの活用
 
[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki Ohasi
[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki Ohasi[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki Ohasi
[D13] Disaster Recovery環境をOracle Standard Editionでつくる by Miyuki Ohasi
 
[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...
[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...
[db tech showcase Tokyo 2015] B36:Hitachi Advanced Data Binder 実践SQLチューニング方法 ...
 
VLDB2015 会議報告
VLDB2015 会議報告VLDB2015 会議報告
VLDB2015 会議報告
 
SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能
SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能
SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能
 
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
 
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)
 

Similaire à SIGMOD’12勉強会 -Session 7-

VLDB’11勉強会 -Session 9-
VLDB’11勉強会 -Session 9-VLDB’11勉強会 -Session 9-
VLDB’11勉強会 -Session 9-Takeshi Yamamuro
 
C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努Insight Technology, Inc.
 
SIGMOD'10勉強会 -Session 8-
SIGMOD'10勉強会 -Session 8-SIGMOD'10勉強会 -Session 8-
SIGMOD'10勉強会 -Session 8-Takeshi Yamamuro
 
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史Insight Technology, Inc.
 
ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)NTT DATA Technology & Innovation
 
Elastic7.12 release-new-features-on-0428
Elastic7.12 release-new-features-on-0428Elastic7.12 release-new-features-on-0428
Elastic7.12 release-new-features-on-0428Shotaro Suzuki
 
第6回インターネットと運用技術シンポジウム WIPセッション
第6回インターネットと運用技術シンポジウム WIPセッション第6回インターネットと運用技術シンポジウム WIPセッション
第6回インターネットと運用技術シンポジウム WIPセッションHiroki Kashiwazaki
 
[INSIGHT OUT 2011] A12 ひとつのデータベース技術では生き残れない part1 カラムナーデータベース(Shinkubo)
[INSIGHT OUT 2011] A12 ひとつのデータベース技術では生き残れない part1 カラムナーデータベース(Shinkubo)[INSIGHT OUT 2011] A12 ひとつのデータベース技術では生き残れない part1 カラムナーデータベース(Shinkubo)
[INSIGHT OUT 2011] A12 ひとつのデータベース技術では生き残れない part1 カラムナーデータベース(Shinkubo)Insight Technology, Inc.
 
VLDB'10勉強会 -Session 2-
VLDB'10勉強会 -Session 2-VLDB'10勉強会 -Session 2-
VLDB'10勉強会 -Session 2-Takeshi Yamamuro
 
プロとしてのOracleアーキテクチャ入門 ~番外編~
プロとしてのOracleアーキテクチャ入門 ~番外編~プロとしてのOracleアーキテクチャ入門 ~番外編~
プロとしてのOracleアーキテクチャ入門 ~番外編~ryouta watabe
 
What's new in Couchbase Server 4.0 ja
What's new in Couchbase Server 4.0 jaWhat's new in Couchbase Server 4.0 ja
What's new in Couchbase Server 4.0 jaCouchbase Japan KK
 
[DI15] Build 2017 Updates ~ Azure Database for MySQL/PostgreSQL 最速紹介
[DI15] Build 2017 Updates ~ Azure Database for MySQL/PostgreSQL 最速紹介[DI15] Build 2017 Updates ~ Azure Database for MySQL/PostgreSQL 最速紹介
[DI15] Build 2017 Updates ~ Azure Database for MySQL/PostgreSQL 最速紹介de:code 2017
 
20190314 PGStrom Arrow_Fdw
20190314 PGStrom Arrow_Fdw20190314 PGStrom Arrow_Fdw
20190314 PGStrom Arrow_FdwKohei KaiGai
 
[INSIGHT OUT 2011] C27 今こそBCPを考える ~コスト・要件に応じたデータベースのディザスタ・リカバリを提案しよう!~(kishida)
[INSIGHT OUT 2011] C27 今こそBCPを考える ~コスト・要件に応じたデータベースのディザスタ・リカバリを提案しよう!~(kishida)[INSIGHT OUT 2011] C27 今こそBCPを考える ~コスト・要件に応じたデータベースのディザスタ・リカバリを提案しよう!~(kishida)
[INSIGHT OUT 2011] C27 今こそBCPを考える ~コスト・要件に応じたデータベースのディザスタ・リカバリを提案しよう!~(kishida)Insight Technology, Inc.
 
Principles of Transaction Processing Second Edition 9章 4~9節
Principles of Transaction Processing Second Edition 9章 4~9節Principles of Transaction Processing Second Edition 9章 4~9節
Principles of Transaction Processing Second Edition 9章 4~9節Yuichiro Saito
 
Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)Yoshinori Matsunobu
 
AWSのデータベースサービス全体像
AWSのデータベースサービス全体像AWSのデータベースサービス全体像
AWSのデータベースサービス全体像Amazon Web Services Japan
 
PGXのレスポンスとリソース消費
PGXのレスポンスとリソース消費PGXのレスポンスとリソース消費
PGXのレスポンスとリソース消費Tatsumi Akinori
 
新機能によるデータベースシステムの改善ポイント
新機能によるデータベースシステムの改善ポイント新機能によるデータベースシステムの改善ポイント
新機能によるデータベースシステムの改善ポイントオラクルエンジニア通信
 

Similaire à SIGMOD’12勉強会 -Session 7- (20)

VLDB’11勉強会 -Session 9-
VLDB’11勉強会 -Session 9-VLDB’11勉強会 -Session 9-
VLDB’11勉強会 -Session 9-
 
C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努
 
SIGMOD'10勉強会 -Session 8-
SIGMOD'10勉強会 -Session 8-SIGMOD'10勉強会 -Session 8-
SIGMOD'10勉強会 -Session 8-
 
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
 
ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 
Elastic7.12 release-new-features-on-0428
Elastic7.12 release-new-features-on-0428Elastic7.12 release-new-features-on-0428
Elastic7.12 release-new-features-on-0428
 
Oracle Database 12c R1 主要新機能のご紹介
Oracle Database 12c R1 主要新機能のご紹介Oracle Database 12c R1 主要新機能のご紹介
Oracle Database 12c R1 主要新機能のご紹介
 
第6回インターネットと運用技術シンポジウム WIPセッション
第6回インターネットと運用技術シンポジウム WIPセッション第6回インターネットと運用技術シンポジウム WIPセッション
第6回インターネットと運用技術シンポジウム WIPセッション
 
[INSIGHT OUT 2011] A12 ひとつのデータベース技術では生き残れない part1 カラムナーデータベース(Shinkubo)
[INSIGHT OUT 2011] A12 ひとつのデータベース技術では生き残れない part1 カラムナーデータベース(Shinkubo)[INSIGHT OUT 2011] A12 ひとつのデータベース技術では生き残れない part1 カラムナーデータベース(Shinkubo)
[INSIGHT OUT 2011] A12 ひとつのデータベース技術では生き残れない part1 カラムナーデータベース(Shinkubo)
 
VLDB'10勉強会 -Session 2-
VLDB'10勉強会 -Session 2-VLDB'10勉強会 -Session 2-
VLDB'10勉強会 -Session 2-
 
プロとしてのOracleアーキテクチャ入門 ~番外編~
プロとしてのOracleアーキテクチャ入門 ~番外編~プロとしてのOracleアーキテクチャ入門 ~番外編~
プロとしてのOracleアーキテクチャ入門 ~番外編~
 
What's new in Couchbase Server 4.0 ja
What's new in Couchbase Server 4.0 jaWhat's new in Couchbase Server 4.0 ja
What's new in Couchbase Server 4.0 ja
 
[DI15] Build 2017 Updates ~ Azure Database for MySQL/PostgreSQL 最速紹介
[DI15] Build 2017 Updates ~ Azure Database for MySQL/PostgreSQL 最速紹介[DI15] Build 2017 Updates ~ Azure Database for MySQL/PostgreSQL 最速紹介
[DI15] Build 2017 Updates ~ Azure Database for MySQL/PostgreSQL 最速紹介
 
20190314 PGStrom Arrow_Fdw
20190314 PGStrom Arrow_Fdw20190314 PGStrom Arrow_Fdw
20190314 PGStrom Arrow_Fdw
 
[INSIGHT OUT 2011] C27 今こそBCPを考える ~コスト・要件に応じたデータベースのディザスタ・リカバリを提案しよう!~(kishida)
[INSIGHT OUT 2011] C27 今こそBCPを考える ~コスト・要件に応じたデータベースのディザスタ・リカバリを提案しよう!~(kishida)[INSIGHT OUT 2011] C27 今こそBCPを考える ~コスト・要件に応じたデータベースのディザスタ・リカバリを提案しよう!~(kishida)
[INSIGHT OUT 2011] C27 今こそBCPを考える ~コスト・要件に応じたデータベースのディザスタ・リカバリを提案しよう!~(kishida)
 
Principles of Transaction Processing Second Edition 9章 4~9節
Principles of Transaction Processing Second Edition 9章 4~9節Principles of Transaction Processing Second Edition 9章 4~9節
Principles of Transaction Processing Second Edition 9章 4~9節
 
Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)
 
AWSのデータベースサービス全体像
AWSのデータベースサービス全体像AWSのデータベースサービス全体像
AWSのデータベースサービス全体像
 
PGXのレスポンスとリソース消費
PGXのレスポンスとリソース消費PGXのレスポンスとリソース消費
PGXのレスポンスとリソース消費
 
新機能によるデータベースシステムの改善ポイント
新機能によるデータベースシステムの改善ポイント新機能によるデータベースシステムの改善ポイント
新機能によるデータベースシステムの改善ポイント
 

Plus de Takeshi Yamamuro

LT: Spark 3.1 Feature Expectation
LT: Spark 3.1 Feature ExpectationLT: Spark 3.1 Feature Expectation
LT: Spark 3.1 Feature ExpectationTakeshi Yamamuro
 
Quick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + αQuick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + αTakeshi Yamamuro
 
MLflowによる機械学習モデルのライフサイクルの管理
MLflowによる機械学習モデルのライフサイクルの管理MLflowによる機械学習モデルのライフサイクルの管理
MLflowによる機械学習モデルのライフサイクルの管理Takeshi Yamamuro
 
Taming Distributed/Parallel Query Execution Engine of Apache Spark
Taming Distributed/Parallel Query Execution Engine of Apache SparkTaming Distributed/Parallel Query Execution Engine of Apache Spark
Taming Distributed/Parallel Query Execution Engine of Apache SparkTakeshi Yamamuro
 
LLJVM: LLVM bitcode to JVM bytecode
LLJVM: LLVM bitcode to JVM bytecodeLLJVM: LLVM bitcode to JVM bytecode
LLJVM: LLVM bitcode to JVM bytecodeTakeshi Yamamuro
 
20180417 hivemall meetup#4
20180417 hivemall meetup#420180417 hivemall meetup#4
20180417 hivemall meetup#4Takeshi Yamamuro
 
An Experimental Study of Bitmap Compression vs. Inverted List Compression
An Experimental Study of Bitmap Compression vs. Inverted List CompressionAn Experimental Study of Bitmap Compression vs. Inverted List Compression
An Experimental Study of Bitmap Compression vs. Inverted List CompressionTakeshi Yamamuro
 
Sparkのクエリ処理系と周辺の話題
Sparkのクエリ処理系と周辺の話題Sparkのクエリ処理系と周辺の話題
Sparkのクエリ処理系と周辺の話題Takeshi Yamamuro
 
VLDB2013 R1 Emerging Hardware
VLDB2013 R1 Emerging HardwareVLDB2013 R1 Emerging Hardware
VLDB2013 R1 Emerging HardwareTakeshi Yamamuro
 
浮動小数点(IEEE754)を圧縮したい@dsirnlp#4
浮動小数点(IEEE754)を圧縮したい@dsirnlp#4浮動小数点(IEEE754)を圧縮したい@dsirnlp#4
浮動小数点(IEEE754)を圧縮したい@dsirnlp#4Takeshi Yamamuro
 
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)Takeshi Yamamuro
 
A x86-optimized rank&select dictionary for bit sequences
A x86-optimized rank&select dictionary for bit sequencesA x86-optimized rank&select dictionary for bit sequences
A x86-optimized rank&select dictionary for bit sequencesTakeshi Yamamuro
 
研究動向から考えるx86/x64最適化手法
研究動向から考えるx86/x64最適化手法研究動向から考えるx86/x64最適化手法
研究動向から考えるx86/x64最適化手法Takeshi Yamamuro
 
VLDB'10勉強会 -Session 20-
VLDB'10勉強会 -Session 20-VLDB'10勉強会 -Session 20-
VLDB'10勉強会 -Session 20-Takeshi Yamamuro
 

Plus de Takeshi Yamamuro (19)

LT: Spark 3.1 Feature Expectation
LT: Spark 3.1 Feature ExpectationLT: Spark 3.1 Feature Expectation
LT: Spark 3.1 Feature Expectation
 
Apache Spark + Arrow
Apache Spark + ArrowApache Spark + Arrow
Apache Spark + Arrow
 
Quick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + αQuick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + α
 
MLflowによる機械学習モデルのライフサイクルの管理
MLflowによる機械学習モデルのライフサイクルの管理MLflowによる機械学習モデルのライフサイクルの管理
MLflowによる機械学習モデルのライフサイクルの管理
 
Taming Distributed/Parallel Query Execution Engine of Apache Spark
Taming Distributed/Parallel Query Execution Engine of Apache SparkTaming Distributed/Parallel Query Execution Engine of Apache Spark
Taming Distributed/Parallel Query Execution Engine of Apache Spark
 
LLJVM: LLVM bitcode to JVM bytecode
LLJVM: LLVM bitcode to JVM bytecodeLLJVM: LLVM bitcode to JVM bytecode
LLJVM: LLVM bitcode to JVM bytecode
 
20180417 hivemall meetup#4
20180417 hivemall meetup#420180417 hivemall meetup#4
20180417 hivemall meetup#4
 
An Experimental Study of Bitmap Compression vs. Inverted List Compression
An Experimental Study of Bitmap Compression vs. Inverted List CompressionAn Experimental Study of Bitmap Compression vs. Inverted List Compression
An Experimental Study of Bitmap Compression vs. Inverted List Compression
 
Sparkのクエリ処理系と周辺の話題
Sparkのクエリ処理系と周辺の話題Sparkのクエリ処理系と周辺の話題
Sparkのクエリ処理系と周辺の話題
 
20160908 hivemall meetup
20160908 hivemall meetup20160908 hivemall meetup
20160908 hivemall meetup
 
20150513 legobease
20150513 legobease20150513 legobease
20150513 legobease
 
20150516 icde2015 r19-4
20150516 icde2015 r19-420150516 icde2015 r19-4
20150516 icde2015 r19-4
 
VLDB2013 R1 Emerging Hardware
VLDB2013 R1 Emerging HardwareVLDB2013 R1 Emerging Hardware
VLDB2013 R1 Emerging Hardware
 
浮動小数点(IEEE754)を圧縮したい@dsirnlp#4
浮動小数点(IEEE754)を圧縮したい@dsirnlp#4浮動小数点(IEEE754)を圧縮したい@dsirnlp#4
浮動小数点(IEEE754)を圧縮したい@dsirnlp#4
 
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)
 
A x86-optimized rank&select dictionary for bit sequences
A x86-optimized rank&select dictionary for bit sequencesA x86-optimized rank&select dictionary for bit sequences
A x86-optimized rank&select dictionary for bit sequences
 
VAST-Tree, EDBT'12
VAST-Tree, EDBT'12VAST-Tree, EDBT'12
VAST-Tree, EDBT'12
 
研究動向から考えるx86/x64最適化手法
研究動向から考えるx86/x64最適化手法研究動向から考えるx86/x64最適化手法
研究動向から考えるx86/x64最適化手法
 
VLDB'10勉強会 -Session 20-
VLDB'10勉強会 -Session 20-VLDB'10勉強会 -Session 20-
VLDB'10勉強会 -Session 20-
 

SIGMOD’12勉強会 -Session 7-

  • 1. 【SIGMOD2012勉強会】 Session 7: Storage Systems, Query Processing and Optimization 担当: 山室健(NTT) 1
  • 2. Today Outline  1. bLSM: A General Purpose Log Structured Merge Tree  Russell Sears, Yahoo! Research; Raghu Ramakrishnan, Yahoo! Research  2. NoDB: Efficient Query Execution on Raw Data File  Ioannis Alagiannis, EPFL; Renata Borovica, EPFL; Miguel Branco, EPFL; Stratos Idreos, CWI; Anastasia Ailamaki, EPFL  3. Skeleton Automata for FPGAs: Reconfiguring without Reconstructing  Jens Teubner, ETH Zürich; Louis Woods, ETH Zürich; Chongling Nie, ETH Zürich 2 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 3. 1. bLSM: A General Purpose Log Structured Merge Tree - Russell Sears, Yahoo! Research; Raghu Ramakrishnan, Yahoo! Research 3 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 4. 1. bLSM: A General Purpose Log Structured Merge Tree  論文概要  Update/insert-intensiveな環境向けのLSM木(’96年)の改良 であるbLSM木*1を提案、 B木に近いlookup/scan性能と時間 有界保証のあるmerge処理(後述)を実現  技術背景 update -- read&modify values insert – append a new key/value pair  B木の特徴 lookup – read a single key/value pair scan – read a range of key/value pairs  scan/lookup性能はほぼ最適  update/insertの際のシーク回数はやや多い  LSM木の特徴  ならし解析的にupdate/insertのコストが良い  scan/lookupの際のシーク回数が要素数の対数必要  update/insertが内部データのmerge処理に阻害される *1Yahoo!のPNUTS[10]/Walnut[9]のバックエンドとして使用 4 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 5. 1. bLSM: A General Purpose Log Structured Merge Tree  論文概要  Update/insert-intensiveな環境向けのLSM木(’96年)の改良 であるbLSM木*1を提案、 B木に近いlookup/scan性能と時間 有界保証のあるmerge処理(後述)を実現  技術背景 update -- read&modify values insert – append a new key/value pair  B木の特徴 lookup – read a single key/value pair scan – read a range of key/value pairs  scan/lookup性能はほぼ最適  update/insertの際のシーク回数はやや多い 目標  LSM木の特徴 bLSM木 継承  ならし解析的にupdate/insertのコストが良い 改善  scan/lookupの際のシーク回数が要素数の対数必要  update/insertが内部データのmerge処理に阻害される *1Yahoo!のPNUTS[10]/Walnut[9]のバックエンドとして使用 5 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 6. 1. bLSM: A General Purpose Log Structured Merge Tree  LSM木[25]の概要  update/insert-intensiveな環境に最適化された索引木  変更内容をメモリ上(図のC0)で遅 延させてバッチ的にディスク上の データ(図でC1*1)にmerge  merge処理は順読み込みのみ  シーク回数を最小化  検索は遅い  分割されている全てのデータ(図の C0とC1 )が検索対象となるため  merge処理がupdate/insertを阻害 参考文献[25]のFigure2.2から引用 (Merge処理の概要) ディスク上のデータは段階的に複数個で構成されていても良い、つまりC1、C2、C3・・・ *1 6 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 7. 1. bLSM: A General Purpose Log Structured Merge Tree  LSM木の様々な適用例  Google Bigtable  Apache HBase  Cassandra pre1.0  sizeに応じた2段階粒度のmerge処理: major&minor compaction  TokuDB  LevelDB  exponential-sized level、file partitioning、fractional cascading  Riak  LevelDB + customized merge scheduler & bloom filter 7 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 8. 1. bLSM: A General Purpose Log Structured Merge Tree  LSM木の課題: merge処理がupdate/insertを阻害  merge処理中のinsertのlatencyが増大(下図) 引用: MySQL vs. LevelDB, https://github.com/m1ch1/mapkeeper/wiki/MySQL-vs.-LevelDB 8 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 9. 1. bLSM: A General Purpose Log Structured Merge Tree  bLSMの概要  lookup/scan処理の最適化  C0、C1とC2の3-level固定の構成/bloom filter/file partitioning  Merge処理の最適化  Level Schedulerによるupdate/insertとmerge処理の同期化 本論文内のFigure 1から引用 9 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 10. 1. bLSM: A General Purpose Log Structured Merge Tree  Level(Spring & Gear) Scheduler  update/insertで書き込むデータとmerge量との比率(ギア 比)を調整して、それぞれのスレッドを同期化  APが行うupdate/insertを中断させず継続させることが目的 各スレッドをスケジューラで同期化 本論文内のFigure 1/5から引用 ※絵で描くのは簡単だが、実装は大変らしいです→https://github.com/sears/bLSM 10 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 11. 1. bLSM: A General Purpose Log Structured Merge Tree  bLSMの性能概要  Update系の処理はLevelDB(LSM木)に対しても有利  R/Wの際のRの処理をBloom-Filterで最適化  Lookup/scan系の処理もB+Treeに近い性能  Bloom FilterとPartitioning  UniformなUpdateは有界時間で完了  ただし、集中したUpdateの場合は保証できない シーク回数 本論文内のTable 1から引用 11 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 12. 1. bLSM: A General Purpose Log Structured Merge Tree  bLSMの性能概要  Update系の処理はLevelDB(LSM木)に対しても有利  R/Wの際のRの処理をBloom-Filterで最適化  Lookup/scan系の処理もB+Treeに近い性能  Bloom FilterとPartitioning  UniformなUpdateは有界時間で完了  ただし、集中したUpdateの場合は保証できない シーク回数 本論文内のTable 1から引用 12 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 13. 1. bLSM: A General Purpose Log Structured Merge Tree  bLSMの性能概要  Update系の処理はLevelDB(LSM木)に対しても有利  R/Wの際のRの処理をBloom-Filterで最適化  Lookup/scan系の処理もB+Treeに近い性能  Bloom FilterとPartitioning  UniformなUpdateは有界時間で完了  ただし、集中したUpdateの場合は保証できない シーク回数 本論文内のTable 1から引用 13 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 14. 1. bLSM: A General Purpose Log Structured Merge Tree  bLSMの性能結果  Schedulerの恩恵により、latencyのスパイクが減少 本論文内のFigure 7から引用 左がbLSM木、右がLSM木(LSM木) 14 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 15. 1. bLSM: A General Purpose Log Structured Merge Tree  bLSMの性能結果  lookup性能がB木(InnoDB)より良い結果に  未記載だがshort-range scanはInnoDBの性能が良い 本論文内のFigure 8から引用 15 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 16. 1. bLSM: A General Purpose Log Structured Merge Tree  bLSMの性能結果  lookup性能がB木(InnoDB)より良い結果に  未記載だがshort-range scanはInnoDBの性能が良い bLSM木は100% writeで 33,000ops/sec. 本論文内のFigure 8から引用 16 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 17. 2. NoDB: Efficient Query Execution on Raw Data File - Ioannis Alagiannis, EPFL; Renata Borovica, EPFL; Miguel Branco, EPFL; Stratos Idreos, CWI; Anastasia Ailamaki, EPFL 17 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 18. 2. NoDB: Efficient Query Execution on Raw Data File  論文概要  データ規模が大きくなるにつれてコストが高くなるDBへのデー タロードの課題に着手、データのロードをなくしつつ既存のDB 機能を利用する新たなシステムデザイン(NoDB)の提案、ま たこれをPostgreSQL上に実装したPostgreRawを提示  研究背景  CIDER’11の”Here are my Data Files. Here are my Queries. Where are my Results?”[15]のAdaptive Loadingが先駆け  ICDE’12でAilamaki先生が「The Future of Scientific Data Bases」パネリストとして参加、NoDBの話題  SIGMOD’12採択←いまここ 18 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 19. 2. NoDB: Efficient Query Execution on Raw Data File  NoDBの目標  必要なデータをRawFile(CSVファイル等)から適宜読み込み 解析する(In situ Processing)ことで、ロード時間をなくしロード 済みのDBとほぼ同等の性能を目指す  DBMS w external files?  Oracle/PostgreSQL/MySQL等 にはRawFileを内部Relationとし てみせる機能が実装済み 本論文内のFigure 1から引用 ※Q1~Q4は任意のクエリを表している 19 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 20. 2. NoDB: Efficient Query Execution on Raw Data File  「DBMS w external files」との差分機能  1. Selective tokenizing/parsing/tuple formation  RawFileにおける各行の必要カラムのみを変換  2. Adaptive indexing (positional map)  B木のように全ての行の対応関係を保持 するのではなく参照 に応じて適宜記憶  3. Tuple caching 本論文内のFigure 2から引用  一度読み込んだtupleを参照頻度に応じてcaching 20 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 21. 2. NoDB: Efficient Query Execution on Raw Data File  性能評価  PostgresRaw PM + C (Positional Map + Cache enabled)  クエリQ1~Q9の詳細は明記無し・・・  単純なWHERE句を用いたSELECTでselectivity/projectivityを変化 本論文内のFigure 7から引用 21 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 22. 3. Skeleton Automata for FPGAs - Jens Teubner, ETH Zürich; Louis Woods, ETH Zürich; Chongling Nie, ETH Zürich 22 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 23. 3. Skeleton Automata for FPGAs  論文概要  部分的な処理をオフロードする 処理の記述能力を落とさず にFPGAにおけるコンパイルコストを解消したXML Projection (ストリームデータのFiltering処理)を実現  技術背景  処理の高速化を目的に部分的処理を FPGAにオフロード  処理に応じたプログラムの組み替え (コンパイル)に数時間かかることも 引用: wikipediaのFPGA項 ※FPGAはプログラム可能なLSIのこと 23 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 24. 3. Skeleton Automata for FPGAs  余談 引用: http://japan.zdnet.com/development/analysis/35021200/ 24 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 25. 3. Skeleton Automata for FPGAs  XML Projection[14]  クエリに記述された条件に合致する要素を抽出(Filtering) XML Projection処理例: 右図の赤背景部を抽出 本論文内のFigure 1から引用 25 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 26. 3. Skeleton Automata for FPGAs  基本アプローチ  XML ProjectionはNFAに変換可能  [N|D]FAはFPGA上で容易に表現可能  Skeleton Automata: FAの雛型をもちいることでパラメータの変更の みで処理の変更に対応 NFAのイプシロン遷移に対応 本論文内のFigure 3/4から引用 26 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)
  • 27. 3. Skeleton Automata for FPGAs  性能評価  Saxon-EEを用いたFiltering(下図網掛け棒)との比較  in-memory処理向けのXMLプロセッサ  XMark benchmark suite [22].を使用 本論文内のFigure 15から引用 27 Session 7: Storage Systems, Query Processing and Optimization 担当:山室健(NTT)