データウエアハウス(DWH)は大量データの収集、蓄積に特化したデータベースである。DWHの構造は複雑で構築は容易ではなく、データ保全や管理のコストも高額になる。こうした課題解決に使えるDWHのクラウドサービスが「Amazon Redshift」である。
今回取り上げる「Amazon Redshift(Redshift)」は米アマゾン・ウェブ・サービス(AWS)が提供するデータウエアハウス(DWH)のクラウドサービスです。最初にDWHの特徴について確認しましょう。
大量データを高速に処理する
DWHは大量データの収集、蓄積、分析に特化したデータベースです。大量のデータを高速に処理できることが特徴として挙げられます。
分析用のデータベースとしてDWHを構築する場合、運用を始めるまでには多くの壁があります。RDBMS(リレーショナルデータベース管理システム)とは使い方が異なるため、データモデルの作成について専門的な知識を持つエンジニアを必要とします。さらに構築フェーズが長期にわたることも多く、その期間中もハードウエアやソフトウエアの費用が発生します。DWHの特性上、ハードウエアは大規模になり、それに伴ってソフトウエアのライセンスも高額になるのが一般的です。DX(デジタルトランスフォーメーション)で試行を繰り返したくても、構築の難解さとコストの壁が立ちはだかります。
構築が完了して運用が始まると、データが蓄積され、扱うデータ量も多くなります。すると徐々に処理パフォーマンスが劣化していきます。DWHに蓄積されていくデータの保全や管理をするエンジニアも必要になります。処理データ量が増えると拡張しなければならない場合もありますが、オンプレミスの環境では容易に拡張や縮小ができません。
これらの問題の解決策の1つがクラウドサービスであるRedshiftを利用することです。どのように問題が解消されるのかを見ていきます。
ダウンタイムなしで拡張・縮小
Redshiftはマネージドサービスであり、AWSの管理画面から簡単に利用可能です。パフォーマンスの状況も確認できます。ペタバイト規模のデータを扱えるだけでなく、AWSによって処理が高速化されるように設計されています。バックアップは手動取得と自動取得のいずれも設定可能です。AWSのストレージサービス「Amazon S3」に安全に格納され、リストアも容易で任意の時点に復元できます。データの暗号化については、RedshiftがAWSの暗号化キー管理サービス「AWS Key Management Service(KMS)」を統合しているため簡単な設定だけで済みます。
拡張と縮小について、Redshiftの仕組みを含めて説明します。Redshiftはクラスターごとに1つのリーダーノードと1つ以上のコンピュートノードで構成されています。リーダーノードはクライアントアプリケーションから命令を受け取り、コンピュートノードに処理をさせます。複数のコンピュートノードが存在する場合はそれぞれが独立しているため、ディスクもノードごとに個別に保持しています。