問題タブ [data-synchronization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1128 参照

iphone - iPhoneアプリケーションとGWTアプリケーションの同期を維持する

オフラインモードとオンラインモードで動作するはずのiPhoneアプリケーションに取り組んでいます。
オンラインモードでは、ユーザーが入力したすべての情報をGWT/GAEがサポートするWebサービスにフィードすることになっています。オフラインモードでは、情報をローカルに保存することになっています。接続が利用可能になったら、情報をWebサービスに同期します。

現在の私の計画は次のとおりです。

  1. Protobuffersを使用してアプリとウェブサービス間の接続を提供し、効率的な有線通信を実現します
  2. CoreDataを使用してローカルDBを操作する
  3. ネットワークステータスをポーリングし、利用可能な場合はデータベースを同期して、ある種のlocal-db-to-remote-dbキーの同期を維持します。

問題は、私は正しい方向に向かっているのかということです。これを実装するための標準パターンはありますか?たぶん誰かが私に同じように機能するオープンソースアプリケーションを教えてもらえますか?

私はiPhoneコーディングに本当に慣れていないので、何か提案を聞いてとてもうれしく思います。

ありがとう

0 投票する
1 に答える
1608 参照

synchronization - 複数のクライアントおよびサーバーデータベースを備えたMicrosoftSyncFramework

データベースサーバーに直接接続するのではなく、ローカルデータストアを持つようにアプリケーションを変更しています。クライアントアプリは、サーバーデータベースとそのローカルデータストアの間で変更を双方向で同期します。MicrosoftSyncFrameworkを使用して同期ソリューションを実装しようとしています。明確にするために、サーバーアプリケーションはなく、データベースサーバーのみがありますが、複数のクライアントがあります。

FullEnumerationSimpleSyncProviderを実装する2つのクラスの実装を開始しました。1つはLocalSyncProviderと呼ばれ、もう1つはServerSyncProviderと呼ばれます。LocalSyncProviderは、ローカルデータストアからアイテムを列挙、挿入、更新、削除する方法を知っており、ServerSyncProviderは、データベースサーバーからアイテムを列挙、挿入、更新、削除する方法を知っています。それぞれが提供されたSqlMetadataStoreを使用し、2つのメタデータストア(1つはローカル用、もう1つはサーバー用)をクライアントのローカルドライブに保存します。これは、各クライアントがローカルデータストア用に独自のメタデータストアを持ち、サーバーデータベース用に独自のメタデータストアを持つことを意味します。

これは実際に機能しますか、サーバーメタデータストアが1つだけ存在する必要がありますか、それとも同期フレームワークを別の方法で使用する必要がありますか?

0 投票する
9 に答える
5368 参照

javascript - サーバー側同期を使用したクライアント側ストレージ用の JavaScript ライブラリ

クライアント側のデータベースにデータを保存し、バックグラウンドでデータベースをサーバーのデータベースに自動的に同期させる JavaScript ライブラリを探しています。

jQuery の jStore と同じように、さまざまなエンジンをサポートすることが望ましい

周りを見渡せば何でも見つかる

0 投票する
1 に答える
503 参照

mysql - データ同期ソリューション?

いくつかのセキュリティ問題のために、私はサードパーティのアプリが私のDBにアクセスできない環境にいます。このため、定期的に生成できるサービス/ツール/スクリプト(まだ何がわかりません...私は最良のオプションを開いていますが、これから何をするかを読んでいます...)が必要です。基本(毎日、毎週、毎月)特定のアプリケーションのすべての新規/変更されたレコードを含むいくつかのcsvファイル。

このプロセスを自動化し、いつでも新しいファイルをエクスポートできるはずです。したがって、彼がまだ必要としている記録を記録する各アプリケーションを追跡する必要があります。

各アプリケーションには、他の形式(csv / xls / sql)のデータが必要です。また、一部のアプリケーションには一部のフィールドが必要ですが、一部のフィールドは必要ありません...かなり柔軟である必要があります...

私にとって最良の選択肢は何ですか?アプリケーションごとにカスタムテーブルを作成しますか?変更されたデータの抽出に基づいていますか?

0 投票する
1 に答える
2377 参照

oracle - EPMA アプリケーション間のデータ同期をプログラムでどのように実行しますか?

Hyperion Fusion Edition for Oracle の 2 つのワークスペース アプリケーション間でデータの移動を実行できるバッチ ジョブをスケジュールしたいと考えています。提供されるツールは「データ同期」と呼ばれます。このツールは、ワークスペース環境を介した要求に応じて、このタイプのアクティビティが発生することを可能にします。

  • これを自動的に行うにはどうすればよいですか?

コマンドラインバッチファイルを事前に指定した時間に実行するように要求できるバッチスケジューラがあることに気付きました。ただし、データ同期のためにこれを行う方法を示すために利用できるリソースを知りません。

0 投票する
1 に答える
246 参照

sqlite - ローカル メタデータとサービスからのキャッシュに使用されるローカル sqlite db を更新していますか?

私はサイトを検索しましたが、私の質問に完全に答える質問/回答が見つかりませんでした。私が見つけた最も近いものは、Syncing objects between two disparate systems best approach .

とにかく、利用可能なRSSフィードがないため、Webページをスクリーンスクレイピングしています。したがって、取得を行い、Webページを通過して、関心のあるすべての情報をスクラップし、その情報をsqlite データベースを使用して、Web サイトから繰り返しフェッチすることなく、暇なときに情報を照会できるようにします。

ただし、sqlite dbに保存されているデータ自体にさまざまなメタデータも保存しています。たとえば、データを見たことがありますか、データは新しい/古いか、データのチャンクへのブックマークです(コレクションと考えてください無関係なデータの、ブックマークは、そのデータの処理/読み取り中の場所へのポインターにすぎません)。

したがって、現在の私の現在の問題は、効果的かつ簡単な方法で、Web サイトからの新しいデータおよび/または変更されたデータでローカル sqlite データベースを更新する方法を見つけようとしています。

これが私の現在の考えです:

  1. ページ自体をダウンロードする
  2. 解析されたデータが入る一時テーブルを作成します
  3. 公式テーブルと一時テーブルを比較し、更新情報や新しい情報を公式テーブルにコピーします

一時テーブル内のデータが新規か、更新済みか、または変更されていないかを判断する方法を理解する必要があるため、このプロセスはやや複雑に思えます。だから私は、より良いアプローチがないか、またはそのようなシステムを構築/構築する方法について何か提案があるかどうか疑問に思っていますか?

編集 1: 追加情報をコメントまたは編集としてどこに入力すればよいかわからないため、ここに追加します。

これは、ブックマークに関してメタデータを少し拡張します。基本的に、データ ソースは新しいデータを作成したり、現在のデータに追加したりできるため、一時テーブルのアイデアを考えていた理由の 1 つは、 「ブックマーク」されたデータ ソースに新しいデータがあるかどうか。

0 投票する
3 に答える
615 参照

iphone - iPhone アプリでデータを同期するための最良の戦略

私は、サーバー (XML、JSON など) からデータを取得する通常の iPhone アプリに取り組んでおり、同期データを実装する最良の方法は何か疑問に思っています。基準は、速度 (ネットワーク データ交換が少ない)、堅牢性 (更新が失敗した場合のデータ回復)、オフライン アクセス、および柔軟性 (新しい列のように、データベースの構造がわずかに変更された場合に適応可能) です。アプリによって異なることは承知していますが、戦略や経験を共有していただけますか?

私の場合、次のようなことを考えています。

1) 最終更新日をiPhoneに保存する

2) 起動時に、getNewData.php?lastModifiedDate=... のようなメッセージを送信します。

3) サーバーは、前回から変更されたデータのみを処理して送り返します。

4) このデータは次のようにフォーマットされています。

<+><data id="..."></data></+> // add this to SQLite/CoreData

<-><data id="..."></data></-> // remove this

<%><data id="..."><attribute>newValue</attribute></data></%> // new modified value

<+>、<->、<%>... を各属性に対しても作成したくないのは、複雑すぎるためです。おそらく <%> フィールドを受け取ったときに、データを削除するだけです指定された id を使用して、再度追加します (ここでの id は、自動的に自動インクリメントされるフィールドではないと仮定します)。

5) すべてをダウンロードして更新したら、[最終更新日] フィールドを更新します。

この戦略の主な問題は、何かを更新しているときにネットワークがダウンした場合 => 最終更新日がまだ更新されていない => 次回アプリを再起動したときに、同じことをもう一度繰り返さなければならないことです。矛盾する可能性のあるデータは言うまでもありません。更新に一時テーブルを使用してすべてをアトミックにすればうまくいきますが、更新が長すぎる (大量のデータ変更) 場合、ユーザーは新しいデータが利用可能になるまで長時間待たなければなりません。各データ フィールドに Last-Modified-Date を使用し、データを徐々に更新する必要がありますか?

0 投票する
1 に答える
1288 参照

iphone - iPhoneアプリケーションとWebアプリケーション間の双方向同期

MySQLデータベースに依存するWebアプリケーションがあり、そのためにiPhoneアプリを作成することを考えています。このアプリを使用すると、ユーザーはWebアプリケーションで自分のアカウントのデータを参照/挿入/更新/削除できます。

最も簡単な方法は、iPhoneアプリをWebアプリのインターフェイスとして単純に構築することです。つまり、各操作をWebに接続する必要があります。ただし、iPhoneアプリに独自の「オフライン」バージョンのデータベースを持たせたいと思います。これにより、ユーザーはオフラインで作業できるだけでなく、すべてをローカルに配置することでアプリの速度と応答性が向上するため、エクスペリエンスが向上します。

タイムスタンプを使用して最新バージョンを保持することで競合を処理します(すでにソフト削除を使用しています。つまり、ユーザーがレコードを削除するときにフラグを設定するだけです)が、挿入の処理方法がよくわかりません。実際、ユーザーがオフライン(iPhoneアプリ)データベースとオンライン(Webアプリ)データベースの両方に新しいアイテムを挿入すると、主キーの競合が発生します(すべてのテーブルには、主キーとして自動インクリメントを使用するINTEGERフィールドがあります)。この問題をどのように処理できますか?

私は2列の主キーを持つことを考えていました。1つは自動インクリメントされた整数で、もう1つは「デバイス」に固有のものです。このように、Webアプリを介して追加された新しいレコードのIDは1-web、2-webなどになり、iPhoneアプリを介して作成されたレコード1-iphone、2-iphoneなど...これにより、2つをマージできます。競合のないデータベース。このアイデアについてどう思いますか?

0 投票する
1 に答える
114 参照

c# - MicrosoftSyncFrameworkと識別子としての整数

モバイルデバイス上にあるローカルストレージとサーバーDBの間でデータ同期を実装する必要があります。

重要なのは、私たちのDB(すでに何年も前から運用されている)はすべて、レコードのIDとして整数を使用しているということです。影響が大きすぎるため、GUIDに変更することは現在のところ代替手段ではないのではないかと思います。

誰かがこの問題を回避する良い方法がありますか?

0 投票する
1 に答える
2797 参照

sql-server - 異なるスキーマを持つ 2 つのデータベースの同期

汎用テーブルを使用して設計された正規化された SQL Server 2008 データベースがあります。そのため、各エンティティ (製品、注文、注文アイテムなど) ごとに個別のテーブルを用意する代わりに、一般的なテーブル (エンティティ、インスタンス、関係、属性など) を使用します。

データをすばやく取得するために、別の非正規化データベースを用意することにしました。これら 2 つのデータベースが異なるスキーマを持っていると仮定して、これら 2 つのデータベースを同期するためのさまざまなテクノロジについて教えてください。

乾杯、モッシュ