CDNレイヤでDBのコネクションプーリングとクエリキャッシュを提供。世界中どこからのDBアクセスでも高速化する「Hyperdrive」、Cloudflareが提供

今回は「CDNレイヤでDBのコネクションプーリングとクエリキャッシュを提供。世界中どこからのDBアクセスでも高速化する「Hyperdrive」、Cloudflareが提供」についてご紹介します。

関連ワード (動作、北米、通信等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


Cloudflareは、グローバルなCDNレイヤでデータベースのコネクションプーリングとクエリのキャッシュを提供することによりデータベースへのアクセスを高速化する新サービス「Hyperdrive」のオープンベータを開始したと発表しました。

Want to make the existing regional database in your legacy cloud provider much, much faster? We've just launched Hyperdrive, which dramatically speeds up queries you make to databases you already have from Cloudflare Workers. https://t.co/0engeFePUP #BirthdayWeek

— Cloudflare (@Cloudflare) September 28, 2023

データベースが遠ければアプリは遅くなってしまう

Cloudflareは、CDNのエッジでアプリケーションを実行する「Cloudflare Workers」を提供しています。Cloudflare Workersはユーザーの近くにあるCDNエッジで動作することで、高速なレスポンスを可能にしています。

しかし一般的にアプリケーションのバックエンドにはMySQLやPostgreSQLといったデータベースが稼働しており、アプリケーションから頻繁にアクセスされます。

もしもこのデータベースが北米のデータセンターで稼働している場合、欧州やアジアやアフリカからアクセスするユーザーはどうなるでしょうか?

欧州やアジアやアフリカからアクセスするユーザーは、自分の近くにあるCDNエッジで稼働するCloudflare Workersにアクセスできるものの、そのCloudflare Workersは太平洋や大西洋を越えて北米にあるバックエンドデータベースにアクセスすることになります。

すると、結局は海を越えて遠い距離を何度も往復する通信が発生してしまい、その待ち時間が発生することでユーザーへのレスポンスが遅くなってしまいます。

せっかくCloudflare Workersをユーザーの近くで提供できたとしても、データベースまでの距離が遠ければそのメリットを十分に発揮できないのです。

データベースはそのままで世界中からのアクセスを高速化する

この問題を本質的に解決するには、データベースそのものも分散化し、ユーザーの近くで実行できるようにすることです。

CloudflareはそのためにCDNエッジで稼働するSQLiteベースの分散データベース「Cloudflare D1」を開発中です。

参考:Cloudflare、分散SQLiteデータベース「Cloudflare D1」のオープンベータを開始

しかし大容量のデータの保持、高性能なトランザクション処理の実現といったことを実現しようとすると、まだしばらくはMySQLやPostgreSQLといった従来のリレーショナルデータベースを選択することが合理的な判断になるでしょう。

そこで従来のデータベースを使いつつ、世界中に分散したCDNエッジからのアクセスを高速化するための技術が必要になってきます。

それを実現するために登場したのが、今回発表されたHyperdriveなのです。

CDNレイヤでコネクションプールとクエリキャッシュを提供

Hyperdriveは2つの機能を提供することで、世界中のCDNエッジからのデータベースアクセスを高速化します。

1つはデータベースへのコネクションプールをグローバルなCDNのレイヤで共有する機能です。

アプリケーションからデータベースへのクエリは、まずデータベースへのコネクションを確立する処理から始まります。

このコネクション処理は時間のかかる重い処理であることが知られているため、ミドルウェアであらかじめデータベースとのコネクションを何本も保持しておき、アプリケーションからのコネクション要求にはそのコネクションを使い回すことでコネクション処理を省略する、「コネクションプーリング」という有名なテクニックがあります。

HyperdriveはこのコネクションプーリングをグローバルなCDNレイヤで実現することで、どのCDNエッジからでも、高速にデータベースへのコネクションを確立できるわけです。

Hyperdriveが提供するもう1つの機能は、よく使われる読み取りクエリを自動的にキャッシュする機能です。

ユーザーがクエリを実行する場所の近くにクエリの結果をキャッシュすることで、レスポンスを劇的に高速化できると説明されています。

この2つの機能により、世界中のCDNエッジからのデータベースアクセスが高速化されるわけです。

ほとんどのケースで大幅に高速に

Cloudflareは実際にHyperdriveを用いて動作するデモを公開しています。下記がその結果の画面です。

濃いグレイのマーカーが、データベースへの直接接続とクエリにかかった時間を示し、オレンジのマーカーがHyperdrive経由での接続とクエリにかかった時間を示しています。

fig

Hyperdrive経由での接続の方が遅いケースもありますが、ほとんどのケースでHyperdrive経由での接続は圧倒的に高速になっており、実際に効果があることが分かります。

PostgreSQLに対応し、今後MySQLへの対応なども

Hyperdriveは現時点でPostgreSQLに対応しています。これはGoogle CloudのCloud SQL for PostgreSQLやAlloyDB for PostgreSQL、CockroachDBなどPostgreSQL互換のデータベース対応も含まれています。

今後はMySQLを含む多くのデータベースへの対応、書き込み処理のキャッシュなどさらなる高速化、プライベートネットワークへの対応などにも取り組むとしています。

Hyperdriveの正式リリースは2024年初頭の予定と発表されています。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
「昭和」な方法が残る債権管理・督促業務のDXを進めるLectoが総額1.1億円調達
フィンテック
2021-03-23 11:59
Google CloudのJavaランタイムにEclipse Temurin採用へ、GoogleがEclipse Adoptiumに参加を発表
Eclipse
2022-10-24 16:08
ビル・ゲイツ氏がAIに期待する地球規模での医療の改善
IT関連
2024-01-01 06:27
Twitter、世界的指導者アカウントの取り扱いについてのアンケートを開始
アプリ・Web
2021-03-22 09:45
企業の採用担当者は経歴よりもスキルを重視
IT関連
2023-06-15 03:33
Evincedはウェブのアクセシビリティ検査の迅速化に17.9億ドルを調達
ネットサービス
2021-02-05 17:04
京王プラザホテル、顔認証を活用したチェックインサービスを導入
IT関連
2023-08-12 15:04
Flutter 3.7正式リリース。スクリーンサイズにUIレイアウトが自動対応、GPU活用による高速描画エンジン「Impeller」がプレビューに
Dart
2023-01-30 08:09
「健康になるにはどうすれば?」 目標実現の道のりを教えるAI、富士通が開発
ロボット・AI
2021-02-05 20:12
ソフォス、3つのサイバーセキュリティ専門家チームを連携させた新たな組織を設立
IT関連
2022-08-23 14:43
東亜ディーケーケー、クラウドオファリング「RISE with SAP」を採用
IT関連
2023-11-30 14:09
インボイス制度、「知らない」が約4割–ラクス調査
IT関連
2022-08-06 15:25
安価・高速・安全のクラウドストレージに注力–Wasabiのキング副社長
IT関連
2022-06-30 07:07
NEC、顔認証ソフトとクラウドサービスの最新版を発表–運用管理を改善
IT関連
2023-03-30 09:19