【勉強会メモ】第7回 関西DB勉強会
- 日時:2017/12/16(土) 13:00 〜 19:00
- 場所:Insight Technology 大阪支店
今回もDBにまつわる様々なテーマが偏り無く扱われて密度の濃い勉強会だった。SSDの話は正直なところ専門的すぎて難しかったがDBの勉強会でもこのようなテーマが扱われるのは面白いと感じた。トレンドとしては各社とも分散データベースと列指向型データベースの技術の浸透が進んできている印象。GraphデータベースはNeo4jのような専用のソフトウェアがある中で既存のDBMSがどう扱うかはまだ試行錯誤中と感じた。いずれにしてもデータベースと言いつつカバーする範囲はどんどん広くなるなぁという印象。
- 新規ユーザ獲得のためのPostgreSQLエンジニアが知るべきMySQLのこと
- SQL Server2017 ワンポイント紹介
- DB2->Db2、バージョンも11と黙々と進化するDb2のテクノロジーアップデートと事例
- MariaDBカラムナーベンチマークしちゃいましょ
- 今すぐ、触れて理解するSAP HANA
- SSDの虚実
- MySQLの公式GUIツール MySQL Workbench
新規ユーザ獲得のためのPostgreSQLエンジニアが知るべきMySQLのこと
Ionic Japan User Group 代表 榊原 昌彦さん
遅れて参加したため途中からのメモになります。
NoSQLの弱点
Webデザイン
- ペルソナ・UX⇒仮説⇒UIデザイン⇒検証⇒戻る
- 検証を繰り返すUIデザインが重要
PostreSQLを広げる
アプリレイヤーからフロントエンドまでデータベースエンジニアもアプリレイヤーに興味を持とう
- TwitterやLINEですらアプリレイヤーはどんどん変化している
- DB側からもアプリレイヤーを知っていて提案できる方がよい
SQL Server2017 ワンポイント紹介
SQLWorld おださん(@shinsukeoda)
www.slideshare.net
Graph DB
- ノード
- エッジ
- 2つのノードをつなぐ
- プロパティ
- ノードとエッジの属性
Node Table
create table
にas Node
を付ける
Edge Tabe
create table
にas Edge
を付ける
データの追加
- Node Tableのデータの追加は普通に
insert
文 - Edge Tableのデータの追加はNodeとNodeをつなぐ特殊な方法で
insert
データの検索は match
where
文にmatch
を書く- 例)
where match (誰が - (好き) -> 誰を)
参考
Graph Database in SQL Server – Microsoft Japan Data Platform Tech Sales Team Blog
- 通常のSQLで書くと複雑でバグる
- Graphで書くほうがシンプルになる
制限事項
- テンポラリテーブルで使えない
- テーブル変数でも使えない
- メモリ最適化テーブルにできない
- EdgeテーブルのUPDATEで
$from_id
,$to_id
を更新できない - クロスデータベースクエリは未サポート
まとめ
- 複雑なつながりをシンプルなクエリで表現できる
- Neo4jの代わりになるレベルではない
- Graphでできることは通常のクエリでもできる
参考
DB2->Db2、バージョンも11と黙々と進化するDb2のテクノロジーアップデートと事例
野間愛一郎さん
DB2の3K
- 聞いたことが無い
- 聞きたくても人がいない
- きつい(中のひと)
Db2ファミリー
Hybrid Data Management
Db2の特徴
シェアードナッシングアーキテクチャ
- データが増えてくるとパーティションの考え方がまた必要になってくるのではないか
BLUアクセラレーション
- 列指向型の実装
- Db2 BLUって何?
1TB未満でどっちもやりたい人向け
- コストがかからずリソースが限られた中で使い勝手が良いかも
圧縮機能
- デフォルトは辞書ベース
- 辞書ベースに加えてページ単位で圧縮するなどのダブルで圧縮する方法もある
- 圧縮すると遅くなる?⇒I/Oが減って早くなることもある
Db2 pureScale
フェデレーション
- DBLink
- いろんなデータソースに繋がる
Common SQL Engine
Db2 11.1
Db2を試す
Docker Storeにもある
MariaDBカラムナーベンチマークしちゃいましょ
japan mariadb user group代表 カワノさん
www.slideshare.net
CloumnStoreとは
- チューニングレスで高い検索パフォーマンスを実現するDWH特化型データベース
- 分析/集計処理に最適なカラムストアエンジン
- MySQLとの互換性
- 専用HW不要
- リニアにスケールアウト
対称型マルチプロセッシング(SMP)
- 分散処理…マルチコア対応
Extent Map
Transaction
InnoDB vs ColumnStore検証
www.slideshare.net
Scale Factor 10ぐらいで作る(1だとExtent Mapが作られない)
データサイズ
- InnoDBと比較して51%減
- 大幅なDisk I/O削減が期待できる
ベンチマーク結果
- 最大レスポンス
- InnoDB⇒234.23sec
- ColummnStore⇒12.48sec
ColumnStoreのようが遅くなっているものもそれなりにある
実行計画の調査
- PBE=0
- エクステントマップのパフォーマンスが発揮できていない
まとめ
- ColumnStoreはInnnoDBと比較して7倍高速
- 並列処理の恩恵のみ
- TPC-Hだとエクステントマップの恩恵は受けられない
SF100~大きなデータサイズでの検証
- 設定書き換えが必要
Flight Data Analysis : MariaDB InnoDB vs ColumnStore
今すぐ、触れて理解するSAP HANA
SAPジャパン 新久保 浩二さん
SAP HANA express edition
SAP HANA インメモリープラットフォーム
特徴
- コンテナ型、クラウド型
hdbsql
…SQLコマンド実行- Eclipse Plugin
デフォルトはカラム型
create cloumn_table
…column Storecreate table
…row store
参考情報
[図解]インメモリーコンピューティングSAP HANAのテクノロジー解説
- トランザクションの最小単位は行レベルロック
- データ圧縮…ディクショナリー圧縮(デフォルト)
- トランザクション分離レベル…
READ COMMITED
,REPEATABLE READ
,SERIALIZABLE
- スマートデータアクセス…DBリンク、ODBCでアクセス
SSDの虚実
インサイトテクノロジー 浅野さん
SSD vs HDD
Flash Memory Summit
今年の話題
- 3D-Xpoint
- NVMe/PCIe Storage
- NVMe Over Fabrics
- 3D NAND
SSDに関する素朴な質問
◎Enterprise向けSSDのほうが良いか?
2013年ごろコンシューマ用のベンチマークでエンタープライズ向けを評価していた
- 2017年やめようと訴える
◎バックアップに使うのはどうか
◎TLCはどうか
- TLC or QLCで充分
製品寿命
エンタープライズSSDの場合、最小データ保持期間(40℃, 電源Off, 3ヶ月)は同じ
◎製品寿命を気にしたほうがいいか
◎NVMe試用のSSDはどうか
◎NVDIMM
容量の問題
- 2018年にはDAXモード対応
NVDIMMはBig dealを生むか?
NVDIMM-NはNo⇒128GDRAM⇒32G?
- NVDIMM-FもNo⇒
- NVDIMM-P⇒本命?
- 本命はIntel persistant Memorry?
両者ともDRAMとの共存が前提
SSDの問題
Intel Ruler⇒2.5インチのまま長くする
MySQLの公式GUIツール MySQL Workbench
日本オラクル株式会社 MySQL GBU 山﨑 由章さん/ @yyamasaki1
www.slideshare.net
MySQL Workbenchでできること
- MySQL Serverの管理
- 開発支援
- DB設計支援
- データ移行
商用版とOSS版がある
MySQLサーバ管理
- MySQLサーバーのリソース状態がリアルタイムで見れる
- コネクション一覧
- 実行中のSQLの確認
- ユーザーと権限の管理
- システム変数の管理
- データエクスポート(mysqldump)
- サーバログの管理
- 設定ファイルの管理(SSHでサーバへの接続必須)
- パフォーマンス状況の確認(Dashboard、レポート)
- Performance Schemaの設定(5.5以前はスキーマを作る必要あり)
- 監査ログの管理(商用版のみ)
- Firewallルール設定と状態確認(商用版のみ)
- バックアップ・リストア(商用版のみ)
- スキーマ内の各オブジェクトの確認
- SQL実行と結果の確認
- クエリのStatistics, Explain確認
- スニペットの管理・実行
- ER図モデリング
- DBDoc…ドキュメント化(商用版のみ)
- マイグレーション(Oracleは非サポート)
- 5.5時代からSSDを意識した設定が可能
MySQL8.0
- オプティマイザ・コストモデル
- データがディスクにあるのかメモリにあるのかに応じて判断する機能