詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したHongmengテクノロジーコミュニティ https://harmonyos..com 1 はじめにこの記事は、OpenHarmonyOS 3.0 LTS に基づいて、異なるデバイス間でデータベース データの分散を提供する分散データ サービス (DDS) の機能について説明します。アーキテクチャの観点から見ると、分散データ サービスはオープン ソースの Hongmeng 基盤サービスの基本サービスであり、分散タスク スケジューリングと同じレベルにあります。ただし、分散タスクスケジューリング機能を使用する場合、完全な分散機能を実現するために、基本的にはさらにデータ連携機能が必要になります。したがって、分散タスク スケジューリングを学習する際には、分散データ サービスに関連する機能と基盤となるサービスを学習することが不可欠です。 この記事を書いているときに、JS DEMO をデバッグしているときに、下位レベルの Ark JS ランタイム レイヤーにバグがあることを発見しました。問題を提出し、PR を提出しようとしました。 DEMO の実行中に問題が発生した場合は、上記の PR をマージし、システム全体を再コンパイルしてマシンをフラッシュしてから、もう一度試してください。 1.1 配布関連
1.2 OpenHarmony アーキテクチャ図2 基本2.1 概要まず、オープンソースの Hongmeng 公式ドキュメントにある分散データ サービスの説明を見てみましょう。 分散データ サービス (DDS) は、異なるデバイス間でデータベース データを分散する機能を提供します。分散データ サービスは、アカウント、アプリケーション、データベースの 3 つを組み合わせることでデータを分離します。分散データ サービスは、信頼できる認証済みデバイス間のデータ同期をサポートし、複数の端末デバイスで一貫したデータ アクセス エクスペリエンスをユーザーに提供します。 現在、オープンソースの Hongmeng にはまだアカウント機能が統合されていないため、テスト時にはアカウントを自由に選択し、一貫して情報を入力することができます。完全な分散データ分離を実現し、複数の端末デバイスで一貫したデータ アクセス エクスペリエンスを提供するには、アプリケーションとデータベースの一貫性を維持する必要があります。 2.2 ソースコードの構造
2.3 分散データサービスアーキテクチャ設計図2.4 データ同期公式ドキュメントでは次のように説明されています: 分散データベースの作成、アクセス、およびサブスクリプション機能は、分散データ サービス インターフェイスを呼び出すことによって実装されます。サービス インターフェイスは、サービス コンポーネントによって提供される機能を操作して、ストレージ コンポーネントにデータを格納します。ストレージ コンポーネントは同期コンポーネントを呼び出してデータを同期します。同期コンポーネントは、通信適応層を使用してデータをリモート デバイスと同期します。リモート デバイスは同期コンポーネントを介してデータを受信し、それをローカル ストレージ コンポーネントに更新します。 2.5 分散データ最終的な一貫性: これは、デバイスがデータの追加、削除、または変更を正常に実行した後、ネットワーク内のデバイスは更新されたデータを読み取ることができない可能性があるが、一定の時間枠が経過すると、ネットワーク内のデバイスのデータは一貫した状態になる可能性があることを意味します。 強力な一貫性には、分散サーバーのシナリオで発生する可能性のある分散データの管理に対する非常に高い要件があります。モバイル デバイスは常にオンラインであるとは限らず、分散型の性質を持つため、分散データ サービスは強力な一貫性をサポートせず、結果的な一貫性のみをサポートします。 現在、分散データのデータモデルは KV データモデルのみをサポートしており、外部キーやトリガーなどのリレーショナルデータベースにおける技術的なポイントはサポートされていません。オープンソースの Hongmeng 基盤レイヤーは SQLITE3 に基づくリレーショナル データベースをサポートしていますが、分散データ レベルではサポートしていません。 現在の KV データ モデルの制限:
2.6 使用の前提条件オープンソースのHongmengの配布データソースコードから、現在は携帯電話(phone)、ウェアラブルデバイス(wearable)、車載システム(ivi)のみに搭載されることがわかります。その他の軽量デバイスは、当面サポートされないか、サポートするために調整およびカスタマイズが必要になる場合があります。 現在、この機能は 2 つの標準デバイスのオープン ソース システム Hongmeng にデフォルトで統合されており、直接使用できます。 オープンソース Hongmeng の分散データが単一のマシンでのみ使用される場合、前提条件は必要ありません。分散機能が必要な場合は、デバイス間でネットワークを構築する必要があります。ネットワーク接続の前提条件は、デバイス認証を完了することです。具体的な手順については、分散タスク スケジューリングの OpenHarmony ソース コード分析を参照してください。 3 プログラミングインターフェース3.1 モジュールのインポート
次のインターフェースのほとんどには、コールバックとプロミスという 2 つの非同期メソッドがあります。この記事では、promise メソッドを例に説明します。コールバックメソッドは似ています。ご自身でドキュメントを参照してください。 3.2 マネージャーの作成
データベース オブジェクトを管理するための KVManager オブジェクト インスタンスを作成し、それを Promise を通じて返します。このメソッドは非同期メソッドです。 例:
3.3 ストレージインスタンスを取得する
Options と storeId を指定して、KVStore データベースを作成および取得し、Promise モードで返します。このメソッドは非同期メソッドです。 例:
3.4 保存、取得、削除、同期
3.5 イベント通知コールバックの登録SubscribeType はサブスクリプションの種類を説明します。
4 まとめ上記の手順は、DevEco Studio 3.0.0.600 x64 で正常に記述され、2 つの Hi3516D デバイス間で正常に実行されます。コード(分散タスクスケジューリングおよび分散データテスト.zip)が添付されています。 もう一度言いますが、基盤となる分散データは ARK JS エンジンに依存していることにご注意ください。現在、文字列処理にバグが見つかりました。操作中に問題が発生した場合は、まず PR をマージし、システム全体を再コンパイルしてマシンをフラッシュしてから、DEMO を実行してください。 詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したHongmengテクノロジーコミュニティ https://harmonyos..com |
<<: 2022年以降に注目すべきエッジコンピューティングの5つのトレンド
>>: HarmonyOS 分散アプリケーション農業温室データ監視の解釈
Baidu ウェイトはしばらく前からリリースされており、誰もが自分のウェブサイトの Baidu ウェ...
インターネット企業は、ネットユーザーが毎日利用し、そのサービスにはより高い広報能力が求められる百度、...
前提条件ホストに次のユーティリティがインストールされていることを確認してください。 kubectlギ...
昨年第4四半期に黒字を達成したヴァンクルにとって、今年のプレッシャーは依然として非常に大きい。チュー...
Bluehost の仮想ホストは世界的に有名で、プライベート エクイティ コンソーシアム EIG の...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスSEO担当者として、ウェ...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています最近、多く...
経済活動のやり方におけるあらゆる大きな変化は、大きな技術的変化の機会を生み出すでしょう。製品経済から...
SEO の継続的な発展に伴い、競争はますます激しくなっています。今後の SEO は、テクノロジー、コ...
ライブストリーミングで商品を販売するのは、霧の中に花が咲き、水の中に月が浮かぶようなものです。羅永浩...
COVID-19 パンデミックの間、企業の働き方は根本的に変化し、パブリック クラウド環境とプライベ...
フォグ コンピューティングは、テクノロジーの世界では比較的知られていない概念ですが、スマート ホーム...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますBaidu...
2019 年に最も速い日本の VPS は何ですか?最も高速な日本の VPS/日本の高速 VPS はど...
クラウドコンピューティングの分野では、Google は常に恥ずかしい存在であったようです。 Goog...