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
財務領域のAIを信頼する日本の管理職は94%で世界首位、活用度は世界最下位–日本オラクル
IT関連
2021-03-04 00:55
キンドリルジャパン、東京・六本木に本社を移転
IT関連
2024-01-19 20:12
大津市、新ストレージ基盤を構築–庁内40台のNASを1台に集約
IT関連
2022-08-04 11:37
すみだ水族館、飼育管理アプリで作業時間を短縮–生き物と向き合う時間の充実に
IT関連
2023-07-22 02:45
【インタビュー】アップル幹部が語る次期iPad OSのメンタルモデルとマルチタスクの強化
ソフトウェア
2021-06-22 16:15
35歳未満の働き手はフリーランス志向–米調査
IT関連
2023-10-17 14:49
Google、イーサネットをさらに高速にするハードウェア支援型の新トランスポート技術「Falcon」を公開
Google
2023-10-23 21:30
ソフトバンク、希望者を対象に睡眠改善施策の実証導入を実施
IT関連
2023-08-27 00:42
新型コロナ対策用のCO2センサー、5000円以下の12機種中8機種が反応せず 電通大が検証
科学・テクノロジー
2021-08-12 11:23
日本郵政、DX推進の新会社「JPデジタル」を設立 グループ共通IDや手続きのデジタル化など
DX
2021-07-02 04:02
Dental Predictionと日本IBM、AIを活用し症状から関連性の高い疾患を提示するソリューションを開発
IT関連
2022-07-12 23:13
従業員が日常的にAIを活用–パナソニック コネクト、「ConnectAI」の活用実績を発表
IT関連
2023-07-01 10:43
スウェーデンの電動航空機スタートアップHeart Aerospaceが200機を受注
モビリティ
2021-07-27 02:23
サービスの信頼性と開発効率を両立するSRE–GoogleとJCBの取り組み
IT関連
2022-08-31 10:15