SlideShare a Scribd company logo
1 of 58
Download to read offline
MySQL ClusterMySQL Cluster
新機能解説新機能解説
7.5 and beyond7.5 and beyond
奥野 幹也
Twitter: @nippondanji
mikiya (dot) okuno (at) gmail (dot) com
@DBTS-Tokyo 2017
免責事項
本プレゼンテーションにおいて示されている見解
は、私自身の見解であって、オラクル・コーポ
レーションの見解を必ずしも反映したものではあ
りません。ご了承ください。
自己紹介
●
MySQL サポートエンジニア
– 日々のしごと
● トラブルシューティング全般
●
Q&A 回答
● パフォーマンスチューニング
など
● ライフワーク
– 自由なソフトウェアの普及
– 趣味はリカンベントに乗ること
● 最近は執筆と子育ての日々・・・
●
ブログ
– 漢のコンピュータ道
– http://nippondanji.blogspot.com/
MySQL Cluster の
ネーミングについて
MySQL “NDB” Cluster
● マニュアル上での表記が変更
– MySQL Cluster MySQL→ NDB Cluster
– https://dev.mysql.com/doc/refman/en/mysql-cluster.html
●
MySQL InnoDB Cluster との明確化
● 製品名としての変更は(今のところ)ナシ
– MySQL Cluster Carrier Grade Edition
– https://www.mysql.com/products/cluster/
– ややこしや〜
本セッションでは
MySQL NDB Cluster に統一
MySQL NDB Cluster
7.5 新機能概要
MySQL NDB Cluster 7.5
新機能概要
●
MySQL 5.7 との統合
●
インデックス統計情報の改良
●
ndbinfo の拡充
●
バックアップレプリカからの参照
● 全データノードへのレプリカ
● テーブルの容量制限改善
●
ndb_restore コマンドの SQL 出力
2016 年 10 月リリース
MySQL 5.7
との統合
MySQL 5.7 との統合
●
MySQL サーバーの最新版
– 2015 年 10 月リリース
– 175 を超える新機能搭載
●
SQL ノード= NDB ストレージエンジンつき MySQL サー
バー
– ストレージエンジンを変更するだけで同じ SQL でアクセス
可能
– MySQL NDB Cluster でもメリットの享受が可能
●
MySQL NDB Cluster 7.5 MySQL 5.7→
●
MySQL NDB Cluster 7.3, 7.4 MySQL 5.6→
●
MySQL NDB Cluster 7.2 MySQL 5.5→
MySQL 5.7 の機能
● レプリケーション関連
●
InnoDB 関連
● オプティマイザー関連
● セキュリティ関連
● パフォーマンススキーマ関連
●
GIS 関連
●
JSON 関連
●
etc etc...
詳解 MySQL 5.7
止まらぬ進化に乗り遅れないためのテクニカルガイド
●
MySQL 5.7 の新機能を網羅的に解説
– 175 の新機能
– WorkLog/Bug Id つき
– コンセプト、仕組み、使い方
● 新機能の理解に必要な前提知識
– 古いバージョンでも適用可能
– アーキテクチャを理解することで
本物の理解を
MySQL 5.7 との
統合による具体的な
改善点
Records-per-key 最適化
●
オプティマイザが JOIN のときに参照する情報
●
外部表の 1 行に対して、内部表から平均何行がマッチする
か
– ストレージエンジンが値を返す
– MySQL 5.7 においてデータ型が INT から FLOAT に変更
●
より正確な JOIN のコスト見積が可能に
●
MySQL NDB Cluster 7.5 も FLOAT に対応
その他のオプティマイザ関連の
新機能
●
EXPLAIN FOR CONNECTION
●
新しいコストモデル
● オプティマイザヒント
●
ディスクベースのテンポラリテーブルを InnoDB 化
●
UNION ALL がテンポラリテーブル不要に
●
コストに WHERE 句による絞り込みを考慮
●
GROUP BY の動作を SQL 標準準拠に
●
FROM 句のサブクエリでテンポラリテーブルが不要な場合
作成しないように
etc etc
パフォーマンススキーマと
sys スキーマ
● パフォーマンス・スキーマ
– 種々の統計情報を取得
– 主にパフォーマンス解析に利用
– 情報の種類が多すぎて使いこなすのが難しいのが難点
– バージョンが上がるごとに情報の種類が増加
●
sys スキーマ
– パフォーマンス・スキーマと情報スキーマを横断的にアク
セスするビューのコレクション
– パフォーマンス・スキーマよりも直感的に利用可能
– MySQL 5.7 で追加
● 元々は独立したプロジェクトだった
●
MySQL 5.6 用もあり
MySQL NDB Cluster とは
無関係の MySQL 5.7 の変更点
●
InnoDB 全般
– SQL ノード上で併用する場合は利点あり
– ディスク上のテンポラリテーブルが InnoDB になった点は
メリットあり
● レプリケーションのサポートされていない機能
– GTID
– 準同期レプリケーション
– マルチスレッドスレーブ
– マルチソースレプリケーション
●
MySQL NDB Cluster には無い機能
– 空間インデックス
– フルテキストインデックス
ndbinfo の拡充
ndbinfo とは
●
MySQL NDB Cluster 用の情報取得ツール
●
ndbinfo スキーマに各種テーブルがある
●
データノードからメタデータや統計情報を取得
MySQL NDB Cluster 7.5
における改良点
●
config_params… パラメーターの説明やデフォルト値、
データ型などが追加
●
config_values… 現在のパラメーターの設定値を格納。
●
dict_obj_info... 各種データベースオブジェクトの情報。
●
table_distribution_status... テーブルの LCP 状況等
●
table_fragments... テーブルごとのフラグメントの状態
●
table_info... テーブルの各種情報
●
table_replicas... レプリカの状態
バックアップレプリカ
からの参照
Read from backup replica
●
これまではプライマリーレプリカのみ R/W 可能
●
プライマリーレプリカを各データノードに分散させることで、
負荷も分散
●
MySQL NDB Cluster 7.5 より、バックアップレプリカからの
参照が可能に
– ただしデフォルトではこれまで通りプライマリーのみにアク
セス可能
– テーブル作成時に指定した場合のみ
レプリカの動き
Data node 1 Data node 2
Primary
Secondary Primary
Secondary
データ同期
データ同期
Read from backup replica
を使わない場合
Data node 1 Data node 2
Primary
Secondary Primary
Secondary
Client
R/W
R/W
Read from backup replica
を使った場合
Data node 1 Data node 2
Primary
Secondary Primary
Secondary
Client
R/W
R/W
R
R
全データノードへの
レプリカ
通常のテーブルの場合
ノードグループ 1 ノードグループ 2
Data node 1
Data node 2
Data node 3
Data node 4
F1
primary
F3
backup
F1
backup
F3
primary
F2
backup
F4
primary
F2
primary
F4
backup
Fully replicated table
(全体複製テーブル)
ノードグループ 1 ノードグループ 2
Data node 1
Data node 2
Data node 3
Data node 4
F1,F2,
F3,F4
F1,F2,
F3,F4
F1,F2,
F3,F4
F1,F2,
F3,F4
テーブルサイズの
制限の改善
テーブルサイズの制限
●
MySQL NDB Cluster 7.4 まで
– FIXED フォーマット部分はフラグメントあたり 16GB まで
– フラグメント数はデータノード数と同じ
●
MySQL NDB Cluster 7.5
– FIXED フォーマット部分のデータサイズは 128TB まで
– ただしデータノードごとの DataMemory の上限が 1TB
●
データノードは 48 ノードなので、実質的な上限は 48TB
●
レプリカ数2なら 24TB
ndb_restore
コマンドの SQL 出力
ndb_restore コマンドの
SQL 出力
●
ndb_restore は、ネイティブバックアップをリストアするツー
ル
– データノードへクライアントとして接続してリストア
– バックアップはメタデータ、データ、ログから構成される
– データ部分を CSV で、ログをテキストで出力する機能が
あった
●
MySQL NDB Cluster 7.5 において、ログの出力が SQL 対
応
– InnoDB など、他のストレージエンジンへのデータ移行に
– InnoDB へのレプリケーションのセットアップ
MySQL Cluster
7.6DMR の紹介
MySQL Cluster 7.6 DRM 登場
●
MySQL Cluster 7.6 Development Milestone
Release とは?
– Release Candidate になる前のバージョン
– 機能の追加・削除が予告なく変更される場合有り
● 準備が整った機能から順番に統合される
– キャンセルされる場合もあり
●
MySQL Cluster 7.6.3 dmr
– 2017 年 7 月 5 日リリース
● 正式版ではありません!
– https://lists.mysql.com/announce/1185
MySQL NDB Cluster 7.6 の
(予定された)新機能概要
● ディスク型テーブルの新フォーマット
● メモリ割り当て設定の改善
●
ndbinfo の拡充
●
CSV データのインポートツール
● 新しいモニタリングツール
●
LCP のスループット安定化
●
SPJ の改良
●
システム名の指定
ディスク型テーブルの
新フォーマット
ディスク型テーブルの
新フォーマット
● ページチェックサムの追加
●
CREATE TABLE SCHEMA VERSION ID の導入
– DROP/CREATE により、 Table ID が再利用されてしまう
– 同じ Table ID を持ったエクステントが CREATE 後のテー
ブルのものだと誤って判定されてしまう
● イニシャルローリングリスタートにより新しいフォーマットへ変
更
– 古いフォーマットを持つバージョンにはダウングレードでき
ない
メモリ割り当て
設定の改善
IndexMemory の廃止
●
DataMemory から動的に割り当て
– 必要な分だけが割り当てられるように
– 無駄がない
– 設定がちょっとだけシンプルに
●
DataMemory だけサイジングすれば OK
DataMemory から
SharedGlobalMemory へ
● メモリ割り当て先の変更
●
DataMemory
– データの格納に関する部分に特化
●
SharedGlobalMemory
– トランザクション処理に関するメモリはこちらから割り当て
– 以前より多く必要になるかも
●
変更されたものの例
– レプリケーション用イベントバッファ
– ファイルの初期化処理用バッファ
– オフラインのインデックス作成用バッファ
etc
storage/ndb/src/kernel/blocks/record_types.hpp
ndbinfo の拡充
ndbinfo に2つのテーブルが追加
●
config_nodes
– config.ini 内で定義されたノードの一覧
●
processes
– 現在接続中のプロセス(ノード)一覧
ndb_mgm -e SHOW
の代わりに使うと便利
CSV データの
インポートツール
ndb_import
ndb_import
●
LOAD DATA INFILE のように CSV データをテーブルに取
り込むツール
●
データノードへ直接接続
– 高速!
– API ノードのひとつとして動作
– データノードへの接続数、接続あたりのスレッド数を指定
可能
ndb_import -c connectstring db_name table_name.csv
モニタリングツール
ndb_top
ndb_top
●
SQL ノードの ndbinfo からデータノードの負荷を監視
●
スレッドごとに負荷を計測
shell> ndb_top --user=root --passwd -n 2
LCP のスループット
安定化
LCP とは
●
Local checkpoint の略
●
データノードは定期的に DataMemory 上のデータを、ファ
イルへ書き出している
– 全体を順次スキャン
– 2 世代分のデータがファイルに保存
– かなりの I/O が発生する
●
GCP ( Global checkpoint )とセットでデータを復元
– GCP = Redo logging
LCP のスループット安定化
●
LCP は I/O が遅いと自動的にスループットを調整する機能
がある
●
7.5 までのバージョンでは、 LDM スレッドごとに I/O 遅延を
モニタリングし、スループットを調整していた
– 他の LDM スレッドはスループットを調整しないかも知れ
ない
– LDM = Local Data Manager
●
7.6 では I/O 遅延のモニタリングをデータノード全体で統一
して行うようになった
– より正確にサーバー全体の I/O の状況を反映するように
なった。
SPJ の改良
SPJ とは
●
Select-Project-Join の略
– 別名 Pushdown Join
●
データノード上で JOIN を実行し、結果を SQL ノードへ返す
– 非常に高速!
– データノード・ SQL ノード間のラウンドトリップを省略
– 複数のデータノード上で JOIN を並列実行
Pushdown Join が効率化
●
DBSPJ カーネルブロックのシグナル周りの改良
– 余分なシグナルが送信されないように
– シグナルフォーマットをコンパクトに
●
ロードバランスの改善
– LDM スレッド数が、 TC スレッド数で割り切れない場
合、 DBSPJ の負荷に偏りが生じていた
– その場合、 DBSPJ ブロックをラウンドロビンで使うようにす
ることで、スレッドごとの負荷を平坦化
システム名の
指定が可能に
システム名とは
● クラスタを識別するためのタグのようなもの
● config.ini 内で指定
[System]
Name = system_name
●
SHOW GLOBAL STATUS LIKE ‘Ndb_system_name’ で
参照
まとめ
MySQL “NDB” Cluster は
着々と進化中!!
●
MySQL NDB Cluster 7.5 、 7.6DMR で着実な進化
– 派手な変更は無いが、役立つ新機能が多数
●
機能面
– MySQL 5.7 との統合により充実
– ndb_top 、 ndb_import などの新しいツール
●
性能面
– オプティマイザの改善により、 SQL 実行が高速化
– LCP スループットの安定
– バックアップレプリカらからの参照
– DBSPJ の改良
● 運用面
– ndbinfo による監視の充実
– システム名による識別
宣伝:書籍が出ます!
Pro MySQL NDB Cluster
●
Pro MySQL NDB Cluster / Apress Media
– MySQL NDB Cluster 7.5 の解説書
– 同僚の Jesper との共著
– 英語です。
– お値段は $49.99
Q&Aご静聴ありがとうございました。
宣伝:サポートエンジニア募集中!!
●
MySQL サポートチームで一緒に働いてみませんか?!
●
技術力が物を言うポジションです!
– 技術力に自信のある方、技術を磨きたい方歓迎
– L1 から L3 までの問い合わせをすべて受け持ち
● クエリのチューニングなども行います
● オープンソースなのでソースコード見放題!!
– 英語より技術力重視
● 普段の業務は日本語オンリーです。
● 日本の顧客がターゲットです。
● 上司は海外
– やりとりは英語のみ
– TOEIC 700 程度が目安
●
在宅勤務可能

More Related Content

What's hot

[db tech showcase Tokyo 2015] A33:Amazon Aurora Deep Dive by アマゾン データ サービス ジャ...
[db tech showcase Tokyo 2015] A33:Amazon Aurora Deep Dive by アマゾン データ サービス ジャ...[db tech showcase Tokyo 2015] A33:Amazon Aurora Deep Dive by アマゾン データ サービス ジャ...
[db tech showcase Tokyo 2015] A33:Amazon Aurora Deep Dive by アマゾン データ サービス ジャ...Insight Technology, Inc.
 
MySQL カジュアル 福岡 03
MySQL カジュアル 福岡 03MySQL カジュアル 福岡 03
MySQL カジュアル 福岡 03Aya Komuro
 
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06Mikiya Okuno
 
MySQLのNoSQL機能 - MySQL JSON & HTTP Plugin for MySQL
MySQLのNoSQL機能 - MySQL JSON & HTTP Plugin for MySQLMySQLのNoSQL機能 - MySQL JSON & HTTP Plugin for MySQL
MySQLのNoSQL機能 - MySQL JSON & HTTP Plugin for MySQLRyusuke Kajiyama
 
MySQL のオンラインバックアップ & リカバリ
MySQL のオンラインバックアップ & リカバリMySQL のオンラインバックアップ & リカバリ
MySQL のオンラインバックアップ & リカバリk_teru
 
LINEのMySQL運用について
LINEのMySQL運用についてLINEのMySQL運用について
LINEのMySQL運用についてLINE Corporation
 
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sqlCassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sqlYutuki r
 
MySQL 初めてのチューニング
MySQL 初めてのチューニングMySQL 初めてのチューニング
MySQL 初めてのチューニングCraft works
 
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...Insight Technology, Inc.
 
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...Insight Technology, Inc.
 
PHP開発者のためのNoSQL入門
PHP開発者のためのNoSQL入門PHP開発者のためのNoSQL入門
PHP開発者のためのNoSQL入門じゅん なかざ
 
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料20170329 D3 DBAが夜間メンテをしなくなった日 発表資料
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料dcubeio
 
データベース技術の羅針盤
データベース技術の羅針盤データベース技術の羅針盤
データベース技術の羅針盤Yoshinori Matsunobu
 
Persistence on Azure - Microsoft Azure の永続化
Persistence on Azure - Microsoft Azure の永続化Persistence on Azure - Microsoft Azure の永続化
Persistence on Azure - Microsoft Azure の永続化Takekazu Omi
 
MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術yoku0825
 
MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間hiroi10
 
PostgreSQL10徹底解説
PostgreSQL10徹底解説PostgreSQL10徹底解説
PostgreSQL10徹底解説Masahiko Sawada
 
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例terurou
 
Couchbase introduction-20150611
Couchbase introduction-20150611Couchbase introduction-20150611
Couchbase introduction-20150611Couchbase Japan KK
 
S10 日本東西リージョンでのディザスタ リカバリ環境の実現
S10 日本東西リージョンでのディザスタ リカバリ環境の実現S10 日本東西リージョンでのディザスタ リカバリ環境の実現
S10 日本東西リージョンでのディザスタ リカバリ環境の実現Microsoft Azure Japan
 

What's hot (20)

[db tech showcase Tokyo 2015] A33:Amazon Aurora Deep Dive by アマゾン データ サービス ジャ...
[db tech showcase Tokyo 2015] A33:Amazon Aurora Deep Dive by アマゾン データ サービス ジャ...[db tech showcase Tokyo 2015] A33:Amazon Aurora Deep Dive by アマゾン データ サービス ジャ...
[db tech showcase Tokyo 2015] A33:Amazon Aurora Deep Dive by アマゾン データ サービス ジャ...
 
MySQL カジュアル 福岡 03
MySQL カジュアル 福岡 03MySQL カジュアル 福岡 03
MySQL カジュアル 福岡 03
 
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
 
MySQLのNoSQL機能 - MySQL JSON & HTTP Plugin for MySQL
MySQLのNoSQL機能 - MySQL JSON & HTTP Plugin for MySQLMySQLのNoSQL機能 - MySQL JSON & HTTP Plugin for MySQL
MySQLのNoSQL機能 - MySQL JSON & HTTP Plugin for MySQL
 
MySQL のオンラインバックアップ & リカバリ
MySQL のオンラインバックアップ & リカバリMySQL のオンラインバックアップ & リカバリ
MySQL のオンラインバックアップ & リカバリ
 
LINEのMySQL運用について
LINEのMySQL運用についてLINEのMySQL運用について
LINEのMySQL運用について
 
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sqlCassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sql
 
MySQL 初めてのチューニング
MySQL 初めてのチューニングMySQL 初めてのチューニング
MySQL 初めてのチューニング
 
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
 
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...
 
PHP開発者のためのNoSQL入門
PHP開発者のためのNoSQL入門PHP開発者のためのNoSQL入門
PHP開発者のためのNoSQL入門
 
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料20170329 D3 DBAが夜間メンテをしなくなった日 発表資料
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料
 
データベース技術の羅針盤
データベース技術の羅針盤データベース技術の羅針盤
データベース技術の羅針盤
 
Persistence on Azure - Microsoft Azure の永続化
Persistence on Azure - Microsoft Azure の永続化Persistence on Azure - Microsoft Azure の永続化
Persistence on Azure - Microsoft Azure の永続化
 
MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術
 
MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間
 
PostgreSQL10徹底解説
PostgreSQL10徹底解説PostgreSQL10徹底解説
PostgreSQL10徹底解説
 
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
 
Couchbase introduction-20150611
Couchbase introduction-20150611Couchbase introduction-20150611
Couchbase introduction-20150611
 
S10 日本東西リージョンでのディザスタ リカバリ環境の実現
S10 日本東西リージョンでのディザスタ リカバリ環境の実現S10 日本東西リージョンでのディザスタ リカバリ環境の実現
S10 日本東西リージョンでのディザスタ リカバリ環境の実現
 

Viewers also liked

カジュアルにMySQL Clusterを使ってみよう@MySQL Cluster Casual Talks 2013.09
カジュアルにMySQL Clusterを使ってみよう@MySQL Cluster Casual Talks 2013.09カジュアルにMySQL Clusterを使ってみよう@MySQL Cluster Casual Talks 2013.09
カジュアルにMySQL Clusterを使ってみよう@MySQL Cluster Casual Talks 2013.09Mikiya Okuno
 
エフェクト用 Shader 機能紹介
エフェクト用 Shader 機能紹介エフェクト用 Shader 機能紹介
エフェクト用 Shader 機能紹介Hajime Sanno
 
HttpClient詳解、或いは非同期の落とし穴について
HttpClient詳解、或いは非同期の落とし穴についてHttpClient詳解、或いは非同期の落とし穴について
HttpClient詳解、或いは非同期の落とし穴についてYoshifumi Kawai
 
エンジニアがデザインやってみた @ Aimning MeetUp 2017/10
エンジニアがデザインやってみた @ Aimning MeetUp 2017/10エンジニアがデザインやってみた @ Aimning MeetUp 2017/10
エンジニアがデザインやってみた @ Aimning MeetUp 2017/10Hidenori Doi
 
エフェクトにしっかり色を付ける方法
エフェクトにしっかり色を付ける方法エフェクトにしっかり色を付ける方法
エフェクトにしっかり色を付ける方法kmasaki
 
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術Unity Technologies Japan K.K.
 
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @Dena
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @DenaICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @Dena
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @DenaTakanori Nakai
 
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-Takahiro Kubo
 
ICLR読み会 奥村純 20170617
ICLR読み会 奥村純 20170617ICLR読み会 奥村純 20170617
ICLR読み会 奥村純 20170617Jun Okumura
 
[ICLR2017読み会 @ DeNA] ICLR2017紹介
[ICLR2017読み会 @ DeNA] ICLR2017紹介[ICLR2017読み会 @ DeNA] ICLR2017紹介
[ICLR2017読み会 @ DeNA] ICLR2017紹介Takeru Miyato
 
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会Eiji Sekiya
 
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法Yoshifumi Kawai
 
RuntimeUnitTestToolkit for Unity
RuntimeUnitTestToolkit for UnityRuntimeUnitTestToolkit for Unity
RuntimeUnitTestToolkit for UnityYoshifumi Kawai
 
NextGen Server/Client Architecture - gRPC + Unity + C#
NextGen Server/Client Architecture - gRPC + Unity + C#NextGen Server/Client Architecture - gRPC + Unity + C#
NextGen Server/Client Architecture - gRPC + Unity + C#Yoshifumi Kawai
 
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践Yoshifumi Kawai
 

Viewers also liked (20)

カジュアルにMySQL Clusterを使ってみよう@MySQL Cluster Casual Talks 2013.09
カジュアルにMySQL Clusterを使ってみよう@MySQL Cluster Casual Talks 2013.09カジュアルにMySQL Clusterを使ってみよう@MySQL Cluster Casual Talks 2013.09
カジュアルにMySQL Clusterを使ってみよう@MySQL Cluster Casual Talks 2013.09
 
エフェクト用 Shader 機能紹介
エフェクト用 Shader 機能紹介エフェクト用 Shader 機能紹介
エフェクト用 Shader 機能紹介
 
HttpClient詳解、或いは非同期の落とし穴について
HttpClient詳解、或いは非同期の落とし穴についてHttpClient詳解、或いは非同期の落とし穴について
HttpClient詳解、或いは非同期の落とし穴について
 
エンジニアがデザインやってみた @ Aimning MeetUp 2017/10
エンジニアがデザインやってみた @ Aimning MeetUp 2017/10エンジニアがデザインやってみた @ Aimning MeetUp 2017/10
エンジニアがデザインやってみた @ Aimning MeetUp 2017/10
 
エフェクトにしっかり色を付ける方法
エフェクトにしっかり色を付ける方法エフェクトにしっかり色を付ける方法
エフェクトにしっかり色を付ける方法
 
Binary Reading in C#
Binary Reading in C#Binary Reading in C#
Binary Reading in C#
 
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
 
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @Dena
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @DenaICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @Dena
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @Dena
 
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-
 
ICLR読み会 奥村純 20170617
ICLR読み会 奥村純 20170617ICLR読み会 奥村純 20170617
ICLR読み会 奥村純 20170617
 
[ICLR2017読み会 @ DeNA] ICLR2017紹介
[ICLR2017読み会 @ DeNA] ICLR2017紹介[ICLR2017読み会 @ DeNA] ICLR2017紹介
[ICLR2017読み会 @ DeNA] ICLR2017紹介
 
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会
 
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
 
医療データ解析界隈から見たICLR2017
医療データ解析界隈から見たICLR2017医療データ解析界隈から見たICLR2017
医療データ解析界隈から見たICLR2017
 
170614 iclr reading-public
170614 iclr reading-public170614 iclr reading-public
170614 iclr reading-public
 
RuntimeUnitTestToolkit for Unity
RuntimeUnitTestToolkit for UnityRuntimeUnitTestToolkit for Unity
RuntimeUnitTestToolkit for Unity
 
NextGen Server/Client Architecture - gRPC + Unity + C#
NextGen Server/Client Architecture - gRPC + Unity + C#NextGen Server/Client Architecture - gRPC + Unity + C#
NextGen Server/Client Architecture - gRPC + Unity + C#
 
Q prop
Q propQ prop
Q prop
 
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
 
Deep parking
Deep parkingDeep parking
Deep parking
 

Similar to MySQL Cluster 新機能解説 7.5 and beyond

What's New in MySQL 5.7 Replication
What's New in MySQL 5.7 ReplicationWhat's New in MySQL 5.7 Replication
What's New in MySQL 5.7 ReplicationMikiya Okuno
 
MySQl 5.6新機能解説@第一回 中国地方DB勉強会
MySQl 5.6新機能解説@第一回 中国地方DB勉強会MySQl 5.6新機能解説@第一回 中国地方DB勉強会
MySQl 5.6新機能解説@第一回 中国地方DB勉強会Mikiya Okuno
 
MySQL 5.5 Update #denatech
MySQL 5.5 Update #denatechMySQL 5.5 Update #denatech
MySQL 5.5 Update #denatechMikiya Okuno
 
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~sakaik
 
MySQLトラブル解析入門
MySQLトラブル解析入門MySQLトラブル解析入門
MySQLトラブル解析入門Mikiya Okuno
 
Enter the-dolphine
Enter the-dolphineEnter the-dolphine
Enter the-dolphineMikiya Okuno
 
20110517 okuyama ソーシャルメディアが育てた技術勉強会
20110517 okuyama ソーシャルメディアが育てた技術勉強会20110517 okuyama ソーシャルメディアが育てた技術勉強会
20110517 okuyama ソーシャルメディアが育てた技術勉強会Takahiro Iwase
 
たくさんあるよMy sql互換db(正式版)
たくさんあるよMy sql互換db(正式版)たくさんあるよMy sql互換db(正式版)
たくさんあるよMy sql互換db(正式版)tabun_muri
 
初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなしOonishi Takaaki
 
Rakuten New MySQL Backup System With Xtrabackup
Rakuten New MySQL Backup System With XtrabackupRakuten New MySQL Backup System With Xtrabackup
Rakuten New MySQL Backup System With XtrabackupRakuten Group, Inc.
 
DTraceによるMySQL解析ことはじめ
DTraceによるMySQL解析ことはじめDTraceによるMySQL解析ことはじめ
DTraceによるMySQL解析ことはじめMikiya Okuno
 
20110519 okuyama tokyo_linuxstudy
20110519 okuyama tokyo_linuxstudy20110519 okuyama tokyo_linuxstudy
20110519 okuyama tokyo_linuxstudyTakahiro Iwase
 
LINEのMySQL運用について 修正版
LINEのMySQL運用について 修正版LINEのMySQL運用について 修正版
LINEのMySQL運用について 修正版LINE Corporation
 
States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -yoyamasaki
 
DynamoDBを導入した話
DynamoDBを導入した話DynamoDBを導入した話
DynamoDBを導入した話dcubeio
 
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)Masayuki Kanou
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイントKentaro Matsui
 
2019年度 若手技術者向け講座 DBMSの機能
2019年度 若手技術者向け講座 DBMSの機能2019年度 若手技術者向け講座 DBMSの機能
2019年度 若手技術者向け講座 DBMSの機能keki3
 

Similar to MySQL Cluster 新機能解説 7.5 and beyond (20)

What's New in MySQL 5.7 Replication
What's New in MySQL 5.7 ReplicationWhat's New in MySQL 5.7 Replication
What's New in MySQL 5.7 Replication
 
MySQl 5.6新機能解説@第一回 中国地方DB勉強会
MySQl 5.6新機能解説@第一回 中国地方DB勉強会MySQl 5.6新機能解説@第一回 中国地方DB勉強会
MySQl 5.6新機能解説@第一回 中国地方DB勉強会
 
MySQL 5.5 Update #denatech
MySQL 5.5 Update #denatechMySQL 5.5 Update #denatech
MySQL 5.5 Update #denatech
 
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
 
MySQLトラブル解析入門
MySQLトラブル解析入門MySQLトラブル解析入門
MySQLトラブル解析入門
 
Enter the-dolphine
Enter the-dolphineEnter the-dolphine
Enter the-dolphine
 
20110517 okuyama ソーシャルメディアが育てた技術勉強会
20110517 okuyama ソーシャルメディアが育てた技術勉強会20110517 okuyama ソーシャルメディアが育てた技術勉強会
20110517 okuyama ソーシャルメディアが育てた技術勉強会
 
たくさんあるよMy sql互換db(正式版)
たくさんあるよMy sql互換db(正式版)たくさんあるよMy sql互換db(正式版)
たくさんあるよMy sql互換db(正式版)
 
初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし
 
MySQL de NoSQL Fukuoka
MySQL de NoSQL FukuokaMySQL de NoSQL Fukuoka
MySQL de NoSQL Fukuoka
 
Rakuten New MySQL Backup System With Xtrabackup
Rakuten New MySQL Backup System With XtrabackupRakuten New MySQL Backup System With Xtrabackup
Rakuten New MySQL Backup System With Xtrabackup
 
DTraceによるMySQL解析ことはじめ
DTraceによるMySQL解析ことはじめDTraceによるMySQL解析ことはじめ
DTraceによるMySQL解析ことはじめ
 
20110519 okuyama tokyo_linuxstudy
20110519 okuyama tokyo_linuxstudy20110519 okuyama tokyo_linuxstudy
20110519 okuyama tokyo_linuxstudy
 
LINEのMySQL運用について 修正版
LINEのMySQL運用について 修正版LINEのMySQL運用について 修正版
LINEのMySQL運用について 修正版
 
States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -
 
DynamoDBを導入した話
DynamoDBを導入した話DynamoDBを導入した話
DynamoDBを導入した話
 
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
 
Djangoのススメ
DjangoのススメDjangoのススメ
Djangoのススメ
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント
 
2019年度 若手技術者向け講座 DBMSの機能
2019年度 若手技術者向け講座 DBMSの機能2019年度 若手技術者向け講座 DBMSの機能
2019年度 若手技術者向け講座 DBMSの機能
 

More from Mikiya Okuno

MySQL 5.7 トラブルシューティング 性能解析入門編
MySQL 5.7 トラブルシューティング 性能解析入門編MySQL 5.7 トラブルシューティング 性能解析入門編
MySQL 5.7 トラブルシューティング 性能解析入門編Mikiya Okuno
 
私は如何にして詳解 MySQL 5.7を執筆するに至ったか
私は如何にして詳解 MySQL 5.7を執筆するに至ったか私は如何にして詳解 MySQL 5.7を執筆するに至ったか
私は如何にして詳解 MySQL 5.7を執筆するに至ったかMikiya Okuno
 
リレーショナルデータベースとの上手な付き合い方
リレーショナルデータベースとの上手な付き合い方リレーショナルデータベースとの上手な付き合い方
リレーショナルデータベースとの上手な付き合い方Mikiya Okuno
 
リレーショナルデータベースとの上手な付き合い方 long version
リレーショナルデータベースとの上手な付き合い方 long version リレーショナルデータベースとの上手な付き合い方 long version
リレーショナルデータベースとの上手な付き合い方 long version Mikiya Okuno
 
What's New in MySQL 5.7 Security
What's New in MySQL 5.7 SecurityWhat's New in MySQL 5.7 Security
What's New in MySQL 5.7 SecurityMikiya Okuno
 
とあるギークのキーボード遍歴
とあるギークのキーボード遍歴とあるギークのキーボード遍歴
とあるギークのキーボード遍歴Mikiya Okuno
 
MySQLアーキテクチャ図解講座
MySQLアーキテクチャ図解講座MySQLアーキテクチャ図解講座
MySQLアーキテクチャ図解講座Mikiya Okuno
 
What's New in MySQL 5.7 InnoDB
What's New in MySQL 5.7 InnoDBWhat's New in MySQL 5.7 InnoDB
What's New in MySQL 5.7 InnoDBMikiya Okuno
 
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015Mikiya Okuno
 
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)Mikiya Okuno
 
なぜ、いまリレーショナルモデルなのか
なぜ、いまリレーショナルモデルなのかなぜ、いまリレーショナルモデルなのか
なぜ、いまリレーショナルモデルなのかMikiya Okuno
 
データモデルについて知っておくべき7つのこと 〜NoSQLに手を出す前に〜
データモデルについて知っておくべき7つのこと 〜NoSQLに手を出す前に〜データモデルについて知っておくべき7つのこと 〜NoSQLに手を出す前に〜
データモデルについて知っておくべき7つのこと 〜NoSQLに手を出す前に〜Mikiya Okuno
 
人類は如何にして大切な データベースを守るべきか
人類は如何にして大切な データベースを守るべきか人類は如何にして大切な データベースを守るべきか
人類は如何にして大切な データベースを守るべきかMikiya Okuno
 
RDBにおけるバリデーションをリレーショナルモデルから考える
RDBにおけるバリデーションをリレーショナルモデルから考えるRDBにおけるバリデーションをリレーショナルモデルから考える
RDBにおけるバリデーションをリレーショナルモデルから考えるMikiya Okuno
 
リレーショナルな正しいデータベース設計
リレーショナルな正しいデータベース設計リレーショナルな正しいデータベース設計
リレーショナルな正しいデータベース設計Mikiya Okuno
 
あなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデルあなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデルMikiya Okuno
 
データベース設計徹底指南
データベース設計徹底指南データベース設計徹底指南
データベース設計徹底指南Mikiya Okuno
 
Rdbms qpstudy-okuno
Rdbms qpstudy-okunoRdbms qpstudy-okuno
Rdbms qpstudy-okunoMikiya Okuno
 
Database qpstudy-okuno
Database qpstudy-okunoDatabase qpstudy-okuno
Database qpstudy-okunoMikiya Okuno
 

More from Mikiya Okuno (20)

MySQL 5.7 トラブルシューティング 性能解析入門編
MySQL 5.7 トラブルシューティング 性能解析入門編MySQL 5.7 トラブルシューティング 性能解析入門編
MySQL 5.7 トラブルシューティング 性能解析入門編
 
私は如何にして詳解 MySQL 5.7を執筆するに至ったか
私は如何にして詳解 MySQL 5.7を執筆するに至ったか私は如何にして詳解 MySQL 5.7を執筆するに至ったか
私は如何にして詳解 MySQL 5.7を執筆するに至ったか
 
リレーショナルデータベースとの上手な付き合い方
リレーショナルデータベースとの上手な付き合い方リレーショナルデータベースとの上手な付き合い方
リレーショナルデータベースとの上手な付き合い方
 
リレーショナルデータベースとの上手な付き合い方 long version
リレーショナルデータベースとの上手な付き合い方 long version リレーショナルデータベースとの上手な付き合い方 long version
リレーショナルデータベースとの上手な付き合い方 long version
 
What's New in MySQL 5.7 Security
What's New in MySQL 5.7 SecurityWhat's New in MySQL 5.7 Security
What's New in MySQL 5.7 Security
 
とあるギークのキーボード遍歴
とあるギークのキーボード遍歴とあるギークのキーボード遍歴
とあるギークのキーボード遍歴
 
MySQLアーキテクチャ図解講座
MySQLアーキテクチャ図解講座MySQLアーキテクチャ図解講座
MySQLアーキテクチャ図解講座
 
What's New in MySQL 5.7 InnoDB
What's New in MySQL 5.7 InnoDBWhat's New in MySQL 5.7 InnoDB
What's New in MySQL 5.7 InnoDB
 
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015
 
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
 
なぜ、いまリレーショナルモデルなのか
なぜ、いまリレーショナルモデルなのかなぜ、いまリレーショナルモデルなのか
なぜ、いまリレーショナルモデルなのか
 
データモデルについて知っておくべき7つのこと 〜NoSQLに手を出す前に〜
データモデルについて知っておくべき7つのこと 〜NoSQLに手を出す前に〜データモデルについて知っておくべき7つのこと 〜NoSQLに手を出す前に〜
データモデルについて知っておくべき7つのこと 〜NoSQLに手を出す前に〜
 
人類は如何にして大切な データベースを守るべきか
人類は如何にして大切な データベースを守るべきか人類は如何にして大切な データベースを守るべきか
人類は如何にして大切な データベースを守るべきか
 
RDBにおけるバリデーションをリレーショナルモデルから考える
RDBにおけるバリデーションをリレーショナルモデルから考えるRDBにおけるバリデーションをリレーショナルモデルから考える
RDBにおけるバリデーションをリレーショナルモデルから考える
 
リレーショナルな正しいデータベース設計
リレーショナルな正しいデータベース設計リレーショナルな正しいデータベース設計
リレーショナルな正しいデータベース設計
 
あなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデルあなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデル
 
データベース設計徹底指南
データベース設計徹底指南データベース設計徹底指南
データベース設計徹底指南
 
Mysql toranomaki
Mysql toranomakiMysql toranomaki
Mysql toranomaki
 
Rdbms qpstudy-okuno
Rdbms qpstudy-okunoRdbms qpstudy-okuno
Rdbms qpstudy-okuno
 
Database qpstudy-okuno
Database qpstudy-okunoDatabase qpstudy-okuno
Database qpstudy-okuno
 

MySQL Cluster 新機能解説 7.5 and beyond

  • 1. MySQL ClusterMySQL Cluster 新機能解説新機能解説 7.5 and beyond7.5 and beyond 奥野 幹也 Twitter: @nippondanji mikiya (dot) okuno (at) gmail (dot) com @DBTS-Tokyo 2017
  • 3. 自己紹介 ● MySQL サポートエンジニア – 日々のしごと ● トラブルシューティング全般 ● Q&A 回答 ● パフォーマンスチューニング など ● ライフワーク – 自由なソフトウェアの普及 – 趣味はリカンベントに乗ること ● 最近は執筆と子育ての日々・・・ ● ブログ – 漢のコンピュータ道 – http://nippondanji.blogspot.com/
  • 5. MySQL “NDB” Cluster ● マニュアル上での表記が変更 – MySQL Cluster MySQL→ NDB Cluster – https://dev.mysql.com/doc/refman/en/mysql-cluster.html ● MySQL InnoDB Cluster との明確化 ● 製品名としての変更は(今のところ)ナシ – MySQL Cluster Carrier Grade Edition – https://www.mysql.com/products/cluster/ – ややこしや〜 本セッションでは MySQL NDB Cluster に統一
  • 6. MySQL NDB Cluster 7.5 新機能概要
  • 7. MySQL NDB Cluster 7.5 新機能概要 ● MySQL 5.7 との統合 ● インデックス統計情報の改良 ● ndbinfo の拡充 ● バックアップレプリカからの参照 ● 全データノードへのレプリカ ● テーブルの容量制限改善 ● ndb_restore コマンドの SQL 出力 2016 年 10 月リリース
  • 9. MySQL 5.7 との統合 ● MySQL サーバーの最新版 – 2015 年 10 月リリース – 175 を超える新機能搭載 ● SQL ノード= NDB ストレージエンジンつき MySQL サー バー – ストレージエンジンを変更するだけで同じ SQL でアクセス 可能 – MySQL NDB Cluster でもメリットの享受が可能 ● MySQL NDB Cluster 7.5 MySQL 5.7→ ● MySQL NDB Cluster 7.3, 7.4 MySQL 5.6→ ● MySQL NDB Cluster 7.2 MySQL 5.5→
  • 10. MySQL 5.7 の機能 ● レプリケーション関連 ● InnoDB 関連 ● オプティマイザー関連 ● セキュリティ関連 ● パフォーマンススキーマ関連 ● GIS 関連 ● JSON 関連 ● etc etc...
  • 11. 詳解 MySQL 5.7 止まらぬ進化に乗り遅れないためのテクニカルガイド ● MySQL 5.7 の新機能を網羅的に解説 – 175 の新機能 – WorkLog/Bug Id つき – コンセプト、仕組み、使い方 ● 新機能の理解に必要な前提知識 – 古いバージョンでも適用可能 – アーキテクチャを理解することで 本物の理解を
  • 13. Records-per-key 最適化 ● オプティマイザが JOIN のときに参照する情報 ● 外部表の 1 行に対して、内部表から平均何行がマッチする か – ストレージエンジンが値を返す – MySQL 5.7 においてデータ型が INT から FLOAT に変更 ● より正確な JOIN のコスト見積が可能に ● MySQL NDB Cluster 7.5 も FLOAT に対応
  • 14. その他のオプティマイザ関連の 新機能 ● EXPLAIN FOR CONNECTION ● 新しいコストモデル ● オプティマイザヒント ● ディスクベースのテンポラリテーブルを InnoDB 化 ● UNION ALL がテンポラリテーブル不要に ● コストに WHERE 句による絞り込みを考慮 ● GROUP BY の動作を SQL 標準準拠に ● FROM 句のサブクエリでテンポラリテーブルが不要な場合 作成しないように etc etc
  • 15. パフォーマンススキーマと sys スキーマ ● パフォーマンス・スキーマ – 種々の統計情報を取得 – 主にパフォーマンス解析に利用 – 情報の種類が多すぎて使いこなすのが難しいのが難点 – バージョンが上がるごとに情報の種類が増加 ● sys スキーマ – パフォーマンス・スキーマと情報スキーマを横断的にアク セスするビューのコレクション – パフォーマンス・スキーマよりも直感的に利用可能 – MySQL 5.7 で追加 ● 元々は独立したプロジェクトだった ● MySQL 5.6 用もあり
  • 16. MySQL NDB Cluster とは 無関係の MySQL 5.7 の変更点 ● InnoDB 全般 – SQL ノード上で併用する場合は利点あり – ディスク上のテンポラリテーブルが InnoDB になった点は メリットあり ● レプリケーションのサポートされていない機能 – GTID – 準同期レプリケーション – マルチスレッドスレーブ – マルチソースレプリケーション ● MySQL NDB Cluster には無い機能 – 空間インデックス – フルテキストインデックス
  • 18. ndbinfo とは ● MySQL NDB Cluster 用の情報取得ツール ● ndbinfo スキーマに各種テーブルがある ● データノードからメタデータや統計情報を取得
  • 19. MySQL NDB Cluster 7.5 における改良点 ● config_params… パラメーターの説明やデフォルト値、 データ型などが追加 ● config_values… 現在のパラメーターの設定値を格納。 ● dict_obj_info... 各種データベースオブジェクトの情報。 ● table_distribution_status... テーブルの LCP 状況等 ● table_fragments... テーブルごとのフラグメントの状態 ● table_info... テーブルの各種情報 ● table_replicas... レプリカの状態
  • 21. Read from backup replica ● これまではプライマリーレプリカのみ R/W 可能 ● プライマリーレプリカを各データノードに分散させることで、 負荷も分散 ● MySQL NDB Cluster 7.5 より、バックアップレプリカからの 参照が可能に – ただしデフォルトではこれまで通りプライマリーのみにアク セス可能 – テーブル作成時に指定した場合のみ
  • 22. レプリカの動き Data node 1 Data node 2 Primary Secondary Primary Secondary データ同期 データ同期
  • 23. Read from backup replica を使わない場合 Data node 1 Data node 2 Primary Secondary Primary Secondary Client R/W R/W
  • 24. Read from backup replica を使った場合 Data node 1 Data node 2 Primary Secondary Primary Secondary Client R/W R/W R R
  • 26. 通常のテーブルの場合 ノードグループ 1 ノードグループ 2 Data node 1 Data node 2 Data node 3 Data node 4 F1 primary F3 backup F1 backup F3 primary F2 backup F4 primary F2 primary F4 backup
  • 27. Fully replicated table (全体複製テーブル) ノードグループ 1 ノードグループ 2 Data node 1 Data node 2 Data node 3 Data node 4 F1,F2, F3,F4 F1,F2, F3,F4 F1,F2, F3,F4 F1,F2, F3,F4
  • 29. テーブルサイズの制限 ● MySQL NDB Cluster 7.4 まで – FIXED フォーマット部分はフラグメントあたり 16GB まで – フラグメント数はデータノード数と同じ ● MySQL NDB Cluster 7.5 – FIXED フォーマット部分のデータサイズは 128TB まで – ただしデータノードごとの DataMemory の上限が 1TB ● データノードは 48 ノードなので、実質的な上限は 48TB ● レプリカ数2なら 24TB
  • 31. ndb_restore コマンドの SQL 出力 ● ndb_restore は、ネイティブバックアップをリストアするツー ル – データノードへクライアントとして接続してリストア – バックアップはメタデータ、データ、ログから構成される – データ部分を CSV で、ログをテキストで出力する機能が あった ● MySQL NDB Cluster 7.5 において、ログの出力が SQL 対 応 – InnoDB など、他のストレージエンジンへのデータ移行に – InnoDB へのレプリケーションのセットアップ
  • 33. MySQL Cluster 7.6 DRM 登場 ● MySQL Cluster 7.6 Development Milestone Release とは? – Release Candidate になる前のバージョン – 機能の追加・削除が予告なく変更される場合有り ● 準備が整った機能から順番に統合される – キャンセルされる場合もあり ● MySQL Cluster 7.6.3 dmr – 2017 年 7 月 5 日リリース ● 正式版ではありません! – https://lists.mysql.com/announce/1185
  • 34. MySQL NDB Cluster 7.6 の (予定された)新機能概要 ● ディスク型テーブルの新フォーマット ● メモリ割り当て設定の改善 ● ndbinfo の拡充 ● CSV データのインポートツール ● 新しいモニタリングツール ● LCP のスループット安定化 ● SPJ の改良 ● システム名の指定
  • 36. ディスク型テーブルの 新フォーマット ● ページチェックサムの追加 ● CREATE TABLE SCHEMA VERSION ID の導入 – DROP/CREATE により、 Table ID が再利用されてしまう – 同じ Table ID を持ったエクステントが CREATE 後のテー ブルのものだと誤って判定されてしまう ● イニシャルローリングリスタートにより新しいフォーマットへ変 更 – 古いフォーマットを持つバージョンにはダウングレードでき ない
  • 38. IndexMemory の廃止 ● DataMemory から動的に割り当て – 必要な分だけが割り当てられるように – 無駄がない – 設定がちょっとだけシンプルに ● DataMemory だけサイジングすれば OK
  • 39. DataMemory から SharedGlobalMemory へ ● メモリ割り当て先の変更 ● DataMemory – データの格納に関する部分に特化 ● SharedGlobalMemory – トランザクション処理に関するメモリはこちらから割り当て – 以前より多く必要になるかも ● 変更されたものの例 – レプリケーション用イベントバッファ – ファイルの初期化処理用バッファ – オフラインのインデックス作成用バッファ etc storage/ndb/src/kernel/blocks/record_types.hpp
  • 41. ndbinfo に2つのテーブルが追加 ● config_nodes – config.ini 内で定義されたノードの一覧 ● processes – 現在接続中のプロセス(ノード)一覧 ndb_mgm -e SHOW の代わりに使うと便利
  • 43. ndb_import ● LOAD DATA INFILE のように CSV データをテーブルに取 り込むツール ● データノードへ直接接続 – 高速! – API ノードのひとつとして動作 – データノードへの接続数、接続あたりのスレッド数を指定 可能 ndb_import -c connectstring db_name table_name.csv
  • 45. ndb_top ● SQL ノードの ndbinfo からデータノードの負荷を監視 ● スレッドごとに負荷を計測 shell> ndb_top --user=root --passwd -n 2
  • 47. LCP とは ● Local checkpoint の略 ● データノードは定期的に DataMemory 上のデータを、ファ イルへ書き出している – 全体を順次スキャン – 2 世代分のデータがファイルに保存 – かなりの I/O が発生する ● GCP ( Global checkpoint )とセットでデータを復元 – GCP = Redo logging
  • 48. LCP のスループット安定化 ● LCP は I/O が遅いと自動的にスループットを調整する機能 がある ● 7.5 までのバージョンでは、 LDM スレッドごとに I/O 遅延を モニタリングし、スループットを調整していた – 他の LDM スレッドはスループットを調整しないかも知れ ない – LDM = Local Data Manager ● 7.6 では I/O 遅延のモニタリングをデータノード全体で統一 して行うようになった – より正確にサーバー全体の I/O の状況を反映するように なった。
  • 50. SPJ とは ● Select-Project-Join の略 – 別名 Pushdown Join ● データノード上で JOIN を実行し、結果を SQL ノードへ返す – 非常に高速! – データノード・ SQL ノード間のラウンドトリップを省略 – 複数のデータノード上で JOIN を並列実行
  • 51. Pushdown Join が効率化 ● DBSPJ カーネルブロックのシグナル周りの改良 – 余分なシグナルが送信されないように – シグナルフォーマットをコンパクトに ● ロードバランスの改善 – LDM スレッド数が、 TC スレッド数で割り切れない場 合、 DBSPJ の負荷に偏りが生じていた – その場合、 DBSPJ ブロックをラウンドロビンで使うようにす ることで、スレッドごとの負荷を平坦化
  • 53. システム名とは ● クラスタを識別するためのタグのようなもの ● config.ini 内で指定 [System] Name = system_name ● SHOW GLOBAL STATUS LIKE ‘Ndb_system_name’ で 参照
  • 55. MySQL “NDB” Cluster は 着々と進化中!! ● MySQL NDB Cluster 7.5 、 7.6DMR で着実な進化 – 派手な変更は無いが、役立つ新機能が多数 ● 機能面 – MySQL 5.7 との統合により充実 – ndb_top 、 ndb_import などの新しいツール ● 性能面 – オプティマイザの改善により、 SQL 実行が高速化 – LCP スループットの安定 – バックアップレプリカらからの参照 – DBSPJ の改良 ● 運用面 – ndbinfo による監視の充実 – システム名による識別
  • 56. 宣伝:書籍が出ます! Pro MySQL NDB Cluster ● Pro MySQL NDB Cluster / Apress Media – MySQL NDB Cluster 7.5 の解説書 – 同僚の Jesper との共著 – 英語です。 – お値段は $49.99
  • 58. 宣伝:サポートエンジニア募集中!! ● MySQL サポートチームで一緒に働いてみませんか?! ● 技術力が物を言うポジションです! – 技術力に自信のある方、技術を磨きたい方歓迎 – L1 から L3 までの問い合わせをすべて受け持ち ● クエリのチューニングなども行います ● オープンソースなのでソースコード見放題!! – 英語より技術力重視 ● 普段の業務は日本語オンリーです。 ● 日本の顧客がターゲットです。 ● 上司は海外 – やりとりは英語のみ – TOEIC 700 程度が目安 ● 在宅勤務可能