2021/05/17

AWSでCassandraを活用しよう|AWSのKeyspacesについてご紹介

 
  

Cassandraとは


Apache Cassandraは、オープンソースのNoSQLデータベースです。

データを複数に分散するシステム(分散データベース)を採用しているのが特徴です。これにより、パフォーマンスや可用性、耐障害性を高め、スケーリングを簡易化しています。

AWSでCassandraを使用するには


Amazon Web Services(AWS)でCassandraを使用するには、Keyspacesというサービスを利用します。

AWS上でCassandraのワークロードを実行できるようになるだけでなく、Cassandraをサポートする機能が多数搭載されています。

AWSのKeyspacesの特徴


この項目では、AWSのKeyspacesの特徴についてご紹介します。

Cassandraの運用管理に関するタスクをAWS側で行ってくれるようになり、ワークロードの効率を高められます。また、さまざまなAWSサービスと統合されており、多彩な機能を取り入れられます。

一部の機能はKeyspacesでは使用できないので、その点は注意が必要です。

特徴1:CQLと互換性がある

Keyspacesは、Cassandra Query Language(CQL) APIと互換性があります。

既存のコードおよびテーブルを変更することなく、そのままAWSへ移行させられます。さらに、CQLでデータベースの操作も可能です。移行が容易で、かつ既存の操作手法を流用できるため、扱いやすい点がメリットと言えるでしょう。

特徴2:クライアントドライバーに対応している

Keyspacesは、既存のCassandra クライアントドライバーに対応しています。

ドライバーを用いてCassandraとKeyspacesを接続することで、Keyspacesにプログラムでアクセスできるようになります。

対応するプログラミング言語として、Java、Python、Node.js、.NET、Go、Perl、Ruby、PHPがあります。

特徴3:キャパシティモードによるプロビジョニングの調整

Keyspacesは、キャパシティモードと呼ばれる機能を用いてプロビジョニングを調整します。

その場の状況に応じてスループットを最適化でき、パフォーマンスの向上やコストの削減につながります。

オンデマンド型、プロビジョンド型の2種類のタイプがあります。後からタイプを切り替えることも可能です。

オンデマンドキャパシティモード

オンデマンドキャパシティモードは、トラフィックの量に応じて自動でスループット能力を調整するタイプです。

トラフィック量の急激な増減にも柔軟に対応でき、パフォーマンスの低下を防ぎます。スループットの設定も不要なため、手間がかからないこともメリットに挙げられます。

稼働率の変化が大きい、利用量の予測が難しいといったワークロードに適します。利用量がある程度分かっているのであれば、プロビジョンド型がおすすめです。

プロビジョンドキャパシティモード

プロビジョンドキャパシティモードは、1秒あたりの読み込みおよび書き込みの回数を指定するタイプです。

利用量を事前に予測し、それに合わせてスループットを調整することで、コストを最適化できます。利用量が一定している、あるいは予測が容易なワークロードに適します。

デメリットとして、予期しないトラフィックが発生すると、容量不足に陥りパフォーマンスが低下する可能性があります。Auto Scalingによるスループットの自動スケーリングを導入することで、この問題点を解消できます。

特徴4:CloudWatchによるパフォーマンスのモニタリング

KeyspacesはCloudWatchと統合されており、パフォーマンスをモニタリングできます。

CloudWatchによってリソースのデータを収集し、メトリクスとして可視化します。

Simple Notification Service(SNS)を併用することで、通知を発信することも可能です。例えば、スループット容量が一定値を超えると通知を発信する、といった設定ができます。

特徴5:自動レプリケーション機能

Keyspacesには、自動レプリケーション機能があります。

テーブルを作成すると、そのデータを複数のAWSアベイラビリティーゾーン(AZ)に自動でレプリケートします。これにより、データの可用性を高めています。

特徴6:PITRによる連続バックアップ

ポイントインタイムリカバリ(PITR)は、Cassandraのテーブルデータを連続でバックアップするシステムです。

テーブルデータを誤って上書きしたり、削除してしまったりした時に、PITRのバックアップを用いることですぐに復元できます。

PITRバックアップデータの有効期限は35日間となっています。

出典:Amazon Keyspaces (Apache Cassandra 向け) の機能│AWS
参照:https://aws.amazon.com/jp/keyspaces/features/

特徴7:セキュリティ機能が豊富

Keyspacesは、豊富なセキュリティ機能を備えています。

保存されているデータは、 Key Management Service(KMS)で生成されるキーによって暗号化されます。また、Identity and Access Management(IAM)と統合されており、テーブルへのアクセスを設定・管理できます。

これらの機能を駆使することで、安全にデータを取り扱えます。

AWSのKeyspacesの料金


AWSのKeyspacesの料金は、スループットやPITRなどの各機能の使用量によって決定します。

無料利用枠が存在しており、オンデマンドキャパシティモードの読み込みおよび書き込みの要求単位各3,000万個、ストレージ1GB、データ転送1GBまで無料で使用できます。

他のAWSサービスも併用している場合、それらの料金も必要になります。見積もりの際は注意しましょう。

なお、以下の項目で紹介する例は、すべて東京リージョンに準じています。

出典:Amazon Keyspaces (Apache Cassandra 向け) の料金│AWS
参照:https://aws.amazon.com/jp/keyspaces/pricing/

スループット

スループットの料金は、キャパシティモードのタイプによって異なります。

オンデマンド型の場合、書き込み要求単位100万個ごとに1.6552USD、読み込み要求単位100万個ごとに0.331USDの料金が発生します。

プロビジョンド型の場合、書き込み要求単位1個につき0.0008562USD、読み込み要求単位1個につき0.0001712USDが1時間ごとに課金されます。

出典:Amazon Keyspaces (Apache Cassandra 向け) の料金│AWS
参照:https://aws.amazon.com/jp/keyspaces/pricing/

ストレージ

ストレージの料金は、保存されているテーブルのサイズによって決定します。自動的に請求対象のテーブルから、利用料金を算出してくれます。

ストレージ容量1GBにつき、0.34USDが1カ月ごとに課金されます。

出典:Amazon Keyspaces (Apache Cassandra 向け) の料金│AWS
参照:https://aws.amazon.com/jp/keyspaces/pricing/

PITR

ポイントインタイムリカバリ(PITR)の料金は、保存中および復元したテーブルのサイズによって決定します。

PITRにバックアップを保存している場合、1GBにつき0.272USDが1カ月ごとに課金されます。

また、PITRからバックアップを復元した場合、1GBにつき0.171USDの料金が発生します。

出典:Amazon Keyspaces (Apache Cassandra 向け) の料金
参照:https://aws.amazon.com/jp/keyspaces/pricing/

データ転送

Keyspacesから外部へデータを転送する場合、料金が発生します。

無料利用枠により、月1GBまでは無料で転送できます。それ以降は1GBにつき0.114USDが課金されます。1カ月ごとの転送量が一定を超えると、徐々に料金は値下がりしていきます。

なお、外部からデータを受信する場合、料金はかかりません。

出典:Amazon Keyspaces (Apache Cassandra 向け) の料金│AWS
参照:https://aws.amazon.com/jp/keyspaces/pricing/

AWSのKeyspacesでCassandraを活用しよう


この記事では、AWSのKeyspacesについてご紹介しました。

Keyspacesは、プロビジョニングや管理の自動化、セキュリティ強化など、多方面からCassandraのワークロードをサポートします。中でも、大規模なクラスターの管理に時間がかかりやすいという従来の問題点を解消してくれることは、大きなメリットとして挙げられます。

Cassandraの管理に手間を感じている、Cassandraをより活用したいといった方におすすめです。

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】