データ移行(データマイグレーション)とは:戦略とベストプラクティス

データ移行(データマイグレーション(Data Migration))とは、あるシステムから別のシステムへとデータを移動するプロセスです。データ移行は、事前に戦略をたて、ツールなどを使用して行います。その重要性、ベストプラクティス、主要ステップについて説明します。

ビッグデータは現代のほとんどのビジネスを推進するものであり、ビッグデータは決して眠りません。つまり、データを入力からデータレイクへ、あるリポジトリから別のリポジトリへ、データウェアハウスからデータマートへ、またはクラウド内/経由で移行するかにかかわらず、データ統合とデータ移行はシームレスで確立されたプロセスでなければなりません。堅実なデータ移行計画がなければ、予算を超過する可能性や圧倒的なデータ処理に直面する可能性があります。あるいは、データ運用が期待したほどの機能を実現しない可能性もあります。

データ移行(データマイグレーション)とは?

データ移行(データマイグレーション(Data Migration))とは、システムをアップグレードする際などに、あるシステムから別のシステムへとデータを移動するプロセスです。単純なことのように思われるかもしれませんが、ストレージとデータベースまたはアプリケーションの変更を伴います。

ETL(Extract/Transform/Load)プロセスにおいては、データの移行には少なくとも変換のステップとロードのステップが含まれます。つまり、抽出されたデータはプレパレーションで一連の機能を経る必要があり、その後に目的の場所にロードできます。

組織はさまざまな理由でデータを移行します。たとえば、システム全体の見直し、データベースのアップグレード、新しいデータウェアハウスの確立、または取得したソースやほかのソースからの新しいデータのマージが必要になることがあります。既存のアプリケーションと並行して配置されている別のシステムを展開する場合も、データの移行が必要です。

データ移行戦略の重要性

データ移行の具体的な目的が何であれ、目標は通常、パフォーマンスと競争力を高めることです。

しかし、データ移行は正しく実行しなければなりません。

データの移行が十分でない場合は、冗長性や未知数を含む不正確なデータを使用することになりかねません。これは、ソースデータが完全に使用可能で適切な場合でも発生する可能性があります。さらに、ソースデータに存在していた問題は、より洗練された新しいシステムに取り込まれたときに増幅される可能性があります。

完全なデータ移行戦略によって、解決するよりも多くの問題を生み出してしまうという不満足な結果を防ぎます。不完全な計画は、期間内に完了できない問題や予算を超過する問題を生むだけでなく、移行プロジェクトを完全に失敗させる可能性があります。作業の計画と戦略を立てる際には、別の大規模プロジェクトに従属するプロジェクトとして移行を扱うのではなく、最大限の注意を払う必要があります。

戦略的なデータ移行計画では、次の重要要素を考慮する必要があります。

  • データを知る — 移行の前に、ソースデータは完全な監査を受ける必要があります。この手順を無視すると、予期しない問題が発生する可能性があります。
  • クリーンアップ — ソースデータに関する問題を特定したら、それらを解決する必要があります。作業の規模によっては、追加のソフトウェアツールやサードパーティのリソースが必要になることがあります。
  • 保守と保護 — データは一定期間後に劣化し、信頼性が低下します。これは、データクオリティを維持するために適切な制御が必要であることを意味します。
  • ガバナンス — データクオリティの追跡と報告は、データの整合性をよりよく理解できるようにするために重要です。この情報を作成するために使用されるプロセスとツールは、非常に使いやすいものでなければならず、また可能な限り機能を自動化する必要があります。

構造化され段階的な手順に加えて、データ移行計画には、プロジェクトに適したソフトウェアとツールを導入するためのプロセスを含める必要があります。

データ移行戦略

データ移行戦略を構築する方法は複数あります。組織の特定のビジネスニーズや要件は、最も適切な戦略を策定するうえで役立ちます。とは言え、ほとんどの戦略は「ビッグバン」か「トリクルダウン」に分類されます。

「ビッグバン」の移行

ビッグバンのデータ移行では、限られた期間内で完全な移行が完了します。データがETL処理を経て新しいデータベースに移行する間、ライブシステムはダウンタイムを経験します。

この方法の「売り」は、当然、すべてが一度のイベントとして行われるため、完了までの期間が比較的短いことです。ただし、リソースの1つがオフラインになった状態でビジネスを運営するので、重圧が非常に大きくなる可能性があります。そのために実装が不完全になる危険が生じます。

ビッグバンのアプローチがビジネスにとって理にかなったものである場合は、実際のイベントの前に移行プロセスを実施してみることを検討してください。

「トリクルダウン」の移行

対照的に、トリクルダウンの移行では、移行プロセスを段階的に実行していきます。実装中は、古いシステムと新しいシステムが並行して実行されるため、ダウンタイムや運用上の中断が発生しません。リアルタイムで実行されるプロセスが、データを継続的に移行できます。

ビッグバンのアプローチと比較すると、これらの実装は設計がかなり複雑になることがあります。しかし、複雑さが増すことで(正しく行われた場合)、リスクは高まるのではなく軽減されます。

データ移行のベストプラクティス

データ移行の際、どの実装方法を使用するかにかかわらず、いくつかのベストプラクティスに留意する必要があります。

  • 実行前にデータをバックアップする。実装中に問題が発生した場合でも、データを失うことは許されません。先に進む前に、バックアップリソースがあり、テスト済みであることを確認します。
  • 戦略に固執する。計画を策定しても、プロセスが順調に進み過ぎたときや物事が手に負えなくなったときに、あまりにも多くのデータ管理者が計画を放棄してしまいます。移行プロセスが複雑になり、いら立たしい思いをすることもあります。それが現実であるという心積もりで臨み、計画を守りましょう。
  • 入念にテストする。計画段階と設計段階の間、および実装と保守の間は、データ移行をテストして、最終的に目的の結果が得られることを確認します。

データ移行戦略における6つの重要ステップ

それぞれの戦略は、組織のニーズと目標に応じて詳細が異なります。しかし、一般的には、データ移行計画は共通の認識可能なパターンに従う必要があります。

1. ソースを調査・評価する

データ移行の前に、何を移行するのか、ターゲットシステムにどのように適合するのかを知る(および理解する)必要があります。どの程度の量のデータを移行対象とするのか、それがどのようなデータなのかを理解します。

データに多くのフィールドが含まれ、その一部はターゲットシステムへのマッピングが必要ない場合があります。ソースでデータフィールドが欠けており、ギャップを埋めるために別の場所から取得しなければならない場合もあります。何を移行する必要があるのか、何を残すことができるのか、そして何が足りないのかを検討します。

転送するデータフィールドの要件を満たすだけでなく、内部に含まれる実際のデータに対して監査を実行します。十分に入力されていないフィールド、多数の不完全なデータ、不正確な情報などの問題がある場合は、そもそもデータ移行プロセスを実際に実行する必要があるかどうかを再検討する必要があります。

このソースレビューのステップをスキップし、データを理解していると想定する場合、移行で時間とコストを浪費する可能性があります。下手をすると、データマッピングにおける重大な欠陥に直面し、先に進むことができなくなる可能性すらあります。

2. 移行を定義・設計する

設計段階では、移行の方法(ビッグバンまたはトリクルダウン)を決めます。これには、ソリューションの技術的アーキテクチャーの作成と移行プロセスの詳述も含まれます。

設計、移行対象のデータ、およびターゲットシステムを考慮して、タイムラインとプロジェクトの懸案事項を定義し始めることができます。このステップの終わりまでに、プロジェクト全体を文書化する必要があります。

計画中は、データのセキュリティ計画を検討することが重要です。保護する必要があるデータには、計画全体を通して保護を適用する必要があります。

3. 移行ソリューションを構築する

「必要最低限」の開発アプローチで移行に取り組みたくなることがあります。しかし、実装の実行は1回だけであるため、正しく実行することが重要です。一般的な方法は、データをサブセットに分割し、一度に1つのカテゴリを作成してからテストすることです。特に大規模な移行に取り組んでいる場合は、ビルドとテストを並行して実行するのが合理的です。

4. ライブテストを実施する

テスト段階は、ビルド段階でコードをテストすれば終わるのではありません。実装の正確性とアプリケーションの完全性を保証するために、データ移行設計を実際のデータでテストすることが重要です。

5. 実装を開始する

最終テストの後、計画で定義されているスタイルを使用して実装を進めることができます。

6. 監査する

実装が実稼働に入ったら、移行の正確性を保証するために、データを監査するためのシステムをセットアップします。

データ移行ツール・ソフトウェア

データ移行ツールをゼロから作成して手作業でコーディングするのは、困難であり非常に時間がかかります。しかし、移行を簡素化するデータツールは、より効率的で費用対効果に優れています。ソフトウェアソリューションを探す際には、以下の点についてベンダーを評価します。

  • 接続性 — 現在使用しているシステムとソフトウェアをサポートするソリューションであるかを検討します。
  • スケーラビリティ — ソフトウェアのデータ制限がどのくらいか、近い将来のデータニーズがそれを超えるかを検討します。
  • セキュリティ — ソフトウェアプラットフォームのセキュリティ対策の調査に時間をかけましょう。データは、最も貴重なリソースの1つであり、保護されたままでなければなりません。
  • スピード — プラットフォームでの処理速度がどのくらいかを検討します

クラウドへのデータの移行

市場投入のスピードを上げ、スケーラビリティを向上させ、技術的リソースの必要性を減らすために、一部または全部のデータをクラウドに移行する組織が増えています。

以前は、データを組織の物理リソース内に保持するために、データアーキテクトがオンプレミスの大規模なサーバーファームの展開を担っていました。オンサイトサーバーを推進したのは、クラウドのセキュリティに対する懸念が理由の一部になっていました。しかし、主要プラットフォームが従来のITセキュリティと同等の(およびGDPRに準拠する)セキュリティプラクティスを採用しているため、移行におけるこの障壁はほとんど克服されています。

適切なクラウド統合ツールは、スケーラビリティが高く安全なクラウドのiPaaS(integration Platform-as-a-Service)によって、顧客のクラウドデータ移行プロジェクトを加速する支援を提供します。Talendのクラウドネイティブのオープンソースデータ統合ツールは、ドラッグアンドドロップ機能によって複雑なマッピングを簡素化します。また、オープンソース基盤によって、費用対効果が高く効率的なソリューションが実現しています。

データ移行の開始

システムのアップグレード、クラウドへの移行、データの統合を推進する場合は、データの移行を視野に入れる必要があります。移行は大規模で重要なプロジェクトであり、データの整合性を保持するために正しく実行することが求められます。

Talendのプラットフォームには、データ準備から統合、そして継続的なデータストリーミングまで、データ移行プロセスのあらゆるステップを合理化できる無償のオープンソースデータツールが含まれています。データ移行プロセスを勢いよくスタートさせるため、成功を支援するソフトウェアを探してください。

Talendを使う準備はできていますか?