理論から実践まで、リアルタイムのレイク ウェアハウス機能アーキテクチャの設計と実装

前回の記事では、リアルタイム レイク ウェアハウスが現在の企業デジタル変革プロセスのソリューションである理由を説明し、リアルタイム コンピューティングとデータ レイクを組み合わせたアプリケーション シナリオを紹介しました。( 「データドリブン」の時代に、なぜ企業はリアルタイムのレイク ウェアハウスを必要とするのでしょうか? )

この記事では、データスタックリアルタイム開発プラットフォームにおけるリアルタイムレイクウェアハウスの機能アーキテクチャ設計と具体的な実践事例を詳しく紹介します。

機能的アーキテクチャの概要

リアルタイム レイク ウェアハウスは独立した製品モジュールではなく、その完全な実践はデータ スタック リアルタイム開発プラットフォームに基づいています。リアルタイム レイク ウェアハウスを構築するという完全なアイデアをより直観的に紹介するために、参照用にアーキテクチャ図を別にしました。

ファイル

湖の倉庫管理

レイク ウェアハウス管理は、リアルタイムのレイク ウェアハウスを構築するための基礎です。このレイヤーの構築を通じて、次のことが可能になります。

· Flink Catalog 管理を使用して、従来のオフライン データ ウェアハウスの対象ドメインと DW 階層設計と同様の、仮想レイク ウェアハウス階層アーキテクチャを構築します。

·レイク テーブルの視覚的な作成: このプラットフォームは、Paimon、Hudi、Iceberg の 3 つのレイク テーブルの作成をサポートし、それぞれ対応する DDL デモを提供します。

· Flink テーブル管理を通じて、 RDB と Kafka に基づいて作成された Flink マッピング テーブルの永続ストレージとレイク テーブルを組み合わせて、リアルタイム計算のためのテーブル管理機能を提供します。

· リアルタイム コンピューティングの分野で最も一般的に使用されるデータ メディアとして、このプラットフォームは、Kafka Topic の追加、削除、変更、データ統計分析などの基本機能もサポートしています。

湖倉開発

レイク ウェアハウス開発は、リアルタイム レイク ウェアハウスを構築するための中核機能であり、主に次のアプリケーション シナリオに分かれています。

· レイクに入力されるデータ: Kafka をリアルタイムで使用するか、RDB から CDC データを読み取ることにより、ビジネス データがデータ レイクにリアルタイムで入力され、リアルタイム レイク ウェアハウスの ODS レイヤーが構築され、統合されたデータ レイク ウェアハウスが提供されます。後続のストリーム/バッチ読み取りおよび書き込みのためのデータ基盤

· レイク ウェアハウスの処理:トランザクション機能、スナップショット機能、およびHu テーブル形式のその他の機能を利用して、FlinkSQL タスクを通じてレイク テーブルの読み取りと書き込みを行い、レイク ウェアハウスの中間層を構築します。

· ストリーミングとバッチ読み取りの統合: Hucang 処理プロセス中に、さまざまなビジネス シナリオに応じてストリーミング読み取りまたはバッチ読み取りを選択できます。ストリーミングとバッチ統合の設計では、最初に既存のデータをバッチで読み取り、次にストリーム内の増分データをシームレスに読み取ることを選択できます。また、ストリーム内の増分データを読み取り、その後でデータを修正することも選択できます。一括読み取り。

湖の倉庫管理

湖の倉庫開発プロセス中、湖の倉庫管理機能を通じて、リアルタイムの湖の倉庫を継続的に最適化および改善できます。

· レイク テーブルのファイル管理: レイク ウェアハウスの開発プロセス中に、多数の小さなファイル、期限切れのスナップショット、孤立したファイル、その他のデータが生成され、レイク テーブルの読み取りおよび書き込みパフォーマンスに重大な影響を与えます。ファイル管理機能により、小さなファイルを定期的にマージしたり、期限切れのスナップショットや孤立したファイルをクリーンアップしたりして、開発効率を向上させることができます。

· メタデータ クエリ: カタログ/データベース/テーブルの基本情報クエリを提供しながら、レイクテーブルのストレージ、行数、タスクの依存関係、その他の情報に関する統計も収集し、レイク テーブルの値のグローバルな判断を容易にします。

· Hive テーブル変換: 履歴 Hive テーブルの場合、プラットフォームは履歴データに影響を与えることなく、テーブル タイプのワンクリック変換をサポートします。

実践的な事例共有

以下では、データケースを使用して、湖へのデータ入力、湖の倉庫開発、湖の倉庫管理をプラットフォーム上で実装する方法を詳しく紹介します。

データがレイクに入力されます (DB2 データをリアルタイムで収集し、PaimonA レイク テーブルに書き込みます)

● まず、DB2-CDC の Flink マッピング テーブルと Paimon Lake テーブルを作成します。

ファイル ファイル

● 湖に入るタスクを開発する

ファイル

Hucang 開発 (ストリーミング読み取り PaimonA、ストリーミング書き込み PaimonB)

●パイモンBの作成

方法は上記と同じなので、ここではデモンストレーションを繰り返しません。

● レイクテーブルの読み取りおよび書き込みタスクを開発する

このプラットフォームは、SQL コードで定義する必要なく、読み取りおよび書き込みパラメーターの構成された開発をサポートするため、開発効率が大幅に向上します。たとえば、レイク テーブルを読み取るときにタイムスタンプを選択した場合、SQL を使用して開発する場合は、まずバックグラウンドでスナップショット データをクエリし、それを理解するためにタイムスタンプ変換を実行する必要があります。構成を通じて、日付と時刻を直接選択または入力し、タスクを送信するときにタイムスタンプを自動的に変換できます。

ファイル

湖の倉庫管理

● メタデータ クエリ

カタログ、データベース、Lake テーブル (Paimon/Hudi/Iceberg)、および Flink マッピング テーブルのメタデータ クエリを提供します。

ファイル

● データファイルの管理

レイク テーブルの読み取りと書き込み、特にリアルタイム シナリオでの読み取りと書き込みでは、多数の小さなファイルが生成されます。小さなファイルが多すぎると、読み取りパフォーマンスに影響します。したがって、レイク テーブル ファイルの管理機能は、リアルタイム レイク ウェアハウスを構築するために不可欠な部分です。

ファイル

要約する

リアルタイム レイク ウェアハウスは、「リアルタイム コンピューティング」と「データ レイク」を組み合わせたアプリケーション シナリオであり、製品モジュールを具体的に指すものではありません。このプラットフォームは、関連機能の設計を通じて、データ開発者が Flink Catalog、データ レイク、ストリーミング バッチ統合などの概念をより簡単かつ直観的に理解できるようにし、実際のビジネス シナリオへの実装を容易にします。

この記事は、「リアルタイム レイク ウェアハウス実践に関する 5 つの講義、第 2 号」のライブ コンテンツの要約に基づいています。興味のある友人は、リンクをクリックしてライブ リプレイ ビデオを視聴し、ライブ コースウェアを無料で入手できます。

ライブコースウェア:

https://www.dtstack.com/resources/1053?src=szgzh

ライブ再生ビデオ:

https://www.bilibili.com/video/BV1Uw411k7iS/?spm_id_from=333.999.0.0

「Dtstack 製品ホワイトペーパー」: https://www.dtstack.com/resources/1004?src=szsm

「データ ガバナンス業界実践ホワイト ペーパー」ダウンロード アドレス: https://www.dtstack.com/resources/1001?src=szsm Kangaroo Cloud ビッグデータ製品、業界ソリューション、顧客事例について詳しく知りたい、または相談したい友人、 Kangaroo Cloud 公式 Web サイトをご覧ください: https://www.dtstack.com/?src=szkyzg

同時に、ビッグデータのオープンソース プロジェクトに興味のある学生は、最新のオープンソース テクノロジー情報を交換するために「Kangaroo Cloud Open Source Framework DingTalk Technology qun」に参加することを歓迎します。qun 番号: 30537511、プロジェクト アドレス: https: // github.com/DTStack

Alibaba Cloudが深刻な障害に見舞われ、全製品に影響(復旧済み) ロシアのオペレーティングシステム「Aurora OS 5.0」、新UIが Tumblrで公開 多くのインターネット企業がHongmengプログラマーを緊急採用 .NET 8が正式にGA、最新版LTS版 UNIX時間 17億時代に突入しようとしている(すでに突入) XiaomiはXiaomi Velaが完全にオープンソースであり、基盤となるカーネルは NuttX Linux上の.NET 8であることを公式に発表しました。独立したサイズは50%削減されます。FFmpeg 6.1」ヘビサイド」リリース Microsoft、新たな「Windowsアプリ」を発売
{{名前}}
{{名前}}

おすすめ

転載: my.oschina.net/u/3869098/blog/10120095