kt.log

Recap my posts about Azure Managed Instance for Apache Cassandra in 2021

本記事では、Azure Managed Instance for Apache Cassandra に関する 2021 年の私の一連のブログ記事をまとめていきます。

ブログ記事一覧

  1. Get Started with Azure Managed Instance for Apache Cassandra
  2. Deploying a Virtual Machine to issue CQL to Azure Managed Instance for Apache Cassandra using cqlsh
  3. Get Azure Databricks Cluster connected to Azure Managed Instance for Apache Cassandra
  4. Create Azure Managed Instance for Apache Cassandra schema on Azure Databricks in Python
  5. Insert data into Azure Managed Instance for Apache Cassandra on Azure Databricks in Python
  6. Transform and load data into Azure Managed Instance for Apache Cassandra on Azure Databricks in Python

免責

  • 本記事は、2021 年の Advent Calendar 「Data Platform for Microsoft Azure」 向けに作成したものです。
  • 基本的に 2021 年に執筆したブログ記事をまとめただけの記事です。
  • 本記事で紹介するブログ記事の内容は、本記事執筆および公開時点において、既に古くなっている可能性があります。

簡単な解説

1. Azure Managed Instance for Apache Cassandra を始める

Get Started with Azure Managed Instance for Apache Cassandra

Azure ポータル上で Azure Managed Instance for Apache Cassandra のリソースを作成する手順を紹介。
オープンソースの Apache Cassandra をデプロイするよりも、はるかに簡単であることが分かります。

2. cqlsh を使って Azure Managed Instance for Apache Cassandra に CQL を発行するための VM をデプロイする

Deploying a Virtual Machine to issue CQL to Azure Managed Instance for Apache Cassandra using cqlsh

Azure Managed Instance for Apache Cassandra に接続して CQL を発行するための VM を構築します。
VM のデプロイ後、ネットワークの設定、 cqlsh のインストールを経て、cqlsh で接続できるまでの手順を解説しました。

3. Azure Managed Instance for Apache Cassandra に Azure Databricks クラスターを接続する

Get Azure Databricks Cluster connected to Azure Managed Instance for Apache Cassandra

これ以降の記事は、Azure Databricks から Azure Managed Instance for Apache Cassandra を操作します。
その第一歩として、Azure Databricks の Notebook から CQL を発行できるようにするための手順を解説しました。

4. Azure Databricks 上で Python を使って Azure Managed Instance for Apache Cassandra のスキーマを作成する

Create Azure Managed Instance for Apache Cassandra schema on Azure Databricks in Python

この時点ではまだ Azure Managed Instance for Apache Cassandra 上にスキーマがありません。なので、スキーマの作成を Azure Databricks 上で行います。
作成するスキーマは Azure Open Datasets で公開されているデータを基にしています。

5. Azure Databricks 上で Python を使って Azure Managed Instance for Apache Cassandra にデータをインサートする

Insert data into Azure Managed Instance for Apache Cassandra on Azure Databricks in Python

この時点ではまだ Azure Managed Instance for Apache Cassandra 上にデータがありません。なので、続けてデータのインサートを行います。
データには引き続き Azure Open Datasets で公開されているデータを使用します。

6. Azure Databricks 上で Python を使ってデータを変換し、 Azure Managed Instance for Apache Cassandra にロードする

Transform and load data into Azure Managed Instance for Apache Cassandra on Azure Databricks in Python

インサート済みのデータを Extract し、Azure Databricks を使って Transform し、再び Azure Managed Instance for Apache Cassandra に Load するという、ETL 処理についての解説です。
Spark の UDF の使い方についても分かる記事になっています。

まとめ

Azure Managed Instance for Apache Cassandra に関する 2021 年の私の一連のブログ記事をまとめました。
Apache Cassandra の構築・運用は決して簡単ではありませんが、この PaaS を利用することで、Cassandra 上のデータの利活用にフォーカスできるようになることが、このサービスの魅力だと思います。
また、Azure Databricks から利用する方法も示しました。記事の中では CQL を書いたりプリペアドステートメントを作って実行したりしていますが、効率やセキュリティの観点から、クエリビルダーやO/Rマッパーの登場が期待されます。

紹介した記事と本記事執筆時点との差異としては、Microsoft Ignite 2021 後、 Azure Managed Instance for Apache Cassandra が GA となったことです。これにより、SLA が設定され、本番環境で運用が可能になり、サポートへの問い合わせが可能になりました。

Azure には 列指向データベースの選択肢が複数あります。具体的には以下の通りです。

中でも Apache Cassandra は息の長いプロダクトで、ユーザーベースも大きいであろうことから、Azure が PaaS として正式提供することのインパクトは大きいのではないでしょうか。今後の発展に期待したいと思います。