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
-
製品資料
[横河レンタ・リース株式会社] 不正アクセス被害が深刻化 狙われる「セキュリティの死角」はどこなのか? -
製品資料
[NTTインテグレーション株式会社] 2026年度末開始の「SCS評価制度」をどう攻略する? -
製品資料
[NTTインテグレーション株式会社] 「復旧せよ」の決断に即答できる? いま必要な戦略的データ復旧の極意 -
製品資料
[NTTインテグレーション株式会社] SCS評価制度は「共通のモノサシ」になる? いま製造業がすべきこととは -
事例
[Extreme Networks株式会社] BYOD時代の大学のWi-Fi、安定した通信環境をどう実現する?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
Microsoft月例パッチ1400件超で過去最多 「限界点」を迎えたパッチ管理
-
2
半数がブルーカラー転向を視野に? ベテランエンジニアを追い込む“54歳の壁”
-
3
SAP導入後も残る“Excel依存” 京急電鉄は「kintone」でどう解消した?
-
4
みずほ証券が「液冷サーバ」を採用 1日3.6億件の計算を支えるための要件
-
5
IBM iのブラックボックス化を打破 資産継承と進化を実現する「IBM Bob」の実力
-
6
「オフィス移転・刷新に伴うネットワーク環境の実態」に関するアンケート
-
7
PHP脆弱性「PHP2Shell」で2260万件に影響 情シスの緊急チェックリスト
-
8
AI時代のITインフラ変革 ネットワークの重要性と「予測をやめる投資」とは
-
9
「法人向けPCおよび周辺機器の利用状況」に関するアンケート
-
10
「業務PC/ワークステーション」に関するアンケート
ホワイトペーパーランキング PR
-
1
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
2
2026年のサイバーセキュリティには何が必要か? 最新データに学ぶ傾向と対策
-
3
経験豊富な即戦力人材に直接アプローチできる、「攻めの採用」への転換術
-
4
「IT史に名を残すシステム障害」8選
-
5
最速72分でデータが流出? 最新の脅威トレンドや侵入手法から分かった防衛策
-
6
10G回線の真価をフルに享受するには? 導入前にチェックしたいポイント
-
7
AI駆動開発のスピードと安全性を両立 「品質・セキュリティ管理」の実践ガイド
-
8
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
-
9
「標的型攻撃メール」事例・サンプル集
-
10
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー