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
ヘルスケア業界のデジタル変革、コロナ禍で加速も他業界より遅れ–グーグル調査
IT関連
2021-08-13 02:54
[速報]Microsoft Copilotを誰でもカスタマイズして共有できる新機能を発表
Microsoft
2024-05-22 16:04
中小企業向けERPプラットフォームの独xentralがTiger Globalなどから82.2億円のシリーズB調達
ソフトウェア
2021-08-19 08:50
「複数のクラウド環境にまたがる作業」が障壁と88%が回答–ネットアップ調査
IT関連
2023-04-11 16:04
アドビ、生成AI「Firefly」の次世代モデル3種を発表
IT関連
2023-10-12 03:21
業務時間外にメール対応しない「つながらない権利」–コロナ禍で新たな動きに注目
IT関連
2021-05-01 22:37
菓子製造販売会社、需要予測AIを全34店舗に導入–廃棄削減などに向け
IT関連
2021-07-27 08:52
ジョイゾー、アルコールチェック管理サービスを提供–道路交通法施行規則の改定に対応
IT関連
2022-08-19 10:11
中小企業のセキュリティ投資、最多は「100万円未満」–IPA調査
IT関連
2022-04-02 02:53
Linux仮想マシンを「Boxes」で簡単に作成するには
IT関連
2022-04-29 22:49
英国の独禁監視当局がフェイスブックのGIPHY買収を調査中
ネットサービス
2021-04-05 23:33
セキュリティインシデントの発生時にどこまで情報開示すべきか
IT関連
2024-05-10 05:14
マイアミは次のシリコンバレーにはならない、次のシリコンバレーは不要だからだ
その他
2021-02-22 19:54
アップルが配偶者とティーンエージャーのための「Apple Card Family」発表、ジェンダー差別疑惑を払拭
フィンテック
2021-04-22 13:38