2017-05-24 12 views
0

私たちは人々のためにイベントリレーションを必要とする問題を抱えており、この1週間に約400件のイベント関係を持つ非常に大きなグループの人々に問題があります。この大規模なグループのイベントの関係は、それは永遠に、おそらくタイムアウトがかかります。しかし、タイムアウトの直後にもう一度試してみると、数秒後には大丈夫です。私はこれがセールスフォースだと思っていたので、soqlクエリー/情報をちょうどチャッチングしていました。私は、このクエリをキャッシュし、タイムアウトの問題が止む私たちのアプリにアクセスしようとしたときに定期的にすべてのメンバーのイベント関係を照会するために実行されたバッチジョブを持つことでそれをトリックするのを試みた。大規模なSOQLクエリをSalesforce Org。迅速な返品のために?

しかし、これは動作するようには見えません。バッチが正しく動作していて、これらのイベントリレーションをすべて照会しても、アプリケーションを使用せずにしばらくしてからアプリケーションを使用すると、タイムアウトになるか、最初は非常に長くかかります。

これをキャッシュに入れておくと、ユーザーが大規模なグループのすべてのイベントリレーションを表示しようとしたときに非常に迅速に実行されるようになりますか?デベロッパーコンソールでは、イベントリレーションクエリーがコードと実際の問題を酷使していることがわかりました。私はsalesforceのPlatform Cacheを調べています。このデータを保存すると、私が探している解決策が得られますか?

+0

これをSalesforce.stackexchangeに入れてください。 – EricSSH

+0

はい、プラットフォームキャッシュがソリューションを提供できます。スタック交換の私の[プラットフォームキャッシュについての答え](https://salesforce.stackexchange.com/questions/163334/how-to-get-profile-ids-without-soql-query/163335#163335)を見てください –

答えて

0

必要に応じてwhereとcustomインデックスのインデックスを使用して、選択的になるようにクエリを更新する必要があります。

+0

私は終了しましたActivityDateは他の日付フィールドは索引付けされていないため、開始日と終了日の時間フィールドに反対するActivityDateにのみ依存しています。クエリプランを使用して、クエリを実行した後、クエリのコストは約4から同様に0.4になりました。 –

関連する問題