More Related Content
PDF
fluentd を利用した大規模ウェブサービスのロギング PPTX
PDF
PDF
PDF
PDF
MHA for MySQLとDeNAのオープンソースの話 PDF
Art of MySQL Replication. PDF
MySQL Cluster 新機能解説 7.5 and beyond What's hot
PDF
PPTX
PDF
PPTX
MySQLメインの人がPostgreSQLのベンチマークをしてみた話 PDF
MySQL5.7とMariaDB10.1の性能比較(簡易) PDF
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06 PDF
PPT
PDF
PDF
Guide to Cassandra for Production Deployments PDF
What's New in MySQL 5.7 InnoDB PPTX
最近始めたあなたも今日から語れるようになるMySQLの{概要と最新情報}入門@ PPT
PPTX
innodb_thread_concurrencyとtransparent hugepageの影響 PDF
MySQLからPostgreSQLへのマイグレーションのハマリ所 PPTX
PPT
Handlersocket etc. 20110906 PDF
MySQL Cluster 解説 & MySQL Cluster 7.3 最新情報 PDF
PDF
Similar to MySQL at Yahoo! JAPAN #dbts2018
PDF
Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSS PPTX
20140518 JJUG MySQL Clsuter as NoSQL PDF
PDF
PDF
PDF
MySQL最新動向と便利ツールMySQL Workbench PDF
MySQLとオープンソースビジネスの10年、そして未来へ PDF
PDF
PDF
MySQL Fabric with OpenStack Nova PPTX
PDF
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント) PDF
OpenStackにおける、MySQLの活用 – OpenStackのリポジトリとしての、DBサービスの基盤としての、MySQL - OpenStack... PDF
MySQL Cluster7.3 GAリリース記念セミナー! MySQL & NoSQL 圧倒的な進化を続けるMySQLの最新機能! PPTX
[OSC 2017 Tokyo/Fall] OSSコンソーシアム DB部会 MySQL 8.0 PDF
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20 PDF
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック PPTX
MySQL Technology Cafe #14 MySQL Shellを使ってもっと楽をしようの会 PDF
20190530 osc hokkaido_public PDF
20170622_MySQL最新情報 ~MySQL 8.0 開発状況、MySQL InnoDB Cluster、などのご紹介~ by 日本オラクル株式会社... More from Yahoo!デベロッパーネットワーク
PDF
PDF
継続的なモデルモニタリングを実現するKubernetes Operator PDF
ヤフーでは開発迅速性と品質のバランスをどう取ってるか PDF
オンプレML基盤on Kubernetes パネルディスカッション PDF
PDF
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜 PDF
Persistent-memory-native Database High-availability Feature PDF
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2 PDF
eコマースと実店舗の相互利益を目指したデザイン #yjtc PDF
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc PDF
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc PDF
PDF
サイエンス領域におけるMLOpsの取り組み #yjtc PDF
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc PDF
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc PDF
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc PDF
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc PDF
モブデザインによる多職種チームのコミュニケーション改善 #yjtc PDF
「新しいおうち探し」のためのAIアシスト検索 #yjtc PDF
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc MySQL at Yahoo! JAPAN #dbts2018
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
Oracle Database
• OracleEnterprise Edition RAC 11g, 12c
• 250DB
• 主に、ミッションクリティカル用途
• Order made 寄りの運用
• 1DBあたりのDBA比率
• MySQL : Oracle = 1 : 25
21
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
OpenStack Trove を選択
•Database As A Service コンポーネント
• 機能
• DBインスタンスの作成
• DBアカウントの管理
• DBの起動・停止
• リサイズ(VMスペック変更)
• etc…
• 対応しているデータストア
• MySQL, MariaDB, Percona, Redis, Cassandra…
36
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
PXC 概要
• マルチライターのMySQLfork
• Group Replication とほぼ同じ
• 用途
• ビルドイン 高可用性
• Read Scalability
• Disaster Recovery
• スレーブも追加可
44
async
slave
async
slave
- 45.
- 46.
- 47.
- 48.
- 49.
- 50.
- 51.
PXCのロック
51
時間 行の値 トランザクション1on ノード1 トランザクション2 on ノード2
T1 - mysql> BEGIN;
Query OK, 0 rows affected (0.00 sec)
mysql> UPDATE grplt.tbl SET col1 = 10,
who_update = ‘A' WHERE pk = 1;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
T2 - mysql> BEGIN;
Query OK, 0 rows affected (0.00 sec)
mysql> UPDATE grplt.tbl SET col1 = 10,
who_update = ‘B' WHERE pk = 1;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
T3 A mysql> COMMIT;
Query OK, 0 rows affected (0.00 sec)
(ノード1の更新内容が伝わってくる)
T4 A mysql> COMMIT;
ERROR 1213 (40001): Deadlock found when
trying to get lock; try restarting transaction
- 52.
PXCのロック
52
時間 行の値 トランザクション1on ノード1 トランザクション2 on ノード2
T1 - mysql> BEGIN;
Query OK, 0 rows affected (0.00 sec)
mysql> UPDATE grplt.tbl SET col1 = 10,
who_update = ‘A' WHERE pk = 1;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
T2 - mysql> BEGIN;
Query OK, 0 rows affected (0.00 sec)
mysql> UPDATE grplt.tbl SET col1 = 10,
who_update = ‘B' WHERE pk = 1;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
T3 A mysql> COMMIT;
Query OK, 0 rows affected (0.00 sec)
(ノード1の更新内容が伝わってくる)
T4 A mysql> COMMIT;
ERROR 1213 (40001): Deadlock found when
trying to get lock; try restarting transaction
• 異なるノードでロックが競合した場合、「先勝ち」
• デッドロックは必要に応じてリトライ
• LBをSingle-Primaryで運用すれば、従来と同じ挙動に
- 53.
Multi Master ,Multi Writer ?
• 不整合の考慮が必要
• 片方にのみ書込、Active/Standby
• 同時更新で不整合は起こらない
• 容易に高可用性構成が組める
Client Client
- 54.
Why Percona ?
•設計当時まだGRは未リリース
• 自動データリカバリ
• State Snapshot Transfer
• 中身はxtrabackupをncで転送
54
- 55.
- 56.
- 57.
MySQL at Yahoo!JAPAN
57
管理対象DB数
1600
DBの規模
85%が30G以下
DB基盤構成
2世代
チーム
人数
問合せ数
- 58.
MySQL at Yahoo!JAPAN
58
管理対象DB数
1600
DBの規模
85%が30G以下
DB基盤構成
2世代
チーム
人数
問合せ数
- 59.
- 60.
- 61.
- 62.
- 63.
- 64.
- 65.
- 66.
- 67.
- 68.
- 69.
MySQL at Yahoo!JAPAN
69
管理対象DB数
1600
DBの規模
85%が30G以下
DB基盤構成
2世代
チーム人数
10名 問合せ数
- 70.
MySQL at Yahoo!JAPAN
70
管理対象DB数
1600
DBの規模
85%が30G以下
DB基盤構成
2世代
チーム人数
10名 問合せ数
- 71.
MySQL at Yahoo!JAPAN
71
管理対象DB数
1600
DBの規模
85%が30G以下
DB基盤構成
2世代
チーム人数
10名 20/week
- 72.
- 73.
- 74.
- 75.
- 76.
- 77.
- 78.
- 79.
- 80.
- 81.
- 82.
- 83.
MySQL at Yahoo!JAPAN
83
管理対象DB数
1600
DBの規模
85%が30G以下
DB基盤構成
2世代
チーム人数
10名
問合わせ数
20件/week
- 84.
- 85.
- 86.
- 87.
- 88.
- 89.
- 90.
- 91.
- 92.
明日のMySQL Session
時間 セッション名
09:30-MySQL/PostgreSQL
だけで作る高速あいまい全文検索システム
13:30- 稼働中プロジェクトにおけるMySQLバージョンアップ
14:30- MySQL: 突然全てのスレーブのレプケーションが “unknown
error reading log event on the master “ というエラーで
停止したら
15:30- 5.6から5.7へ、そして更なるサービスの可用性を目指して
17:30- LINEのMySQLの運用について