Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
MySQL Cluster 7.2
Slide 2
Slide 2 text
Introduction MySQL Cluster : 分散型リアルタイムデータベース管理システム 高いスループット・拡張性・可用性を実現 複数のサーバーで同時に更新と参照を行える 既存のアプリとSQLの互換性を保てる 99.999%の 高可用性
Slide 3
Slide 3 text
No content
Slide 4
Slide 4 text
Features ・SQLまたは固有のAPI(Java/C++)によるアクセス → NewSQL ・高速なインメモリ型テーブル ・容量が必要な場合のディスク型テーブル ・アクティブ‐アクティブなクラスタ構成 ・シェアードナッシングアーキテクチャ ・ACID準拠のトランザクション ・行レベルロック ・ビルトインのHA機能 ・ノードの台数に応じた高い並列処理 ・オンラインバックアップ ・オンラインスキーマ変更 ・オンラインノード拡張 ・オンライン(ローリング)アップグレード・ダウングレード ・レプリケーション ・スキーマ、データの同期自動化
Slide 5
Slide 5 text
「NewSQL」 = NoSQL + RDBMS <NoSQLインターフェース> NewSQL SQLでも、NoSQLでも、同一のデータを扱う NDB API memcached API (7.2から)
Slide 6
Slide 6 text
インメモリ型テーブル・ディスク型テーブルのハイブリッド ※種類 In-memory ディスク型テーブル 大容量データ インメモリ型テーブル 高速、高トランザクション (ex. TimesTen by Oracle, MySQL MEMORY engine, solidDB by IBM, MemSQL) ハイブリッド型 (ex. Altibase)
Slide 7
Slide 7 text
アクティブ・アクティブなクラスタ構成 各ノードがアプリケーション処理作業を共有 障害発生時には他のノードのバックアップ (自動フェールオーバー) データは複数のノードに記録される Active-Active アクティブ‐アクティブ構成 アクティブ‐パッシブ構成 ※種類
Slide 8
Slide 8 text
シェアートナッシングアーキテクチャ = 各ノードがリソースを共有していない 共有ディスク、共有メモリなし 単一障害点(single point of failure)なし 高いスケーラビリティ shared nothing architecture
Slide 9
Slide 9 text
7.1 → 7.2 (2012/02/15 正式版公開) ・joinが70倍高速 (Adaptive Query Localizationによる) ・Memcached API搭載 Release Note
Slide 10
Slide 10 text
●複数のコンピュータを使って構成 → RDBMSよりも管理が難しめ ●日本語の解説書がなかった (「MySQL Cluster構築・運用バイブル」2012/04/25 初版) ●一般的なMySQLの知識が完全に通用するわけではない Demerits
Slide 11
Slide 11 text
初期:電気通信分野で利用される ・マピオンモバイルの顧客管理データベース(2009/04) ・NEC モバイルインターネットプラットホーム(3G、顧 客バックエンドシステム、認証、アクセス制御、メッ セージ制御、課金処理) ・楽天証券のMarketSpeed ・Nokia, Alcatel-Lucent, Glassfish Open Message Queue (OpenMQ) Example
Slide 12
Slide 12 text
ベンチャー企業のAlzato社が開発 「NDB」という名称 スウェーデンのEricsson社がテレコムユーザー向けに 開発 →元々は通信業界向けに開発されたもの 旧MySQL ABに買収される MySQLのストレージエンジン NDBCLUSTER が誕生 History
Slide 13
Slide 13 text
複数ホストが協調 全体でひとつのRDMBS Components
Slide 14
Slide 14 text
ノード:MySQL Clusterを構成するプロセス 別々のホスト上で実行 MySQL ProxyやConnector/Jの機能を使って分散処理可能 ●管理ノード:クラスタ全体の設定や管理 ●データノード:データ格納 ●SQLノード:MySQL Server (SQL解析、ソート、結果送信) MySQL Cluster Architecture 最大ノード数:255 最大データノード数:48
Slide 15
Slide 15 text
このノードからほとんどすべての操作、状態確認が可能 config.iniの設定値を伝搬 デーモンプロセス:ndb_mgmd ポート(デフォルト):1186 Management Nodes
Slide 16
Slide 16 text
Data Nodes モジュール ・ndbd(シングルスレッド版) ・ndbmtd(マルチスレッド版) 行ごとに複数の各データノードへ振り分け 役割 ・トランザクションの実行 ・並列スキャン ・データの複製 ・チェックポイント処理 ・ハートビート監視、 フェイルオーバー
Slide 17
Slide 17 text
SQL Nodes SQLによるリクエストを処理 通常のmysqldにNDBCLUSTERストレージエンジンが 組み込まれたもの
Slide 18
Slide 18 text
○レプリケーション MySQL Cluster-> MySQL Cluster MySQL Cluster-> MySQL ○バックアップ 常にフルバックアップ Replication, Backup
Slide 19
Slide 19 text
Next MySQL Cluster 7.2 as NoSQL