Cassandraデータベースの背後にある会社であるDataStaxは、先頃Astra Serverlessの一般提供を発表した。これはオープンで、マルチクラウドのサーバレス DBaaS (database-as-a-service) ソリューションだ。
DataStax AstraはApache Cassandraデータベースの上に構築されており、コンピューティングをデータストレージタスクから分離したマイクロサービスベースのアーキテクチャを導入している。データベースリソースは、コンピューティングリソースから独立して、アプリケーションの要件とトラフィックに合わせてオンデマンドでスケールアップおよびダウンできる。
サーバレスコンピューティングはしばらく前から存在していたが、コンピューティングとストレージの分離に関する技術的な課題のために、サーバレスデータは遅れていた。サーバレスコンピューティングは、Webアプリや関数などのステートレスサーバレスワークロードに関するものだ。多くの場合永続データストレージを他のシステムに委任するKubernetesで実行される。また、サーバレスデータは、データの読み取り、書き込み、永続化、および転送を行うステートフルプロセス (キャッシュ、データベース、データストア、ステートマシンなど) に重点を置いている。これらは、Kubernetesで実行するのが難しいワークロードだ。通常、データベースのスケーリングでは、より多くの需要を処理したり、より多くのデータを保存したりするために、より多くのサーバノードを追加する必要がある。これには、ストレージとコンピューティング機能の比率を等しく保つために、データセット全体をノード間で「再調整」する必要がある。
Astra serverlessを使用すると、開発者は、作成およびデプロイするデータベースクラスタの数に関係なく、使用した分だけ料金を支払うことになる。これにより、開発者とITチームは、開発、テスト、ステージング、またはその他の目的に必要なデータベースを作成できる。
Astra Serverlessデータベースサービスは、顧客のアプリケーション要件とトラフィックに応じてスケールアップおよびダウンする。それは、次のユースケースに推奨される:
- 予測できないトラフィックとデータ消費パターンを持つアプリケーション。開発者はエンドポイントを作成し、アプリケーションの要件の変化に応じてサーバレスデータベースをオートスケーリングさせることができる。
- 人事、予算編成、税務申告など季節やタイミングに応じてデータ処理のワークロードが変動するアプリケーション。
- 組織の勤務時間中にのみ使用されるDev/Testデータベースのような非プロダクションデータベース。サーバレスは、使用されていないときに自動的にゼロにスケールダウンする。
昨年、DataStaxはCassandraをクラウドベースのデータベースとして利用できるようにするAstra DBaaSと、JSON、REST、およびGraphQL APIを使用してCassandraでアプリケーションを構築するのに役立つStargate API Gatewayを導入した。
サーバレスデータAPIは、AmazonのAurora Serverless Data APIなどの提供とともに、さまざまなタイプのデータベースをクラウドに導入する際に人気が高まっている。
InfoQは、DataStaxの開発者製品マネージャーであるPieter Humphrey氏に、新しい発表とサーバレスAstraソリューションが開発者コミュニティにどのように役立つかについて話を聞いた。
InfoQ: サーバレステクノロジーが database-as-a-service アーキテクチャに適しているのはなぜでしょうか?
Pieter Humphrey氏: ワークロードの需要に基づく動的なオートスケーリングは、PaaSとサーバレスのワークロードで見てきたように、大幅なコスト削減につながる可能性があります。
人々はそれらの節約で何ができるでしょうか? たくさんあります! いくつかの例をあげます: 使用しない場合はゼロにスケーリングするため、プロダクションでの実行コストが低くなります。各開発者が独自の環境を持つのに十分経済的であるため、開発者は開発環境を共有する必要がもうありません。自動化されたテストスイートをより頻繁に実行したり、追加テストを追加したりして、個々のテストスイートの実行時間を長くし、コードの品質を向上させることができます。洗練された自動スケーリングにより、Puppet、Chef、Ansible、Terraformなどで動作するDIY IaC (infra-as-code) コードまたはCM (構成管理) ツールクラス全体を排除できます。
InfoQ: Stargate data API Gatewayは新しいAstraサーバレスDBaaSとどのように連携しますか?
Humphrey氏: DataStax Astraは、Stargate data API gatewayに付属するサーバレスの database-as-a-service として提供されます。
Stargateは、サーバレスAstraが導入される前と同じように機能します。Stargateは、Cassandraノードを2つの異なる役割 - クエリ調整 (コンピューティング) とストレージ (データr/w) - に分離するものであるため、実際にはサーバレスAstraの前身と見なすことができます。
InfoQ: サーバレスAstraの将来のロードマップはどのようになりますか?
Humphrey氏: サーバレスAstraは業界のゲームチェンジャであると信じており、開発者や企業に利益をもたらすために、これからも迅速に前進していきます。データベースの実行が固定されたインフラストラクチャの実行に結び付けられていないため、Serverless Framework、Lambda、OpenFaaSなどのサーバレステクノロジーや、TerraformやJenkinsなどのプロビジョニングサービスとCassandraの統合が増えることが期待できます。
DataStaxは、オープンソースと、コードをリードすることで参加するプロジェクトのサポートに取り組んでいます。その取り組みの一環として、Apache Cassandraに行った変更をプロジェクトに寄付し、Cassandraのクラウドネイティブの未来をより有効にします。4.0 GA 以降のCassandraプロジェクトでは、k8ssandra、Stargate、ad Astraのサーバレスアーキテクチャの改善による機能強化と、コミュニティの他のメンバによる革新が見られることを期待しています。
Astraサーバレス製品とserverless data APIがDBaaSイニシアチブにどのように役立つかについて詳しく知りたい場合は、今後のwebinarをご覧ください。