Netflixを支える「GraphQL」【前編】
Netflixがクエリ言語「GraphQL」を採用 何にどう使っているのか
Netflixがクエリ言語として「GraphQL」を採用した。どのように利用しているのか。得られた効果は。同社に聞いた。
動画配信サービス「Netflix」を支えているのは、クエリ(データ操作)言語「GraphQL」だ。
テクノロジーカンファレンス「QCon New York 2019」に登壇したギャレット・ハインレン氏は、Netflix社でソフトウェアエンジニアを務めている。ハインレン氏によると、同社はコンテンツエンジニアリングチームが運用するシステムにデータを取り込むためのクエリ言語として、主にGraphQLを使用しているという。
Netflix社の主要なエンジニアリングチームは2つある。一つはストリーミングを担当する製品エンジニアリングチーム。もう一つは同社の番組制作用のツールを開発するコンテンツエンジニアリングチームだ。
コンテンツエンジニアリングチームが新しいデータ統合システムを構築する際、システムの基盤テクノロジーとしてGraphQLを採用した。データ連携に利用できる仕組みには「REST」や「Falcor」といった選択肢があるが、同チームはそれらを退けてGraphQLを選択した。RESTはデータ連携のための枠組みを定義したアーキテクチャ。FalcorはNetflix社がスクリプト言語「JavaScript」向けに開発したデータ取得用の機能群だ。
「われわれは新しいシステムを開発している最中だったため、実験の余地があった」とハインレン氏は話す。GraphQLの開発元はFacebookだ。同社は2012年にGraphQLを開発し、2015年にオープンソースコミュニティーにこのプロジェクトを寄贈した。さらに2018年、プロジェクトは非営利団体GraphQL Foundationの手に渡った。
GraphQLがNetflixにもたらした効果
ハインレン氏のチームは、扱うデータをGraphQLによりグラフ(実体同士の関係を表したデータ構造)としてモデル化している。同チームは2018年の丸1年をかけ、幾つかのダウンストリーム(サーバからクライアントに流れるデータ)を集約するためにグラフを構築した。「GraphQLはさまざまなバックエンドシステムと連携できるため、われわれのシステム構築においても問題は発生しなかった」と同氏は振り返る。
グラフモデルに移行することで、ハインレン氏のチームが運用するシステムでは、保存場所にかかわらずデータにアクセスできるようになった。GraphQLを導入するまでは、システムのサイロ化(システムをまたいだデータ連携が難しくなること)によって、コンテンツ配信サービスが遅延を引き起こしていたという。
ハインレン氏のチームは、Netflix社の他のシステム開発チームに対してもアプリケーションの稼働環境を整備する支援をした。複数のシステムにまたがり、統合的なグラフを構築するチームを社内に作った。「GraphQLを用いることで、われわれが扱うコンテンツのあらゆる実体や操作を全体的に可視化できるようになった」と同氏は説明する。同社はグラフを操作するユーザーインタフェースの開発にも意欲を見せる。
このグラフがあれば、サイロ化されたシステム内に情報があったために答えることができなかった、製品チームからの質問に答えられるようになるとハインレン氏は説明する。「いまや組織のあらゆるデータにアクセスできる」(同氏)
Copyright © ITmedia, Inc. All Rights Reserved.
Netflixを支える「GraphQL」
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[ファインディ株式会社] AI利用率だけでは説明できない成果 開発組織の競争力を生む「開発資本」とは? -
製品資料
[ニュータニックス・ジャパン合同会社] AI活用を成功へ導く、シンプルで費用対効果に優れたクラウド基盤とは? -
製品資料
[ニュータニックス・ジャパン合同会社] マネージドKubernetesには限界も――メリットをフル活用する新たな選択肢とは? -
技術文書・技術解説
[ニュータニックス・ジャパン合同会社] 決断の日が迫る「vSphere 8」サポート終了問題 考慮すべきリスクと選択肢は? -
製品資料
[サイバーソリューションズ株式会社] メール誤送信対策のルールが肥大化 苦しむ情シスはどうすれば救われるのか?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
半数がブルーカラー転向を視野に? ベテランエンジニアを追い込む“54歳の壁”
-
2
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
3
OpenAIやAnthropicでさえ制御不能 2026年夏「3大サイバー攻撃」の衝撃
-
4
IT製品の導入に関するアンケート「セキュリティ」編
-
5
積水化学が挑む「データ経営」の核心:SAP S/4HANA Cloud導入の狙いとは
-
6
LINEヤフーはなぜ「社内の管理者」すら信用しないインフラを作ったのか
-
7
パッチなしで「今すぐサーバを落とせ」 Kiteworks異例警告の波紋
-
8
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
9
「中堅製造業にSAP S/4HANA導入は難しい」は本当か?
-
10
【専門家に聞く】シャドーAIや過剰共有のリスクを防ぎ、安全に生成AIを活用するポイントとは?
ホワイトペーパーランキング PR
-
1
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
2
Microsoft 365のメールセキュリティ、3つの“死角”と追加で検討すべき対策とは
-
3
システムの保守がモダン化を阻む? 「変えない判断」から脱却する方法とは
-
4
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
5
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
6
プログラミング不要で誰でも実現できる、ネットワーク運用管理の自動化とは
-
7
Linux初心者でも知らないとまずい「RHEL」「SLES」の違いとは?
-
8
東大教授と考える、AI時代の「データ主権」「信頼性」「ガバナンス」の在り方
-
9
「IT史に名を残すシステム障害」8選
-
10
最速72分でデータが流出? 最新の脅威トレンドや侵入手法から分かった防衛策
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー