Apache IoTDB: 産業用 IoT シナリオに適した新しいデータベース。保存、クエリ、使用はもはや問題ではありません。

Apache IoTDB: 産業用 IoT シナリオに適した新しいデータベース。保存、クエリ、使用はもはや問題ではありません。

インダストリー4.0の時代に入り、デジタル化と自動化の導入により生産環境はより効率的になりました。同時に、スマートデバイスがもたらす膨大なデータの潜在的な価値に注目が集まっていますが、スマートデバイスによって生成されたデータをどのように効率的に保存し、膨大なデータをより適切に分析するかが難しい問題となっています。従来のデータベース モデルとストレージ方法では、このようなニーズに適応できないようです。そのため、データを効率的に保存およびクエリし、データの潜在的な価値をより適切に発見できるようにするために、時系列データベースが作成されました。

このような状況に直面して、清華大学は2015年にIoTDBの開発を開始しました。 2020年9月23日、Apache IoTDBは卒業し、Apacheトップレベルプロジェクトになりました。これは現在、中国の大学が主導する唯一のApache Foundationトップレベルプロジェクトであり、Apache Foundation傘下のIoTデータ管理分野で唯一のオープンソースプロジェクトです。 2021年10月、Apache IoTDBコアチームはTianmou Technologyを設立し、IoTDBの運営を継続して、産業ユーザーがデータの「保存、照会、使用」の問題を解決できるように支援しました。

Apache IoTDB によって開発されたコア技術に関しては、複数の参加者が共同でレビュー論文を発表し、IoTDB の設計について詳細かつ包括的な説明が行われました。この記事は、数万台の掘削機を管理する必要がある工業会社から始まり、要件を説明しています。「データは最初にデバイスにパッケージ化され、次に 5G モバイル ネットワークを介してサーバーに送信されます。サーバーでは、データは OLTP クエリ用に時系列データベースに書き込まれます。最後に、データ サイエンティストはデータベースからビッグ データ プラットフォームにデータをロードして、複雑な分析と予測、つまり OLAP タスクを実行できます。」

  • 論文アドレス: https://dl.acm.org/doi/abs/10.1145/3589775
  • プロジェクトアドレス: https://github.com/apache/iotdb

この論文では以下の部分に焦点を当てています。

1. データ モデル設計:時系列が論理レベルでどのように編成され、物理モデルに格納されるか。

2. TsFile ファイル形式:書き込みとクエリの高効率性を満たす独自開発の列指向ストレージ ファイル形式。

3. IoTDB エンジン:主にストレージ エンジン、クエリ エンジンなどが含まれます。

4. 分散ソリューション。

次に、これらの重要な部分について、より詳細な解釈を提供します。

詳細な解釈

1. データモデル設計

(1)下図に示すように、ツリー構造は極めて高強度の書き込み操作に対応するために使用され、IoTシナリオでよく見られるデータ到着遅延の問題を効果的に処理できます。

ツリーでは、各リーフ ノードがセンサーに対応し、各センサーには対応するデバイスがあります (図の下 2 つのレイヤーを参照)。上位レイヤーにも同じことが当てはまります。

(2)前回は論理構造について説明しました。次は物理構造の実装について見てみましょう。物理構造は主に時系列と系列ファミリーの2つの部分から構成されます。次の図は、各時系列が時間と値という 2 つの属性で構成されていることを示しています。時系列は、ルート ノードからリーフ ノードまでの完全なパスに沿って配置されます。上図はシーケンス クラスターの概念を示しています。シーケンス クラスターには複数のデバイスが含まれる場合があり、それらのデータは TsFile (後で説明するファイル構造) にまとめて保存されます。

2. TsFileファイル形式の設計

TsFile は、Apache IoTDB によって開発された列指向のストレージ ファイル形式です。構造は次のとおりです。

TsFile の設計プロセスにおいて、研究チームは主に以下の問題を解決しました。

  • スペースを節約し、データを可能な限り圧縮する
  • ファイル数を減らす
  • 一緒にクエリされる時系列の物理的な近さ
  • ディスクの断片化を軽減
  • 効率的なアクセス

提供される主なソリューションは次のとおりです。

  • 列ストレージ: NULL値を排除し、ディスクスペースを節約し、データアクセスの局所性を向上させます
  • 時系列エンコーディング: IoT シナリオにおける時系列のユニークな特性の活用
  • 周波数領域コーディング: 時系列の周波数領域解析は信号処理で広く使用されています
  • 具体的な構造分析: ページは基本的なストレージ単位です。チャンクには複数のページが含まれます。チャンク内のページは同じ時系列に属し、サイズは可変です。チャンク グループには複数のチャンクが含まれます。グループ内の複数のチャンクは、同じ期間に書き込まれた 1 つ以上の一連のデバイスに属します。これらは一緒にクエリされることが多いため、連続したディスク領域に配置されます。ブロックはメモリ内にあります。書き込まれたブロック グループは、最初にメモリにバッファリングされます。メモリがしきい値に達すると、すべてのブロック グループが TsFile に更新されます。インデックス (FileIndex) は、データ アクセスのためにファイルの末尾に情報を記録します。

3. IoTDBエンジン

この部分では、研究者は主に、IoT シナリオにおける遅延到着、効率的なクエリ処理、SQL のようなクエリの設計を考慮しました。 IoTDB エンジンの構造は次のとおりです。

図から、ストレージ エンジンは主に TsFile の書き込み、読み取り、管理の処理に使用されていることがわかります。この部分では、自動遅延分離テクノロジが使用されています (下図を参照)。

通常の TsFile 内のほとんどのデータについては、時間範囲に重複がない場合は遅延データ分離が推奨されます。ほとんどのデータが順序どおりでない場合は、遅延データ分離は推奨されません。

もう 1 つの重要なコンポーネントはクエリ エンジンです。これは、SQL クエリをデータベースで実行できる演算子に変換する役割を担います。同時に、産業用 IoT シナリオに適応するために、Apache IoTDB は時系列データに対する豊富なクエリを提供するように設計されています。

4. 分散ソリューション

TsFile は HDFS に分散され、Spark で操作できます。さらに、パーティション レプリケーション、NB-Raft レプリケーション、および DYNAMIC 読み取り一貫性を中心に、より優れたデータ分散とクエリ処理のためのネイティブ ソリューションが提供されます。

比較結果

この論文では、業界で広く使用されている最も先進的なファイル形式と時系列データベースである TsFile と IoTDB の比較結果を示し、次の図に示すように、多くの面で Apache IoTDB の利点を示しています。

上記の 2 つの図は、書き込みスループット、読み取り時間コスト、同期パフォーマンスの点で、TsFile が現在広く使用されているソリューションよりも優れていることを示しています。これは主に、TsFile の IoT 対応構造設計によるもので、deviceId などの冗長な情報の保存を回避します。ディスク使用量に明らかな利点がない理由は、より洗練されたインデックスが構築され、より多くのスペースを占有するためですが、このような犠牲によりクエリ時間に大幅な改善がもたらされる可能性があります。読み取り時間のコストに明らかな利点があることがわかります。

上の図からわかるように、IoTDB はほぼすべてのテストでパフォーマンスが向上し、書き込みスループットが高く、書き込みレイテンシが低くなっています。

上図の実験では、クエリデータの規模が大きい場合に IoTDB の方がパフォーマンスが優れていることがわかり、特に大規模なデータ集約において IoTDB の利点が顕著になります。

要約する

このホワイト ペーパーでは、IoT アプリケーションのリアルタイム クエリとビッグ データ分析をサポートするために特別に設計されたオープン アーキテクチャを持つ新しい時系列データ管理システム、Apache IoTDB を紹介します。システムには、時間と値を列形式で保存して null 値を回避し、効率的な圧縮を実現する新しい時系列ファイル形式 TsFile が含まれています。 TsFile に基づいて、IoTDB エンジンは LSM ツリーに似た戦略を採用し、IoT シナリオで非常に一般的な、非常に高強度の書き込みを処理し、遅延したデータ到着に対処します。豊富でスケーラブルなクエリと、TsFile で事前に計算された統計により、IoTDB は OLTP および OLAP タスクで効率的な処理を実現できます。

上記のテクノロジーに基づいて、IoTDB は産業用 IoT シナリオにより適切に対応できる新しいタイプのデータベースになりました。

<<:  マスク氏が自動運転を「ザッカーバーグの家へ行く」ライブ放送、45分間で手動介入は1回のみ:FSD V12は「ベータ版」ではなくなる

>>:  中国人民大学のウェン・ジロン、ガオ・リンらによる32ページにわたるAI自律エージェントの包括的なレビュー。構築、応用、評価を網羅している。

ブログ    
ブログ    

推薦する

人工知能の時代が到来した今、子どもたちはどんな仕事に就くことができるのでしょうか?

昨年11月には世界インターネット会議が開催され、その期間中、人工知能が私たちの生活にどのような変化を...

2021 年の AI サイバーセキュリティ開発の動向

AI の安全性は、サイバーセキュリティの脅威やデータ侵害を阻止する上でさらに重要であることが証明され...

テクスチャコントラスト検出を使用してAI生成画像を検出する

この記事では、AI によって生成された画像を検出するためのディープラーニング モデルを開発する方法に...

Apple M3全シリーズのランニングスコアを公開! 16コアのMaxが24コアのM2 Ultraを上回り、IntelとAMDの主力CPUと並ぶ

Appleの記者会見を受けて、M3シリーズチップは新しいMac製品とともについに実用化されることにな...

8 月の Github のトップ 10 ディープラーニング プロジェクト、あなたはどれを選びますか?

ビッグデータダイジェスト制作編集者: CoolBoyみなさん、こんにちは! 先月のトップ 10 の機...

将来のビジネスインテリジェンスにおける人工知能の役割

AI 搭載のチャットボットを導入しているコールセンターから、ディープラーニングを使用して数え切れない...

AIと人間: 人工知能は常に進歩し、人間は常に進化している

この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...

求職者がAI面接に遭遇したとき

自分が非常に興味を持っている職種に応募していると想像してください。企業から、あなたの履歴書は人工知能...

これらは、データ構造とアルゴリズムにおける動的プログラミングのコツです。

[[442276]]動的計画法理論の基礎動的プログラミングとは何か動的プログラミング (英語: D...

TensorFlow から Theano まで: 7 つのディープラーニング フレームワークの水平比較

ディープラーニング プロジェクトを開始する前に、適切なフレームワークを選択することが非常に重要です。...

レポート:中国の人工知能都市ランキングで北京が1位に

[[431347]]中国新聞社、北京10月26日(記者 夏斌)「2021年人工知能コンピューティング...

自動運転の時代において、ハッカーがあなたの車を破壊し、あなたを殺す方法はいくつあるでしょうか?

[[383265]] 「ワイルド・スピード8」を見たことがある友人なら、ハッカーが1,000台の車...

...