今や日常生活で頻繁に耳にする「デジタルトランスフォーメーション(DX)」。ビジネスを変革し、市場優位性を確保するために、DXの推進が不可欠と言われています。 では、DXを進めることで企業にはどのようなメリットがあるのでしょうか。
アクアシステムズの顧客である人材系企業は、社内各所で別々の形や場所に保管された「ユーザと顧客企業のデータ」を統合し、データの一元化と効率化を実現しました。 これにより、ターゲットセグメントごとにニーズに合った情報をタイムリーに発信できるようになり、クロスセルによる売上が5億円増加しました。
このように、DXは単なるデジタル化、IT化による効率化、生産性の向上にとどまらず、「データを集めて、活かす」ことで、新たな製品やサービス、ビジネスモデル、売れる仕組みを創出し、企業が継続的に成長し競争に打ち勝つ力をもたらすものです。
しかしながら、DX推進に取り組みたいものの、そもそも「DXを成功に導くデータ基盤」をどのように作るのか、具体的に何から始めればよいのかわからないといった声が多いのも事実です。
『DXを成功に導くデータ基盤とは』をテーマに、DXの成功に不可欠な「データの利活用」の進め方、「データの利活用」をつかさどるデータ基盤、データベースについて、開発・運用の考え方やデータ基盤に求められる特性、対応方法をご紹介いたします。
第1回は「DXに求められるデータ基盤と構築工程」です。
■ データの有効活用に向けて ~重要なデータベースの3つの特性~
DXではそのデータ基盤となるデータベース(DB)に対して、(1)多様性 (2)柔軟性 (3)スピードという3つの特性が今まで以上に求められ、またこれらをすべて満たすことがDX推進の大きな力になります。
(1)多様性
具体的には "利用できるDBの種類が多様である"ことを指します。多種多様なデータを扱うことが求められるDXにおいて、これまで主流だったRDBMSだけでなく、新しいデータ構造を専門的に取り扱うNoSQL(Not Only SQL)や、大量のデータを取り扱うデータウエアハウス(DWH)の利用はDX推進の鍵となります。
|
Amazon Web Service |
Microsoft Azure |
Google Cloud Platform |
Oracle Cloud |
RDBMS |
Amazon Aurora (MySQL, PostgreSQL) Amazon RDS (MySQL, MariaDB, PostgreSQL, Oracle, SQL Server |
Azure SQL Database Azure SQL Managed Instance SQL Server on Virtual Machines Azure Database (PostgreSQL, MySQL, MariaDB) |
Cloud SQL (MySQL, PostgreSQL, SQL Server) Cloud Spanner |
Oracle Autonomous Database Oracle Database Cloud Service Exadata Cloud Service MySQL Cloud Service |
DWH |
Amazon Redsift |
Azure Synapse Analytics |
BigQuery |
Oracle Autonomous Data Warehouse |
キーバリュー |
Amazon DynamoDB |
Azure Synapse Analytics |
Cloud Bigtable |
Oracle NoSQL Database Cloud Service |
インメモリ |
Amazon ElasticCache (Redis, Memcached) |
Azure Cosmos DB |
Cloud Memorystore (Redis, Memcached) |
- |
ドキュメント |
Amazon DocumentDB (MongoDB互換) |
Azure Cosmos DB |
Cloud Firestore |
Oracle Autonomous JSON Database |
ワイドカラム |
Amazon Keysapces (Apache Cassandra向け) |
Azure Cosmos DB |
Cloud Bigtable |
Oracle Data Hub Cloud Service |
グラフ |
Amazon Neptune |
Azure Cosmos DB |
- |
- |
時系列 |
Amazon Timestream |
Azure Time Series Insight |
- |
- |
(2)柔軟性
"使いたいときに使いたいDBを利用できる" ことを意味しています。
特にDXでは開発を進める過程でシステム要件が変わり、異なる種類のDBを使いたくなるケースもあります。
その際に素早く異なるDBへとデータを加工展開し、要件にあわせて利用を可能にすることができる仕組みがデータ基盤に求められます。
例えばデータレイク※ を構築しそこにデータを集めておけば、新たなDBを用意して使い始めるまでの時間を短縮できます。
このようなデータレイクの構築のしやすさ、といったことがDXのデータ基盤として重要です。
データレイクとは大量のデータを1カ所に集め、用途に応じて取り出し、加工して活用するデータ基盤です。 データレイクに入れるデータはRDBMSから抽出したデータやアプリケーションが送るログ、端末のセンサーから送られるデータなど多岐にわたり、またデータのフォーマットもCSVやドキュメント、ログ、動画など様々です。 データレイクではこれらを未加工のまま保存し、データを取り出した際にETL(抽出・変換・ロード)ツールなどを用いてクレンジングや加工を施します。
(3)スピード
"利用したいときにすぐ利用できる" 状態である、ということです。
DX開発を進めるうえで、DBには今まで以上に、「構築を素早く完了でき、即座に利用開始できる」という特性が求められます。
構築、運用において、必要な時にすぐに利用を可能にする”スピード”はDXを加速化させるために重要な要素です。

そして上述の3つの特性を満たすうえで、クラウドの利用は欠かせません。
クラウドでは、多様なDBサービスの中からDXの目的に合ったものを利用できます(=多様性)。
また、様々なデータを集約し利用するデータレイクなどのデータ基盤の構築も容易です(=柔軟性)。
クラウドではDBサービスも構築や運用の自動化が進んでおり、利用したいDBを素早く簡単に用意することができます(=スピード)。
またDBの領域で最も活発なイノベーションが起こっているのもクラウドです。つまり、クラウドにはDXを加速させる基盤として適した条件がそろっているのです。

■ DXに適した工程の考え方
クラウドのDBサービスを利用するDXのプロジェクトでは工程についての考え方も変わってきます。DXプロジェクトの多くは仮説立案とPoC(Proof of Concept、概念実証)から始まります。 実現性が不確かなDXプロジェクトの場合、仮説が合っているか、技術的に実現可能かを検証してから本格的なシステム構築に臨みます。
これまで主流だった、要件定義、基本設計、詳細設計、基盤構築、アプリケーション開発、テスト、運用と上流から下流に開発を進める、ウオーターフォール型の開発プロセスとは異なる考え方です。
要件が変化することが見込まれ、そのために仮説検証を高速に繰り返すことを要求されるDXプロジェクトでは、設計を必要最小限の範囲に絞ります。そうすることで素早く仮説検証に進むことができます。 仮説検証を進め、システム要件が固まるまで、改変作業、リファクタリングを行っていきます。これまでウオーターフォール文化のもとで育ち、その中で高い品質を要求されてきたエンジニアにはいくらか抵抗感を抱くことかもしれません。 しかしDXプロジェクトでは多くの開発プロセスにおいて、アプリケーションを必要最小限の機能から、フィードバックを受けて徐々に成長させていく方式を取っており、スケジュールを遅らせないためにDB構築においても同じ開発手法を取り入れることが求められます。
この開発プロセスの中でDB構築において重要なのは、必要最小限の設計とは何か、ということになります。必要最小限の設計とは後から変更ができないこと、DBのエンジンやバージョン、DBの名前、扱う文字コードなどの設定です。 言い換えれば、"後から変更できるものは仮説検証しながら変更すればよい" という発想です。
さらに、トランザクション頻度などの事前予測が難しく、サイジングに必要な前提条件を確定できないために、設計工程ではサイジング(システムに必要なリソースを算出すること)をしないプロジェクトも増えてきています。 そういったケースでは、仮で決めたリソースサイズで運用に入り、運用の中でリソース量及び性能をモニタリングしてリソースを追加もしくは削減するといった調整を行います。 容易にリソースを増減することができるクラウドではこういった運用方法が可能なのです。

■ クラウド化がデータ有効活用の鍵
データの有効活用においてクラウドサービスの利用は非常に有効です。
しかしながらDBをクラウド上に構築する場合、運用についてこれまでとは異なる点もあります。
そこで次回はクラウドでのDB運用のポイントについて、さらに深く掘り下げて解説します。