Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

OSC ver : MariaDB ColumnStore ベンチマークしちゃいませんか?

101 views

Published on

MariaDB ColumnStore のインストールからHammerDBを用いたTPC-Hベンチマークのやり方をレクチャー

Published in: Technology
  • Be the first to comment

  • Be the first to like this

OSC ver : MariaDB ColumnStore ベンチマークしちゃいませんか?

  1. 1. MariaDB ColumnStore ベンチマークしちゃいませんか? JPMUG 代表 カワノ
  2. 2. ColumnStoreとは?
  3. 3. ColumnStoreの歴史
  4. 4. ColumnStoreとは? チューニングレスで高い検索パフォーマ ンスを実現するDWH特化型データベース
  5. 5. ColumnStoreとは? • 分析/集計処理に最適なカラムストアエンジン • MySQLとの互換性 • 専用HW不要 • リニアにスケールアウト
  6. 6. アーキテクチャ 大規模並列処理 Clients User Module Performance Module ColumnStore Distributed Data Storage User sessions MariaDB SQL Front End Query Engine Local Storage, SAN EBS,HDFS…
  7. 7. アーキテクチャ 対称型マルチプロセッシング(SMP) Clients User Module Performance Module ColumnStore Distributed Data Storage User sessions MariaDB SQL Front End Query Engine Local Storage, SAN EBS,HDFS… CPU
  8. 8. アーキテクチャ Extent Map • 物理的なセグメントファイル内 に存在する論理ブロック • エクステント及び対応するブ ロックを管理 • データの抽出と配置は、エクス テントマップにより高速で処理 される • リアルタイム解凍と圧縮 • バージョンバッファーファイル (UNDO)
  9. 9. アーキテクチャ Extent Map SELECT COL – D FROM TABLE WHERE COL - D BETWEEN 110 AND 180 ;
  10. 10. アーキテクチャ Extent Map SELECT COL – D FROM TABLE WHERE COL - D BETWEEN 110 AND 180 ;
  11. 11. リニアにスケールアウト 11
  12. 12. おまけ Transaction Engine Transactions XA Columnstore YES NO MyISAM NO NO InnoDB YES YES
  13. 13. Transaction ColumnStore vs InnoDB sysbench # sysbench --test=oltp --db-driver=mysql --mysql-socket=/usr/local/mariadb/columnstore/mysql/lib/mysql/mysql.sock --num-threads=1 --max-requests=500 --max-time=0 --oltp-test-mode=complex --mysql-user=sbtest --mysql-password=sbtest --oltp-test-mode=nontrx --oltp-nontrx-mode=insert run ※ columnstoreは並列度が1じゃないとlockエラーするのでnum-threads=1で比較
  14. 14. Columnstore Install
  15. 15. Install Preparing for ColumnStore Installation https://mariadb.com/kb/en/the-mariadb-library/preparing-for-columnstore-installation/ • 上記サイトを参考にCentOS 7.2 にSingle Server構成でインストール Item Description Physical Server 8 core Intel / AMD, 32GB Memory Storage Local disk with appropriate RAID redundancy or network attached storage Minimum Hardware Specification
  16. 16. Install ColumnStore関連パッケージインストール # yum -y install boost expect perl perl-DBI openssl zlib file sudo libaio rsync snappy net-tools perl-DBD-MySQL RPMパッケージ取得 & 解凍 # wget https://downloads.mariadb.com/ColumnStore/1.0.9/centos/x86_64/7/mariadb- columnstore-1.0.9-1-centos7.x86_64.rpm.tar.gz # tar zxvf mariadb-columnstore-1.0.9-1-centos7.x86_64.rpm.tar.gz # rpm -ivh *.rpm
  17. 17. Install RPMパッケージインストール # rpm -ivh *.rpm RPMパッケージ確認 # rpm -qa | grep mariadb mariadb-columnstore-libs-1.0.9-1.x86_64 mariadb-columnstore-platform-1.0.9-1.x86_64 mariadb-columnstore-common-1.0.9-1.el7.centos.x86_64 mariadb-columnstore-client-1.0.9-1.el7.centos.x86_64 …
  18. 18. Install ColumnStore初期設定 # /usr/local/mariadb/columnstore/bin/postConfigure Select the type of System Server install [1=single, 2=multi] (2) > 1 Enter System Name (columnstore-1) > columnstore-1 Select the type of Data Storage [1=internal, 2=external] (1) > 1 Enter the list (Nx,Ny,Nz) or range (Nx-Nz) of DBRoot IDs assigned to module 'pm1' (1) > 1 ===== Performing Configuration Setup and MariaDB ColumnStore Startup ===== ... Enter 'mcsmysql' to access the MariaDB ColumnStore SQL console Enter 'mcsadmin' to access the MariaDB ColumnStore Admin console
  19. 19. SQLコンソール mcsmysql • MariaDB CoumnStore 用コンソール • mysql コンソールと使用方法は同一
  20. 20. 管理コンソール mcsadmin • ColumnStore Administrative Console • 起動/停止 • UM/PM構成管理 • 統計情報取得
  21. 21. 管理 System operation 停止 [myuser@srv1~]# mcsadmin stopSystem [y] 起動 [myuser@srv1~]# mcsadmin startSystem 再起動 [myuser@srv1~]# mcsadmin restartSystem [y]
  22. 22. Data import
  23. 23. インポート • cpimport インポート専用コマンド • 高速にデータロード可能 • LOAD DATA INFILE , INSERT INTO SELECT FROM もサポート • 内部的にはcpimportコマンドで実行
  24. 24. cpimport
  25. 25. インポート cpimport 読み込み対象ファイル • 区切り文字は ” | ” がデフォルト • -s オプションで区切り文字指定 • テーブルカラムとデータの並び順を一致させる • 一致しない場合は別途 job file を作成する必要がある • 日付フォーマットは” yyyy-mm-dd “にしておく • フォーマット違いは全て 0000-00-00 00:00:00 になる
  26. 26. インポート cpimport • データロード中でもテーブル参照可能 • ロード完了後に追加分の参照ができるようになる • トランザクションログへの出力はされない
  27. 27. インポート cpimport 実行例 [myuser@srv1~]# cpimport sample table1 /tmp/table1.csv –s ‘,’ –E ‘”’ Locale is : C Column delimiter : , Enclosed by Character : ” Using table OID 3278 as the default JOB ID Input file(s) will be read from : /root/tmp … 2017-08-31 16:16:37 (18403) INFO : For table sample.table1: 10000 rows processed and 10000 rows inserted. … 2017-08-31 16:16:37 (18403) INFO : Bulk load completed, total run time : 1.22974 seconds DB TABLE File path option
  28. 28. INSERT SELECT LOAD DATA INFILE
  29. 29. インポート INSERT SELECT使用時の注意点 • デフォルトの区切り文字がASCIIコード ’ 7 ‘ • データに 7 が含まれる場合 infinidb_import_for_batchinsert_delimiter変数の値を 任意のascii_valueに変更する必要がある
  30. 30. インポート INSERT SELECT, LOAD DATA INFILE 共通の注意点 • ロードするデータファイルサイズが大きい場合 バッファサイズ不足でロードに失敗する • ERROR 1815 (HY000) at line 1 in file: ’table1.sql': Internal error: CAL0006: IDB- 2008: The version buffer overflowed. Increase VersionBufferFileSize or limit the rows to be processed.
  31. 31. インポート INSERT SELECT, LOAD DATA INFILE 共通の注意点 • VersionBufferFileSizeの変更手順は2つ • Columnstore.xml を編集 • configxml.sh スクリプトでColumnstore.xmlを編集 • Columnstore.xml とは? • ColumnStore 専用の設定ファイルを記述したXMLファイル
  32. 32. インポート VersionBufferFileSize確認/変更 [myuser@srv1~]# cd /usr/local/mariadb/columnstore/etc/ [myuser@srv1~]# vi Columnstore.xml … <VersionBuffer> <!-- VersionBufferFileSize must be a multiple of 8192. One version buffer file will be put on each DB root. --> <VersionBufferFileSize>1GB</VersionBufferFileSize> </VersionBuffer> …
  33. 33. インポート VersionBufferFileSize確認/変更 [myuser@srv1~]# cd /usr/local/mariadb/columnstore/bin/ [myuser@srv1~]# configxml.sh getconfig VersionBuffer VersionBufferFileSize Current value of VersionBuffer / VersionBufferFileSize is 1GB [myuser@srv1~]# configxml.sh setconfig VersionBuffer VersionBufferFileSize 10GB Old value of VersionBuffer / VersionBufferFileSize is 1GB VersionBuffer / VersionBufferFileSize now set to 10GB section variablecommand
  34. 34. インポート cpimport vs LOAD DATA INFILE CSV 10,000,000件 約1GB
  35. 35. データサイズの確認
  36. 36. データサイズの確認 • columnstore_info Stored Procedure • total_usage() • table_usage() ColumnStore Information Schema Tables https://mariadb.com/kb/en/the-mariadb-library/columnstore-information- schema-tables/#columnstore_extents
  37. 37. データサイズの確認 全体の使用サイズ MariaDB [(none)]> call columnstore_info.total_usage(); +-------------------------+----------------------------+ | TOTAL_DATA_SIZE | TOTAL_DISK_USAGE | +-------------------------+----------------------------+ | 1.49 GB | 1.58 GB | +-------------------------+----------------------------+
  38. 38. データサイズの確認 Table毎の使用サイズ MariaDB [(none)]> call columnstore_info.table_usage(NULL,NULL); +-----------------------+---------------------+---------------------------+-------------------------+---------------------+ | TABLE_SCHEMA | TABLE_NAME | DATA_DISK_USAGE | DICT_DISK_USAGE | TOTAL_USAGE | +-----------------------+---------------------+---------------------------+-------------------------+---------------------+ | loadtest | load_cpimport | 638.90 MB | 140.08 MB | 778.98 MB | | loadtest | load_infile | 638.89 MB | 140.08 MB | 778.97 MB | +-----------------------+---------------------+---------------------------+-------------------------+---------------------+
  39. 39. TPC-H Benchmark InnoDB vs ColumnStore
  40. 40. TPC-H Benchmark DWH 用ベンチマーク http://www.tpc.org/tpch/
  41. 41. TPC-H Benchmark HammerDB HammerDB 2.23 を使用 http://www.hammerdb.com/
  42. 42. TPC-H Benchmark 検証環境 最小構成 検証環境 CPU 8 core Intel / AMD 8 core Intel (Core i7-4790K) Memory 32GB 32GB Storage 適切なRAID冗長構成を組んだローカル ディスク、もしくはネットワーク接続スト レージ。 240GB(RAID0) 対応OS RHEL/CentOS v6, v7 Ubuntu 16.04 LTS Debian v8 SUSE 12 CentOS Linux release 7.3.1611(Core)
  43. 43. HammerDB Install
  44. 44. TPC-H Benchmark HammerDB Install • Release 2.23 for Linux 64-bit をダウンロード • 実行権限を付与した上でインストーラを実行
  45. 45. TPC-H Benchmark HammerDB Install 実行権限付与 # chmod a+x HammerDB-2.23-Linux-x86-64-Install #./HammerDB-2.23-Linux-x86-64-Install …インストールウィザードで導入
  46. 46. TPC-H Benchmark HammerDB 起動確認 起動 # cd /usr/local/HammerDB-2.23 # ./hammerora.tcl 起動時に下記エラーが出る場合 wish8.5: error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory # yum install libXScrnSaver
  47. 47. TPC-H Benchmark HammerDB 初期値設定 config.xml編集 # cd /usr/local/HammerDB-2.23 # vi config.xml
  48. 48. TPC-H Benchmark HammerDB 初期値設定 <?xml version="1.0" encoding="utf-8"> <hammerdb> ... <benchmark> <rdbms>MySQL</rdbms> <bm>TPC-H</bm> </benchmark> ... </hammerdb> ... <mysql> ... <tpch> <schema> <mysql_scale_fact>1</mysql_scale_fact> <mysql_tpch_user>root</mysql_tpch_user> <mysql_tpch_pass>root_password</mysql_tpch_pass> <mysql_tpch_dbase>tpch</mysql_tpch_dbase> <mysql_num_tpch_threads>1</mysql_num_tpch_threads> <mysql_tpch_storage_engine>innodb</mysql_tpch_storage_engine> </schema> ... </tpch>
  49. 49. データベース作成
  50. 50. TPC-H Benchmark InnoDBデータベース作成 MySQL Host 127.0.0.1 MySQL Port 3306 MySQL User root MySQL User password rootのパスワード MySQL Database tpch Data Warehouse Storage engine innodb Scale Factor 10 Virtual Users Build Schema 1
  51. 51. TPC-H Benchmark InnoDBデータベース作成
  52. 52. TPC-H Benchmark ColumnStore データベース作成 InnoDB用 TPC-H データベースおよびテーブル確認 # mcsmysql -u root -p -D tpch ... MariaDB [tpch]> show tables; +----------------------+ | Tables_in_tpch | +----------------------+ | customer | | lineitem | | nation | | orders | | part | | partsupp | | region | | supplier | +----------------------+
  53. 53. TPC-H Benchmark ColumnStore データベース作成 全てのテーブルをCSV出力 MariaDB [tpch]> SELECT * FROM customer INTO OUTFILE '/usr/local/mariadb/columnstore/mysql/tpch/customer.csv’ FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'; …
  54. 54. TPC-H Benchmark ColumnStore データベース作成 データベース作成 MariaDB [tpch]> CREATE DATABASE tpch_mcs CHARACTER SET utf8; Query OK, 1 row affected (0.00 sec) MariaDB [tpch]> use tpch_mcs; Database changed …
  55. 55. TPC-H Benchmark ColumnStore データベース作成 テーブル作成 MariaDB [tpch_mcs]> CREATE TABLE nation ( N_NATIONKEY INTEGER NOT NULL, N_NAME CHAR(25) NOT NULL, N_REGIONKEY INTEGER NOT NULL, N_COMMENT VARCHAR(152)) ENGINE=columnstore DEFAULT CHARSET=utf8; … ※index等 columnstoreでエラーになる構文を削除
  56. 56. TPC-H Benchmark ColumnStore CSVインポート 全のCSVファイルをインポート # cpimport tpch_mcs customer '/usr/…/tpch/customer.csv' -s ',' -E '"' … DB TABLE File path option
  57. 57. データサイズ確認
  58. 58. TPC-H Benchmark Table行数 Table_schema Table_name Rows tpch lineitem 58,025,902 tpch orders 14,807,501 tpch partsupp 9,691,914 tpch part 1,980,115 tpch customer 1,485,848 tpch supplier 99,036 tpch nation 25 tpch region 5 Scale Factor = 10 Virtual Users Build Schema = 1 Scale Factor=1 で作成した場合lineitemの行数が 600万行程度 エクステントマップが効かないので 10 で作成 ※ ※
  59. 59. TPC-H Benchmark データサイズ確認 InnoDB MariaDB [tpch_mcs]> use tpch; ... MariaDB [tpch]> SELECT table_schema , table_name , engine , table_rows AS tbl_rows , avg_row_length AS rlen , FORMAT( (data_length + index_length) / (1024*1024*1024), 2) AS All_GB , FORMAT( (data_length) / (1024*1024*1024), 2) AS Data_GB , FORMAT( (index_length) / (1024*1024*1024), 2) AS Index_GB FROM information_schema.tables WHERE TABLE_SCHEMA='tpch’ ORDER BY (data_length + index_length) DESC;
  60. 60. TPC-H Benchmark データサイズ確認 ColumnStore MariaDB [tpch]> call columnstore_info.table_usage( NULL, NULL);
  61. 61. TPC-H Benchmark データサイズ比較 (GB) InnoDB ColumnStore Table_schema Table_name Data Index Total Data Dict Total tpch lineitem 7.83 7.55 15.38 3.03 1.94 4.97 tpch orders 1.84 0.59 2.42 0.61 1.38 1.99 tpch partsupp 1.93 0.19 2.11 0.22 1.00 1.22 tpch part 0.30 0.00 0.30 0.52 0.44 0.96 tpch customer 0.27 0.02 0.29 0.45 0.38 0.83 tpch supplier 0.02 0.00 0.02 0.01 0.13 0.14 tpch nation 0.01 0.00 0.01 0.01 0.01 0.01 tpch region 0.01 0.00 0.01 0.01 0.01 0.01 Total 20.54 10.13
  62. 62. TPC-H Benchmark データサイズ比較 (GB) InnoDBと比較してデータサイズが51%減少 大幅なDisk I/O削減が期待できる
  63. 63. クエリ書き換え
  64. 64. TPC-H Benchmark クエリ書き換え Query # Error Query 2 ERROR 1815 (HY000): Internal error: IDB-3012: Scalar filter and semi join are not from the same pair of tables. Query 5 ERROR 1815 (HY000): Internal error: IDB-1003: Circular joins are not supported. Query 17 ERROR 1815 (HY000): Internal error: IDB-3012: Scalar filter and semi join are not from the same pair of tables. Query 19 ERROR 1815 (HY000): Internal error: IDB-1000: 'lineitem' and 'part' are not joined. ColumnStoreで実行する場合クエリを書き換える必要がある
  65. 65. TPC-H Benchmark Query 2
  66. 66. TPC-H Benchmark Query 5
  67. 67. TPC-H Benchmark Query 17
  68. 68. TPC-H Benchmark Query 19
  69. 69. TPC-H Benchmark hdb_tpch.tcl書き換え hdb_tpch.tcl のクエリを書き換える # cd /usr/local/HammerDB-2.23 # vi hdb_tpch.tcl
  70. 70. TPC-H Benchmark hdb_tpch.tcl書き換え #TPCH QUERY GENERATION proc set_query { myposition } { global sql set sql(1) "select l_returnflag, l_linestatus, sum(l_quantity)… set sql(2) "select s_acctbal, s_name, n_name, p_partkey, p_mfgr… … set sql(5) "select n_name, sum(l_extendedprice * (1 - l_discount)) … … set sql(17) "select sum(l_extendedprice) / 7.0 as avg_yearly from … … set sql(19) "select sum(l_extendedprice * (1 - l_discount)) as revenue … … set sql(22) "select cntrycode, count(*) as numcust, sum(c_acctbal) as } 6,081 ~ 6,106 行目
  71. 71. TPC-H Benchmark hdb_tpch.tcl download JPMUG-KK/MariaDB https://github.com/JPMUG-KK/MariaDB
  72. 72. my.cnf 編集
  73. 73. TPC-H Benchmark my.cnf 編集 # cd /usr/local/mariadb/columnstore/mysql # vi my.conf … # You can set .._buffer_pool_size up to 50 - 80 % # of RAM but beware of setting memory usage too high innodb_buffer_pool_size = 20GB #innodb_additional_mem_pool_size = 20M # Set .._log_file_size to 25 % of buffer pool size #innodb_log_file_size = 100M #innodb_log_buffer_size = 8M #innodb_flush_log_at_trx_commit = 1 #innodb_lock_wait_timeout = 50 InnoDBでベンチマーク時のみ有効にする
  74. 74. ベンチマーク実行
  75. 75. TPC-H Benchmark ベンチマーク実行 MySQL Host 127.0.0.1 MySQL Port 3306 MySQL User root MySQL User password rootのパスワード MySQL Database tpch or tpch_mcs Data Warehouse Storage engine innodb Scale Factor 10 Virtual Users Build Schema 1
  76. 76. TPC-H Benchmark ベンチマーク実行
  77. 77. TPC-H Benchmark ベンチマーク実行 Virtual Users 1 User Delay(ms) 0 Repeat Delay(ms) 0 Iterations 1 Show Output Check Log Output Temp Uncheck
  78. 78. TPC-H Benchmark ベンチマーク実行
  79. 79. ベンチマーク結果
  80. 80. TPC-H Benchmark ベンチマーク比較(sec) Engine Query 1 2 3 4 5 6 7 8 9 10 11 InnoDB 83.21 17.97 28.69 2.46 76.25 16.04 7.54 22.17 234.23 4.77 2.01 ColumnStore 7.74 1.38 1.87 7.86 2.82 0.63 8.29 1.81 8.02 2.32 0.39 Engine Query 12 13 14 15 16 17 18 19 20 21 22 InnoDB 110.70 20.71 2.64 39.38 2.83 5.40 - 2.38 1.35 12.96 0.82 ColumnStore 1.43 4.02 1.05 1.36 1.37 12.48 6.69 3.45 3.36 12.32 4.67
  81. 81. TPC-H Benchmark ベンチマーク比較
  82. 82. TPC-H Benchmark ベンチマーク比較
  83. 83. TPC-H Benchmark 考察 • ColumnStoreの真価を発揮できているだろうか? • ColumnStoreの真価は並列処理とエクステントマップの有効活用
  84. 84. TPC-H Benchmark 実行計画を取得する • EXPLAINでは有益な情報を得られない • 専用関数 calSetTrace(), calGetTrace() を使用する
  85. 85. TPC-H Benchmark 実行計画を取得する MariaDB [tpc_mcs]> select calSetTrace(1); MariaDB [tpc_mcs]> select l_returnflag, l_linestatus, sum(l_quantity) as sum_qty, … MariaDB [tpc_mcs]> select calGetTrace();
  86. 86. TPC-H Benchmark 実行計画を取得する Desc Mode Table TableOID ReferencedColumns PIO LIO PBE Elapsed Rows BPS PM lineitem 4042 (L_DISCOUNT, L_EXTENDEDPRICE, L_LINESTATUS, L_QUANTITY, L_RETURNFLAG, L_SHIPDATE, L_TAX) 136074 278562 0 7.451 488 TNS UM 7.354 4 Partition Blocks Eliminated • エクステントマップにより読み飛ばしたブロックサイズ • この値が0の場合、エクステントマップの恩恵を得られていない Query 1 実行計画
  87. 87. TPC-H Benchmark エクステントマップ確認 • 調査対象のカラムOID取得 • editemプロセスからエクステントマップ情報を取得 • 引数にカラムID必須
  88. 88. エクステントマップ確認 カラムOID取得 Select `schema`, `tablename`, `columnname`, `objectid` From calpontsys.syscolumn Where `schema` = ‘対象スキーマ名’ and `tablename` = ‘対象テーブル名’ and `tablename` = ‘対象カラム名’ ;
  89. 89. エクステントマップ確認 editemプロセスから情報取得 [myuser@srv1~]# /usr/local/mariadb/columnstore/bin/editem -o 4043 Col OID = 4043, NumExtents = 8, width = 4 5306368 - 5310463 (4096) min: 130551998, max: 130987966, seqNum: 1, state: valid, fbo: 0, DBRoot: 1, part#: 0, seg#: 0, HWM: 0; status: avail 5468160 - 5472255 (4096) min: 130551998, max: 130987966, seqNum: 1, state: valid, fbo: 0, DBRoot: 1, part#: 0, seg#: 1, HWM: 0; status: unavail 5621760 - 5625855 (4096) min: 130551998, max: 130987966, seqNum: 1, state: valid, fbo: 0, DBRoot: 1, part#: 0, seg#: 2, HWM: 0; status: unavail …
  90. 90. TPC-H Benchmark エクステントマップ確認 state Num min max seqNum fbo DBRoot part# seg# HWM valid 5306368 - 5310463 (4096) 130551998 130987966 1 0 1 0 0 0 valid 5468160 - 5472255 (4096) 130551998 130987966 1 0 1 0 1 0 valid 5621760 - 5625855 (4096) 130551998 130987966 1 0 1 0 2 0 valid 5775360 - 5779455 (4096) 130551998 130987966 1 0 1 0 3 0 valid 5928960 - 5933055 (4096) 130551998 130987966 1 4096 1 0 0 8191 valid 6074368 - 6078463 (4096) 130551998 130987966 1 4096 1 0 1 8191 valid 6219776 - 6223871 (4096) 130551998 130987966 1 4096 1 0 2 8191 valid 6365184 - 6369279 (4096) 130551998 130987966 1 4096 1 0 3 4725 各エクステントの MIN/MAX値 が同値=絞り込み不可 lineitem テーブル l_shipdateカラム エクステントマップ詳細
  91. 91. まとめ
  92. 92. TPC-H Benchmark まとめ •ColumnStoreはInnoDBと比較して7倍高速 • ただし並列処理の恩恵のみ TPC-H でベンチマークする場合エクステントマップの恩恵は得られない • エクステントマップの恩恵を得られれば 更に高速化できる余地はある
  93. 93. •Columnstore.xml •AllowDiskBasedJoin = Y •my.cnf •infinidb_use_decimal_scale = 1 •infinidb_decimal_scale = 3 TPC-H Benchmark SF100~大きなデータサイズでの検証 Query22 が失敗する場合 Query1 が失敗する場合
  94. 94. TPC-H Benchmark CPU使用率傾向の違い InnoDB ColumnStore
  95. 95. おまけ
  96. 96. mariadb-columnstore-samples Flight data source • mariadb-corporation/mariadb-columnstore- samples • https://github.com/mariadb-corporation/mariadb- columnstore-samples/tree/master/flights # このサンプルでは2016年のデータのみ • 2013~2017 flight data • https://downloads.mariadb.com/ColumnStore/sampledata /flights/
  97. 97. mariadb-columnstore-samples Flight data source • JPMUG-KK/MariaDB_Columnstore_flight_data • https://github.com/JPMUG- KK/MariaDB_Columnstore_flight_data 簡単にColumnstore&InnoDBにデータをインポート
  98. 98. mariadb-columnstore-samples Flight data summary TableName Rows InnoDB ColumnStore Flight 約2,300万 2.46GB 1.24GB airports 342 0.06MB 9.55MB airlines 17 0.02MB 2.25MB
  99. 99. 全米フライトデータ可視化アプリで違いを体感しよう https://youtu.be/iWvIwYTdxVs
  100. 100. 全米フライトデータ可視化アプリで違いを体感しよう
  101. 101. 全米フライトデータ可視化アプリで違いを体感しよう
  102. 102. ベンチマークしちゃいませんか?
  103. 103. Thank you so, so much!

×