Cassandraとは? なぜ大手テクノロジー企業に採用されるのか?

by cmoullec on 10 August 2020

(このほどCanonicalは、お客様からのご要望に応じてマネージドアプリポートフォリオにApache Cassandraを追加しました。あらゆるクラウドアプリのマネージが必要な際は、Canonicalにお問い合わせください。また、詳細は「マネージドアプリを活用してビジネスに全力を注ぐ」ウェビナーもご覧ください。)

企業にとってデータは有用ですが、厄介でもあります。収集するデータが少なすぎれば、意思決定の指針がなくなり、市場の見通しが得られません。逆に、リクエスト数が数十万にものぼる大量のアクティブなデータセットでは、データベースの性能を維持することが困難になります。

オープンソースソリューションのApache Cassandraを使用することで、高速に移動する大量のデータを、信頼性が高くスケーラブルな方法で処理できます。この理由から、Facebook、InstagramNetflixなどの企業はミッションクリティカルな機能にApache Cassandraを使用しています。Apache Cassandraの3つの主要な利点、課題、ユースケースと、本番環境で実行する最も簡単な方法を紹介します。

Apache Cassandraとは?

まず簡単に言えば、Apache Cassandraとは信頼性の高いパフォーマンス、速度、スケーラビリティに特化したデータベースです。受信した膨大な量のデータを迅速に保存し、毎秒数十万回もの書き込みを処理できます。

Cassandraにより、組織は大量のデータを迅速に管理でき、以下の利点をユーザーに提供します。

Cassandraを使うことによる3つの主な利点

パフォーマンス - 速度

Cassandraは、いくつかのアーキテクチャ上の特長により、他のデータベースよりもデータを高速に処理できる有益な技術です。Cassandraが高速な理由は2つあります。

  1. ハッシュアルゴリズムを使用して、データの保存場所を迅速に決定します
  2. どのノードでもデータ保存の決定を行えます。データ保存の決定について、中央の「マスターノード」に問い合わせる必要がなくなります。

スケーラビリティ

Cassandraはスケーラビリティに優れていて、新しいラックを追加するだけでパフォーマンスを向上できます。まず、データのオーケストレーションと管理を行うための巨大な「マスター」を必要としません。このため、すべてのノードに安価な汎用サーバーを使用できます。

次に、データの整合性を重視しないことでスケーラビリティを実現しています。整合性には一般に、マスターノードがデータの追跡を行い、ルールや以前に保存されたデータに基づいて整合性を適用する必要があります。

最後に、Cassandraはピアツーピア通信を使用しています。この通信は「ゴシッププロトコル」という気の利いた名前で呼ばれています。これによりノードは互いの間で通信を行い、メタデータを受け渡しできるため、新しいノードを非常に簡単に追加できます。

信頼性 - データ複製とHA(高可用性)

最後に、Cassandraはデータの堅牢な保管庫です。ハッシュアルゴリズムはデータを保存するとともにコピーを作成し、別の場所に保存します。つまり、1つのノードが停止しても別の場所にコピーがあるのです。Cassandraはいつかノードが停止するという現実的な可能性を考慮しています。

これは、整合性の条件を緩めることで実現されています。従来のデータベースでは、複数のコピーを最新の状態にするための計画が必要なためデータの複製に非常に慎重であり、低速です。

高速で、スケーラブルで、信頼性が高いCassandraは、クラウドを現代化します

Apache Cassandraを使用する際の課題

速度、スケーラビリティ、堅牢性には、それなりの代償もあります。Apache Cassandraは整合性よりも可用性を重視しているため、データに矛盾が発生する可能性があります。時間をかけてデータの検証を試みますが、時間がかかる可能性があります。これにより、既に保存されているデータの読み取りも低速になります。データベースは保存されているすべてのデータを調べる必要があり、同じデータのエントリが複数存在し、矛盾している可能性もあります。

Apache Cassandraを使用する理由 - クラウドを最新に

Apache Cassandraの利点と課題のいくつかについて概説してきましたが、それでは自社のインフラでCassandraをどのように利用すればいいのでしょうか? ここでは、一般的なユースケースについて概説します。

  • 時系列データ:Cassandraは時系列のデータを保存し、古いデータの更新が必要ない場合に適しています。例として、クラウドインフラやアプリのログファイルが挙げられます。ログが保存された後で変更する必要はほとんどありません。ログが正しくなかった場合、新しい正確なバージョンを読み込み、新しいタイムスタンプで保存する方が簡単です。
  • グローバルに分散したデータ:データは地理的に分散されており、ローカルのCassandraクラスタがデータを保存し、後で整合性を調整します。「マスターノード」が存在せず、汎用ストレージを使用してスケーリングできるため、データベースの地理的な拡張が安価に行えます。
  • 高いネットワークコスト:ネットワーク(例:データセンター間でのデータの移動)のコストが高い場合も、Cassandraはコスト効率に優れています。これは、データを遠く離れたマスターノードへ常時送信する必要がないためです。

Cassandraを使って組織のクラウドを現代化し、データの処理および格納方法を適合させることができます。これにより、世界中で膨大な量のデータを管理できます。

マネージドCassandraにより、標準化され、セキュアでスケーラブルな展開が可能に

当社はお客様のため何千ものOpenStackおよびKubernetesベースのクラウドを展開し、管理してきた経験から、企業がCassandraに対して有機的に、アドホックで採用していることを知っています。データベースを実装したのは多くの場合、情熱を持った独学のユーザーです。

アドホックでCassandraを展開してきた組織は複数のクラスタを持っており、Cassandraの保守方法もそれぞれ異なっている可能性があるため、この技術に対する認識や使い方がバラバラになっています。アドホックの展開には更新、セキュリティパッチ、バグ修正が適用されていない可能性があり、ITセキュリティが不十分な可能性があります。

Canonicalは、統一された堅牢なApache Cassandraを組織全体に展開することができます。CanonicalのマネージドCassandraサービスなら、すべてのIT資産にセキュリティパッチ、更新、バグ修正が適用されるため、クラウドのセキュリティが確保されます。

また、独学のユーザーによる展開は、エンタープライズ規模の本番稼働に適切とは言えません。本番稼働での展開に少しでもミスがあれば攻撃ベクトル(攻撃経路)となる恐れがあるため、企業ではセキュリティ重視の方式を採用する必要があります。

オープンソースは本質的に変化のスピードが速いため、堅牢な展開を保証することは困難です。CanonicalのマネージドCassandraにより、企業は最低限のリスクでオープンソースを使うことができます。当社のオープンソースコミュニティにおける経験と貢献から、常に最先端でセキュアな環境を維持していただけます。

基準を満たしたKubernetes、パブリッククラウド、オンプレミス、またはOpenStackで実行されているアプリなら、どれでもCanonicalのマネージドアプリを使用できます。Canonicalは、マネージド Cassandraに加えて10のアプリを提供し、あらゆるクラウドのサポートしているため、1社だけで御社のクラウドを正しく動作させることができます。

まとめ

Apache Cassandraを使用して、クラウドを「ハイパースケール」に拡張できます。Cassandraは、毎秒数十万回ものデータ書き込みに必要な速度、スケール、可用性を実現できる実践的なソリューションです。展開がセキュアで、常に最新の状態で、組織全体にわたって整合性を保つために、CanonicalとUbuntuアプリのエンジニアがサポートします。Canonicalのマネージドアプリ製品の詳細は、最新のウェビナー(英語)をご覧ください。

ニュースレターのサインアップ

Ubuntuニュースレターの配信登録

お客様が購読登録を行われる場合、以下の条件に同意されたことになります。Canonicalのプライバシーに関するお知らせ個人情報保護ポリシー

関連記事

常時接続フリートにおけるOTAとテレメトリの管理

私のブログ記事を過去2年間読んでくださっている方は、自動車業界がおそらく今日の最も革新的な業界であることをご存知でしょう。実際、世界でも極めて価値の高い企業が、電気自動車(EV)、自動運転(AD)、人工知能(AI)に携わっています。他の革新と同様、この革新にも一連の課題が伴います。 私は、理解や習得が最も難しいテクノロジーが、必ずしも最も複雑に見えるテクノロジーとは限らないことに気づきました。OTA(Over-The-Air)更新とフリートのテレメトリの管理は、今日の自動車業界において最も有望なテクノロジーですが、複雑に見えるテクノロジーでもあります。 OTAの隠れた力 OTA更新は、車両の価値を根本的に覆す可能性を持っています。リモートでのソフトウェアとファームウェアの […]

Ubuntu ProによりリアルタイムUbuntuをAmazon EKS Anywhereのお客様が利用可能に

Canonicalは、今年前半にバルセロナで開催されたMobile World Congress(MWC)2024で、リアルタイムUbuntuがAmazon Elastic Kubernetes Services Anywhere(EKS Anywhere)で利用可能になったことを発表しました。超低レイテンシのデータ処理をサポートする信頼性の高いリアルタイムUbuntuにより、通信事業者はAmazon EKS Anywhere上で自社のOpen Radio Access Network(RAN)ソフトウェアワークロードを実行できます。 この開発は、Amazon EKS AnywhereをOpen RANワークロード用に理想的なプラットフォームにするための、パートナー企業間 […]

Firefighting Supportを発表

新しいサービスでCanonicalの専門家が高度なクラウドサポートを提供 Canonicalのマネージドソリューションチームは、自社でインフラストラクチャの管理を行い、トラブルシューティングの必要があるときのみ専門家の対応を求める組織のために、新しいサービス「Firefighting Support」を発表しました。 Firefighting Supportでは、フルマネージドサービスを止めた、または厳しいセキュリティ規制によってサードパーティーに環境へのアクセスを許可できないお客様に対して、マネージドサービスレベルのサポートを提供します。このサービスはノードごとの年間料金で提供され、次のような内容です。 自己管理インフラストラクチャへの移行に理想的 現在の市場では、マネ […]