詳細については、以下をご覧ください。 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 分散アプリケーション農業温室データ監視の解釈
ウェブマスターサービスウェブサイトとは、一般的なウェブマスターツール、ロゴ制作ウェブサイト、ウェブペ...
設立から 10 年以上経過したアメリカの会社である doteasy.com も、bluehost な...
今日、ビデオとアクセス制御の統合、クラウドの使用、スマート分析の力により、物理的なセキュリティが変革...
最近、アリババ傘下のチップ企業である平頭閣は、中国初のフルリンクスマートコントラクトプロセッサを発表...
過去2年間で、ユーザーは次々と「無料」に別れを告げてきました。支払い残高の引き出しには料金がかかり、...
Baidu が継続的に最適化しているサイトは主に企業サイトです。近年のインターネットの普及に伴い、企...
webhostingbuzz 11 周年記念プロモーションの最後の 2 日間は 17 日に終了します...
調査機関CompTIAが最近発表した調査報告書によると、IT業界と従業員は、新型コロナウイルスの流行...
[[345506]]簡単に自己紹介をさせてください。私は普通の会社員女子です。 [[345507]]...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスヒント1:Weiboの基...
「火鍋で解決できないことはない。あるなら二度食べればいい。」この言葉は冗談ではあるが、間接的に人々の...
2012 年は魔法の数字です。それは世界の終わりと SEOER の終わりが予測されています。 SEO...
どのようなウェブサイトであっても、高品質なウェブサイトコンテンツ(独自サービス)システムを定期的に作...
[51CTO.comからのオリジナル記事] 共有、俊敏性、革新は、インターネット時代の企業情報化構築...
上司から与えられるお金がこんなに少ないのに、どうやって商品を宣伝できるのかと友人たちが不満を漏らすの...