一言でいうと
GraphQLは、Webサイトやアプリ(ソフトウェア)が必要なデータ(情報)だけを効率よく取ってくるための仕組みです。
もう最後に詳しく
普通、Webサイトがサーバー(データを保管してある遠い場所)からデータをもらうときは、「用意されているセット」をもらいます。例えるなら、図書館で本をリクエスト(依頼)するときに、その本1冊だけほしいのに、関連する本10冊がセットで返ってくるようなものです。
GraphQLは違います。「このデータ部分だけください」と指定して、本当に必要な情報だけを取ってこられます。先ほどの例なら、本1冊だけを正確にリクエストできるイメージです。こうすることで、通信量(やりとりするデータの量)を減らせて、読み込み速度も速くなります。
よく使われる場面
エラーログサイト(問題が起きたときの記録を見るサイト)では、大量のエラー情報(日時、内容、どこで起きたか、など)を扱います。GraphQLを使うと、ユーザーが「今日のエラーだけ」「この種類のエラーだけ」と指定して取得できるため、ページが速く開きます。
関連する言葉
- API:異なるソフトウェア同士が情報をやりとりするルール
- REST:GraphQLの前によく使われていた、データをもらう別の仕組み
- クエリ:データベース(データ保管庫)に質問を出すこと