MySQLを7000インスタンス規模で運用するLINEは、MySQL互換のNewSQLをどう評価したか?[PR]

今回は「MySQLを7000インスタンス規模で運用するLINEは、MySQL互換のNewSQLをどう評価したか?[PR]」についてご紹介します。

関連ワード (仕組、内部、進化等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


コミュニケーションアプリ「LINE」をはじめ、多くの大規模サービスを運営するLINE株式会社は、LINEマンガやLINE GAME、LINEギフトなどをはじめとするLINE関連サービスのデータベース基盤として約7000ものMySQLインスタンスを運用しています。

このMySQLインスタンスの国内における管理と運用を行っているのが、MySQLコミュニティでも活躍する国内トップクラスのMySQLエキスパートを含む7名のITエンジニアで構成される「MySQL1チーム」です。

同チームのマネージャーである北川健太郎氏は、LINE関連サービスの発展に伴って増大するMySQLインスタンスの運用管理という課題に、日々のオペレーションの自動化を実現するための開発を積極的に行うことで対応していると話します。

「日々のオペレーションは自動化でカバーし、サービスの開発者と密接にコミュニケーションを取って、適切なスキーマ構成やサイジングの提案など、データベース周りの相談に乗るところに時間を割きたいと考えています」(北川氏)。

figLINE株式会社 データベース室 MySQL1チーム マネージャー 北川健太郎氏

そうした中で北川氏はデータベースの「シャーディング」についての課題があったと話します。

7000ものMySQLインスタンスを管理運用するチームの課題

シャーディングとは、データベースの負荷分散により高いスケーラビリティを実現する代表的な方法の1つです。

1つのテーブルを論理的に分割して複数のデータベースサーバに割り振ることで、サーバへのアクセスを分散させます。

細かく分割するほど多くのサーバに負荷を分割できて高いスケーラビリティを実現できるようになりますが、一方で、クライアント側でシャーディングに対応したプログラミングが求められます。また、データが複数のデータベースに分散するため運用管理も複雑になります。

同チームでも高いスケーラビリティの実現にシャーディングを利用していました。

「LINE GAMEでもシャーディングを使っていて、アプリケーション側に(シャーディングの)ロジックを組み込んで利用していました。ただ、あとから成長してきたサービスを、途中からスケーラビリティのためにシャーディング対応に構成するのはかなり大変です。そこはなんとかならないかと課題に感じていました」(北川氏)。

この課題を解決するテクノロジーを模索していた中で、約2年前に見つけたのがいわゆるNewSQLとして登場したMySQL互換の「TiDB」でした。

MySQLのエキスパートによるTiDBの評価とは

そもそもTiDBはシャーディングの課題を解決し、SQLやトランザクションと言った既存のリレーショナルデータベースの良さと分散データベースによるスケーラビリティを備えたデータベースを開発しようという目的で作られたデータベースであると、TiDBの開発元であるPingCAP社の共同創業者兼CTOであるEd Huang氏は2022年開催のTiDB User Dayで語っています。

シャーディングの課題に対するソリューションを探していた北川氏がTiDBに注目したのは当然の成り行きだったと言えます。

「まずTiDBのアーキテクチャの理解から始めました」と北川氏。「うちのチームでは文化的にそこから理解できないとだめなのです。」

MySQLのエキスパートである北川氏はTiDBの調査をした上で、そのアーキテクチャや性能を次のように評しています。

「アーキテクチャを見ていく中で、なるほど、と思ったところはかなり多かったですね。レイテンシを犠牲にしてスループットを取る仕組みになっていたので、スループット性能はかなりいけるだろうなと思いました。

実際にTiDBをテストをしたところ、MySQLでは絶対に出ないライト性能が出て驚きました。また、障害時にどう振る舞うのか、モニタリングの方法、設定周りなども全部調査しました」(北川氏)。

マルチリージョン対応への対応、エコシステムについても高評価でした。

「MySQLではマルチリージョンとかマルチアベイラビリティゾーン(AZ)の構成による高可用性を実現する際の仕組みは頭を悩ませるところでしたが、TiDBでは自動的に対応してくれるのでそこも非常によいと思います。

クラスタ構成でのスケールインやスケールアウトも簡単にできますし、Grafanaなどの運用監視ツールもインストールコマンド(TiUP)ですぐ導入できるなど、エコシステムが充実している点も助かります」(北川氏)。

時代が変わってきてNewSQLも進化している

こうした評価の末、北川氏のチームはTiDBの導入に動き始めました。

「とはいえ、いきなりサービスに投入するわけにはいかないので、まずは小さいところ、我々が管理しているMySQLの高可用性(HA)構成を管理しているデータベースに採用することして、ちょうど先月リリースしたところです」(北川氏)。

figMySQL1チームが導入したTiDBのシステム概要。3つのアベイラビリティゾーンにまたがってTiDBのクラスタが構成されている。MySQLからの移行にはTiDBのマイグレーションツールが用いられた。

チーム内にはMySQLだけで運用した方がいいのではないか、という意見もあったとしつつも、それでもTiDBの導入を決断した背景について北川氏はこう説明します。

「時代が変わってきてNewSQLという分野も進化しているので、そういう新しいソリューションを導入したり検証したりすることも必要だよね、という話をチーム内で結構しました」(北川氏)。

北川氏がマネージャとして目指すのは、今後もチームが管理運用するインスタンスが増えていくなかで、チームの人数を増やさずに対応できる体制です。

「そのための開発を大切にしていきたい。そして、本来時間を使いたいところ、開発者へのコンサルティングやMySQLの内部についての勉強、そしてTiDBの調査にも時間を取っていきたい。そのためにオペレーションの自動化をさらに突き詰めていきたいと思っています」(北川氏)。

fig

TiDB User Day開催

2023年7月7日に開催される「TiDB User Day」では、LINE株式会社の事例セッションも開催されます。ぜひご参加ください。

fig

≫TiDB User Day

(本記事はPingCAP株式会社提供のタイアップ記事です)

COMMENTS


Recommended

TITLE
CATEGORY
DATE
UberとLyft、ワクチン接種会場までの無料ライドを提供へ バイデン政権の「独立記念日までに7割接種」の一環
企業・業界動向
2021-05-13 17:09
インテル、2040年までに温室効果ガス「ネットゼロ」を目指す
IT関連
2022-04-15 03:23
JPCERT/CC、カスタマイズできるマルウェアスキャンツールを公開
IT関連
2023-08-16 06:46
東芝デジタルソリューションズと三井住友海上、保険契約者向け雹災アラートを実証実験
IT関連
2023-06-29 06:24
女川町と日立システムズ、地域活性化に向けて連携–社員3人が移住
IT関連
2022-03-19 13:08
SAP HANA Cloudに低コスト化を実現する新サービス
IT関連
2021-04-21 17:08
看護部長・師長向けVR研修、NTTコムが提供 上司・部下の面談を疑似体験 接し方を学ぶ
社会とIT
2021-01-22 17:16
食べチョクが給食食材と食育コンテンツを学校向けに期間限定で無償提供、学校からの公募もスタート
EdTech
2021-05-29 16:28
AIで変容するサイバーセキュリティ環境–企業には対策が必要
IT関連
2024-03-28 21:54
AMD、売上高99%増の好決算–見通しも明るく
IT関連
2021-07-28 12:19
マイクロソフト、Webアプリテストの自動化サービス「Microsoft Playwright Testing」プレビューを開始
CI/CD
2023-08-29 09:11
大正大学がバーチャルキャンパス開設 狙いは受験生との交流 「キズナアイ」も“学長”に就任
企業・業界動向
2021-07-08 22:15
グーグル、Python開発者向けの差分プライバシーツール公開
IT関連
2022-02-02 21:06
少額で日本株投資:利回り3.4~4.7%–「10万円以下」で買える高配当株5選
IT関連
2021-06-03 00:53