データレイクとは?
デジタル世界は年を追うごとに規模が2倍に拡大しております。そのデータの最大90%は非構造化データまたは半構造化データであることから、そのようなデータをすべて格納し、かつ迅速に処理する能力を維持するという2つの課題が生じています。本コンテンツではデータレイクの活用事例やメリットを解説いたします。
データレイクとは?
データレイクは、わかりやすく定義すると、多数のソースからのビッグデータを元のままの多様な形式で保持する中央ストレージリポジトリのことです。構造化データ、半構造化データ、非構造化データを格納できるので、将来の使用のためにデータをより柔軟な形式に保持できます。データレイクは、データを格納する際に識別子とメタデータタグを関連付けることで、検索を高速化します。
Pentaho社CTOのJames Dixon氏が最初に使用した「データレイク」という用語は、データレイク内のデータの臨時的な性質を指し、従来のデータウェアハウスシステムに格納されるクリーンな処理済みデータに対比させています。
データレイクは、通常は安価でスケーラブルな市販ハードウェアのクラスター上に構成されます。これにより、ストレージ容量を気にせずに、後で必要が生じた場合に備えて、データをデータレイクに投入できます。クラスターは、オンプレミスにもクラウドにも配置できます。
データレイクはデータウェアハウスと混同されがちです。しかし、特にビッグデータやビッグデータプロセスがオンプレミスからクラウドへと移行し続ける今日において、データレイクには、使用に適した状況にある組織に大きなメリットをもたらすいくつかの顕著な違いがあります。
データレイクのメリット
データレイクの仕組みは、スキーマオンリード(Schema on Read)と呼ばれる原則に基づいています。これは、格納前のデータが適合する必要のある事前定義されたスキーマがないことを意味します。処理中にデータが読み取られる場合にのみ、解析が実行され、必要に応じてスキーマに適合されます。通常はスキーマの定義に長時間かかるので、この機能によってその時間を削減できます。これにより、あらゆる形式のデータをそのまま格納することも可能になります。
データサイエンティストはデータレイクを使用して、より迅速かつ正確にデータにアクセスし、データを準備/分析できます。アナリティクスの専門家は、従来とは異なるさまざまな形式のデータを使用可能な巨大なデータプールを使用して、データにアクセスし、センチメント分析や不正検知などの多様なユースケースで活用できるという、またとない機会を得ます。
データレイク vs データウェアハウス
データレイクとデータウェアハウスは、基本的な目的が似ているために混同されがちです。
- 両方とも、組織内のさまざまなデータストアを統合するストレージリポジトリーです。
- 両方とも、さまざまなアプリケーションにデータを投入するワンストップのデータストアを作成することを目的とします。
しかし、2つの間には根本的な違いがあり、それぞれ異なるシナリオに適しています。
- スキーマオンリード(Schema on Read) vs スキーマオンライト(Schema on Write) — データウェアハウスのスキーマは、格納の前に定義され、構造化されています(スキーマはデータの書き込み中に適用されます)。対照的に、データレイクは事前定義されたスキーマを持たないため、ネイティブの形式でデータを格納できます。したがって、データウェアハウスでは通常、データプレパレーションの大半が処理前に行われます。データレイクの場合は、データが後で実際に使用されるときに実行されます。
- ユーザーのアクセシビリティが複雑 vs 単純 — データが格納前に単純化された形式で整理されないため、データレイクを活用するには、さまざまな種類のデータとそれらの関係に精通した専門家が必要になります。対照的に、データウェアハウスは、明確かつ文書化されたスキーマにより、技術系ユーザーと非技術系ユーザーの両方が簡単に利用できます。新しいチームメンバーでも、すぐにウェアハウスを使い始めることができます。
- 柔軟 vs 硬直 — データウェアハウスでは、最初にスキーマを定義するのに時間がかかるだけでなく、後で要件が変更されたときにスキーマを変更する場合も大きなリソースが必要になります。一方で、データレイクは変更に容易に適応できます。必要なストレージ容量が増えるのに応じて、データレイククラスター上のサーバーを拡張することも容易です。
この違いの詳細や、組織に適したオプションを見極める方法については、「データレイク vs データウェアハウス」を参照してください。 →
クラウドのデータレイクか、オンプレミスか?
従来のデータレイクは、オンプレミスで実装され、HDFS上のストレージとHadoopクラスター上の処理(YARN)を使用します。Hadoopは、スケーラビリティが高く低コストであり、データの局所性(データとコンピューティングが同じ場所に存在する)という元来のメリットによる優れたパフォーマンスを提供します。
しかし、オンプレミスのインフラストラクチャを構築するには、次のような課題があります。
- スペース — 大規模なサーバーは物理的なスペースをとるため、コストが高くなります。
- セットアップ — ハードウェアの調達とデータセンターのセットアップは簡単ではなく、数週間から数か月もかかることがあります。
- スケーラビリティ — ストレージ容量を拡張する必要がある場合は、スペースのニーズ拡大と上級幹部によるコスト承認のための時間と労力がかかります。
- 要件の見積もり — スケーラビリティはオンプレミスでは簡単に実現できないため、プロジェクト開始時にハードウェア要件を正しく見積もることが重要です。毎日データが無秩序に増加する状況において、これは容易なことではありません。
- コスト — オンプレミスのコスト見積もりは、クラウドを選択する場合よりも高くなることが証明されています。
クラウドデータレイクはこれらの課題解決に役立ちます。クラウドのデータレイクには次のメリットがあります。
- より簡単かつ迅速に開始できます。抜本的な変更を伴うアプローチではないので、開始後に少しずつ対処していくことが可能です。
- 従量制のモデルを使用するので、高い費用対効果を実現できます。
- ニーズの拡大に応じて簡単にスケールアップできるので、要件の見積もりや承認のストレスから解放されます。
物理的なスペースが不要な点も、コスト上のメリットとなります。
BeachBody社は、クラウドデータレイクを使用して、データアーキテクチャーと従業員の両面でスケーラビリティを改善しました。
クラウドデータレイクの課題
もちろん、クラウドデータレイクの使用にも課題はあります。セキュリティリスクのために機密情報や機微な情報をクラウドに格納することを望まない組織もあります。クラウドベースのデータレイクベンダーのほとんどは、セキュリティを保証し、長年にわたって保護の多層化を推進しているとは言え、データ窃取の懸念が払拭されたわけではありません。
もう1つの実際的な課題は、組織によっては構造化データを格納するためのデータウェアハウスシステムをすでに確立している点です。この場合、すべてのデータをクラウドに移行することを選択するか、またはハイブリッドソリューションとして共通コンピューティングエンジンを使用し、ウェアハウスの構造化データとクラウドの非構造化データにアクセスする道を模索できます。
データガバナンスの懸念もあります。データレイクがデータスワンプ化すると活用が困難になるため、そのような状態にならないよう注意する必要があります。Talendのプラットフォームは、データレイクがクリーンでアクセス可能な状態に保持されるよう保証します。
データレイクのアーキテクチャー:Hadoop、AWS、Azure
データレイクには、ストレージとコンピューティングの2つのコンポーネントがあることに留意する必要があります。ストレージとコンピューティングは、両方ともオンプレミスまたはクラウドに配置できます。したがって、データレイクアーキテクチャーを設計する際に複数の組み合わせが可能になります。
完全にオンプレミスで維持する、アーキテクチャー全体をクラウドに移行する、複数のクラウドを検討する、これらのオプションを混在させるといったことが可能です。
決まった方法はなく、それぞれのニーズに応じて適したオプションがいくつかあります。
Hadoopのデータレイク
ほとんどの人は、データレイクに関連して自動的にHadoopを想起します。
分散サーバーから成るHadoopクラスターは、ビッグデータストレージの問題を解決します。Hadoopの中核を成すのは、複数のサーバーにデータを格納して複製するHDFS(Hadoop Distributed File System)というストレージレイヤーです。YARN(Yet Another Resource Negotiator)は、各ノードでリソースをスケジュールする方法を決定するリソースマネージャーです。MapReduceはHadoopで使用されるプログラミングモデルであり、これによってデータが小さなサブセットに分割され、サーバーのクラスターで処理されます。
これら3つのコアコンポーネント以外にも、Hive、Pig、Flume、Sqoop、Kafkaなど、データの取り込み/プレパレーション/抽出を支援するいくつかの補助ツールがHadoopエコシステムに含まれています。Hadoopデータレイクは、ClouderaやHortonWorksなどのエンタープライズプラットフォームを使用して、オンプレミスだけでなくクラウドにもセットアップできます。Azureなどのクラウドデータレイクも、Hadoopアーキテクチャーで機能を提供します。
メリット:
- テクノロジー間の共通点が多い
- オープンソースであるためコストが低い
- Hadoopでの統合に多くのETLツールを使用できる
- 容易に拡張できる
- データの局所性によりコンピューティングを高速化できる
AWSのデータレイク
AWSでは、データレイクソリューション向けに包括的な製品群が提供されています。
ストレージ機能を提供するソリューションの中心となるのが、Amazon S3(Amazon Simple Storage Service)です。Kinesis Streams、Kinesis Firehose、Snowball、Direct Connectは、大量のデータをS3に転送できるデータ取り込みツールです。既存のオンプレミスデータをクラウドに移行するのに役立つデータベース移行サービスもあります。
S3に加えて、DynamoDB(レイテンシーが小さいNo-SQLデータベース)とElastic Search(データレイクのクエリーのための簡素化されたメカニズムを提供するサービス)があります。Cognito User Poolsは、ユーザー認証とデータレイクへのアクセスを定義します。Security Token Service、Key Management Service、CloudWatch、CloudTrailなどのサービスはデータを保護します。RedShift、QuickSight、EMR、Machine Learningなどの処理/アナリティクスツールもあります。
AWSで利用可能な製品は非常に多いため、最初に習得するまでが容易ではありませんが、包括的な機能を提供するこのソリューションはビジネスインテリジェンスアプリケーションで幅広く使用されています。
メリット:
- 包括的で豊富な機能を提供する製品群
- 固有の要件に基づいて製品を選択する柔軟性
- 低コスト
- 強力なセキュリティとコンプライアンス標準
- 必要に応じてコンピューティングとストレージを個別に拡張するための分離
- TalendなどのAPN(AWS Partner Network)企業とのコラボレーションによるシームレスなAWSオンボーディング
Azureのデータレイク
Azureは、Microsoft社が提供するデータレイクです。ストレージとアナリティクスレイヤーを備えており、ストレージレイヤーはAzure Data Lake Store(ADLS)と呼ばれ、アナリティクスレイヤーはAzure Data Lake AnalyticsとHDInsightという2つのコンポーネントで構成されています。
ADLSはHDFS標準に基づいて構築され、無制限のストレージ容量を持ちます。単独で1ペタバイトを超えるようなファイルを数兆個格納することも可能です。ADLSは、データを任意の形式で格納でき、高い安全性とスケーラビリティを提供します。HDFS標準を使用するすべてのアプリケーションをサポートします。これにより、既存データを簡単に移行できるとともに、他のコンピューティングエンジンとのプラグアンドプレイも容易になります。
HDInsightは、クラウドベースのデータレイクアナリティクスサービスです。Hadoop YARN上に構築され、Spark、Hive、Kafka、Stormなどのツールを使用してデータにアクセスできます。Azure Active Directoryとの統合により、エンタープライズグレードのセキュリティをサポートします。
Azure Data Lake Analyticsもアナリティクスサービスですが、異なるアプローチを使用します。Hiveなどのツールを使用するのではなく、SQLとC#を組み合わせたU-SQLという言語を使用してデータにアクセスします。より低コスト(使用したジョブの分だけの支払い)で高速化を実現するので、ビッグデータのバッチ処理に理想的です。
メリット:
- ストレージとコンピューティングの両方がクラウドであるため管理が容易
- 高性能の機能を備えた強力なアナリティクスサービス
- 既存のHadoopクラスターからの移行が容易
- 多くのビッグデータ専門家がHadoopとそのツールに精通しているので、熟練した人材を見つけやすい
- Active Directoryとの統合により、個別のセキュリティ管理が不要
データレイクの使用を開始する
速度と多様性に対応する能力を備えたデータレイクは、ビジネスインテリジェンスのユーザーにとって魅力的な存在です。処理済みデータをインターネットで利用可能な主観的データと組み合わせる機会がもたらされているのです。
X線やMRIスキャンなどのマシンデータを調査して、病気の因果パターンを判断できます。IoTの用途では、莫大なセンサーデータを驚異的なスピードで処理できます。小売業界は、ユーザーに関する豊富なデータを使用してオムニチャネルのエクスペリエンスを提供できます。
データレイクは、高度な予測アナリティクスの用途だけでなく、組織の定期レポートで複数のデータ形式を使用する場合などにも役立ちます。
もはや、データレイクが必要かどうかという議論をしている状況ではなくなっています。どのソリューションを使用し、どのように実装するかを検討すべき段階に達しています。Talend Big Data Integrationをダウンロードして、今すぐ開始しましょう。