3

わかりましたので、データベースが 1 つのテーブルに約 20000 の要素を保持するプロジェクトに取り組んでいます。例: 20000 個の製品を販売する店舗があり、毎日更新したいと考えています。毎日100~200くらいしか更新されません。

データベース全体をネイティブにすることを考えていたので、より高速になります。それが問題を解決する良い方法なのか、それともデータを保存して表示する他の手段を使用する必要があるのか​​を知りたいですか? 毎日のダウンロード/更新には更新ファイルが大きすぎるのではないかと心配しています。

データベースを更新するたびにデータベースが 0 から構築されるため、データベースを更新することはできますか?

私の文法を許してください。1月

4

1 に答える 1

2

データベースを更新する必要はありません。データベースの内容を更新する必要があります。アプリにあらゆる種類の識別子(たとえばint)を保存しましょう。データベースコンテンツの更新を毎日リリースします。前日のコンテンツとのみ異なります。次に、アプリはサーバー上のデータベースの現在のIDを確認してから、dbに含まれるIDと最近のバージョンとのすべての違いをフェッチして適用する必要があります。または、要求に応じて1つの更新ファイルを作成し、顧客が持っているコンテンツのリビジョンと最新のものを把握します。ユーザーがアプリを毎日使用する場合、それは大したことではありません。

sデータベースを更新するたびに、データベースは0から構築されるため、データベースを更新することは可能ですか?

次に、これを少し間違って行う可能性があります。インクリメンタルにビルドできる必要があります(または、少なくとも常に同じIDをDBから同じ製品に割り当てることができる必要があります)。

または、最終的なデータベースダンプが小さい場合(つまり、5MB-50MB-500MB-名前を付けます)。アプリにDBファイル全体をフェッチさせ、古いコンテンツを置き換えるだけで、増分更新の時間と労力を無駄にすることはありません。これらの処理には、DB全体を置き換えるよりも多くの時間と費用がかかる可能性があるためです。

于 2012-11-24T22:10:04.613 に答える