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
ヴイエムウェアのラグラムCEO、Broadcom買収やマルチクラウドを語る
IT関連
2022-07-30 00:00
モバイル決算アプリVenmoは暗号資産、家計管理、貯蓄に進出、2021年中にHoneyを統合
フィンテック
2021-02-07 16:21
アディッシュ、チャットボットに生成AIでFAQを自動生成する機能を追加
IT関連
2023-08-18 16:48
「Linux」でドライブの自動マウントを有効にするには
IT関連
2023-06-02 12:04
中国当局がフードデリバリー会社に手数料の引き下げを指導
IT関連
2022-02-22 00:59
アダルト系SNS「OnlyFans」が認証済みNFTをプロフィール画像にできる機能を提供
IT関連
2022-02-14 13:43
Emotet対策、マクロ付きファイルの受信拒否も一手–デジタルアーツが解析
IT関連
2022-03-25 18:14
三菱電機との協業でPLC向けセキュリティセンサーを提供–Nozomi Networks
IT関連
2024-12-10 10:09
M2 Max「MacBook Pro」をクリエイター目線でレビュー–プロ動画編集者の心をつかんだ点
IT関連
2023-04-13 11:07
クラウド型電子署名サービス協議会、「なりすましリスク」についてホワイトペーパー
IT関連
2022-04-28 23:36
アドビ、事業戦略を発表–“2つの力”を備えるデジタル人材の育成へ
IT関連
2022-07-02 16:46
凸版印刷、製造DX支援ソリューションにRFID活用の生産実績管理機能を追加
IT関連
2022-03-08 10:35
生産技術代行商社のヤスヒラ、マネージド型脅威検知・対応でセキュリティ対策を強化
IT関連
2024-11-21 21:46
OpenAI、需要の高さを受けて「OpenAI o1」の制限を早くも緩和
IT関連
2024-09-19 22:02