0

アプリでの広告ネットワークの使用に関する統計を保存したいのですが。基本的には、広告ネットワークがリクエストされた回数、印象を与えた回数、リクエストに失敗した回数のカウントを毎日維持したいと思います。

私の最初のアイデアは、次の列を持つSQLiteデータベースを用意することです

[ day , networkId, requests, impressions, fails] 

しかし、私は次のパフォーマンス/バッテリーの消耗の可能性のある問題を検討しています:

私は3つの広告ネットワーク(メインに1つ、バックフィルとして2つ)を使用しているため、最悪のケースは次のとおりです。

  • ネットワークAが要求されました
  • ネットワークAが失敗する
  • ネットワークBが要求されました
  • ネットワークBが失敗する
  • ネットワークCが要求しました
  • ネットワークCの成功。

すべて〜4秒以内。この各ポイントが対応する行を更新するためにデータベースにアクセスする場合、オーバーヘッドは大幅に増加しますか?ある種のキャッシュをメモリに実装し、値を一括挿入する必要がありますか([request+success]または[request+fail]のペアを取得して単一の更新を行う)、またはデータベースを直接使用できますか?

4

1 に答える 1

1

オブジェクトモデル技術を利用することができます...これにより、オブジェクトに書き込むことができるデータの変更を取得するたびに...そして特定の時間間隔で、オブジェクトモデルのデータをSQLデータベースに書き込むことができます。 ..

私が見る唯一の問題は、urアクティビティが強制終了された場合、またはオブジェクトモデルが空になるのを停止した場合です。urアクティビティが終了または強制終了される可能性がある場合は、データベースにデータを書き込むことでこれを回避できます。

于 2012-09-18T21:56:29.000 に答える