問題タブ [query-cache]
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.
mysql - MySQL クエリ キャッシュ ファイルはどこに保存されますか?
MySQL クエリ キャッシュ ファイルのダンプを見たいのですが、どこに保存されているかわかりません。私は Windows マシンを使用していますが、これは簡単ではありません。
mysql - クエリ キャッシュに保存されている MySQL クエリを確認するにはどうすればよいですか?
多くの講義の後、どの MySQL クエリがクエリ キャッシュに格納されているかを確認する方法を見つけることができませんでした。phpMyAdmin では、Qcache_insertsを使用してクエリの数を確認できますが、クエリの詳細を確認する にはどうすればよいですか 。何かツールや方法をご存知でしたら、とても興味があります。目標は、スクリプトを改善し、どのクエリがクエリ キャッシュに格納されているかどうかを明確に確認することです。
よろしくお願いします、ジェシカ
hibernate - Hibernate Query キャッシュが新しく追加されたエンティティを返さない
環境-
Hibernate- クエリ キャッシュと第 2 レベルのキャッシュが有効になっている
使用されるキャッシュ - updatetimestampcache が永久に設定された Ehcache。
問題- エンティティ E の場合、テーブルに 2 つの行があります。そのため、setcacheable(true) を使用した条件を介して (すべての行をフェッチするための) クエリでは、最初に 2 番目のレベルのキャッシュとクエリ キャッシュが読み込まれます。
setcacheable(true) を使用した条件を介した同じクエリの以降の実行は、クエリ キャッシュから提供されます。ここまでは順調ですね。
問題 - エンティティ E の新しいオブジェクトが休止状態を使用して保存された後 (現在、エンティティ E のテーブルには 3 行ありません)、トランザクション サービス レイヤー メソッドを使用します。エンティティ E の行を取得するための追加のクエリ (setcacheable(true) を使用) は、2 つのオブジェクトのみを返します。その中で 3 つのオブジェクトを返す必要があります。
新しいエンティティがそのテーブルに保存されるときに、エンティティ E のクエリ キャッシュが検証されていないようです。
hibernate - JPA を使用したクエリ キャッシュのクリア
JPAを使用してクエリキャッシュをクリアしたいのですが、EntityManagerの参照を持っています。
どうすればこれを達成できるか提案してください。
ステートレス EJB を使用した JPA の実装として hibernate 3.0 を使用しています。
私が発見した 1 つの方法は、EntityManager から getDelegate を取得し、次に SessionFactory を取得して、それに対して evict を呼び出すことです。
他に方法はありますか?
java - プリペアド ステートメントとステートメント/クエリのキャッシング
パラメータ化された準備済みステートメントの場合にステートメントキャッシングが役立つかどうかを理解しようとしています。
私の理解によると
- キャッシュを使用すると、クエリは「文字列」に基づいてキャッシュされます。
- この場合、クエリのパラメーターの値が異なる場合、それは異なる/新しいステートメント/文字列 wrt キャッシュです。
- また、パラメータが変わると結果も変わります。
- 準備されたステートメントはパラメーター化されているため、この場合にキャッシュを使用すると本当に便利ですか。
JDBC/Snaq DB プール/MySQL データベースを使用しています。
ここでのステートメント キャッシングは、次の 2 つの異なるケースを指します。
- JAVA: Snaq DB プールは、ステートメントのキャッシュを容易にする ConnectionCache クラスを提供しました。
- MySQL: DB は、クエリと結果をキャッシュする方法も提供しました。http://dev.mysql.com/doc/refman/5.1/en/query-cache.html
私の混乱は簡単です:
- キャッシュ内のクエリ/対応する結果を検索する場合、文字列比較に基づいて検索します。
- パラメータ値が変更されると、クエリの文字列も変更されます。
- これにより、パラメーターの値のセットが異なる同じクエリに対して、キャッシュ内に異なるエントリが作成されます。
私の質問を明確にしたいと思います。
java - Hibernate の二次キャッシュに関する高度な知識
Hibernate の第 2 レベル キャッシュを賢く使用することで、アプリケーションのパフォーマンスが向上すると信じており、そのためにインターネットと Hibernate コースで学習を開始しました。第 2 レベルのキャッシュと基本的にその仕組みについてはかなり良い説明がありますが、私の目標は、見つけられなかった特定の質問から始めて、物事がどのように機能するかを正確に理解することです。したがって、Hibernate のキャッシュ全般についていくつか質問します。特に第 2 レベルのキャッシュでは。
回答に関する注意事項:
A. 明らかな質問や無関係な質問であっても、お答えいただければ幸いです。
B. 質問がキャッシュ プロバイダーに依存する場合は、Ehcache に関する回答を聞きたいです
。
質問:
第 2 レベルのキャッシュを構成すると、第 1 レベルのキャッシュは無効になりますか? そうでない場合、エンティティを取得しようとしたときにイベントのプロセスがどのように発生するか、どのキャッシュ レベルが最初にヒットするか?
クエリ キャッシュは、クエリ テキストを HQL またはネイティブ SQL として保存しますか?
第 2 レベルのキャッシュは、JPA を介した Hibernate と直接 Hibernate を使用して同じように機能しますか?
クエリキャッシュにあるIDで第2レベルキャッシュをヒットすることにより、クエリキャッシュが第2レベルキャッシュに参加することを理解しました。何らかの理由で ID の一部が第 2 レベルのキャッシュに存在しなくなった場合、すべてのエンティティが再度フェッチされるか、存在しない部分だけがフェッチされるのでしょうか?
同期について – 特定のトランザクションで、第 2 レベル キャッシュに格納されているエンティティを更新することにより – 第 2 レベル キャッシュでエンティティが更新されるのはいつですか? この行為が第 2 レベルのキャッシュとクエリ キャッシュの両方にどのように影響するか について、さらに詳しく説明します。
ありがとうございました!
php - redisキャッシュキーから配列値を取得する方法
以下は私のphpスクリプトです。データベースからデータを選択し、setコマンドを使用して結果セット配列をredisキャッシュに保存していますが、 getコマンドを使用して取得しようとすると正確にデータを取得できません
print_r($result) を実行すると、 Arrayのみが返されます。アプローチの問題は何ですか、またはこれを行う他の方法はありますか。
どんな助けでも感謝します。ありがとうございました
jpa - Eclipselinkの基準クエリキャッシュキャッシング?
EclipseLink を JPA として基準クエリを使用しています。パラメータに基づいてクエリ結果をキャッシュする必要があります。私が使用したときquery.setHint("eclipselink.QUERY_RESULTS_CACHE", "TRUE")
でも、データベースへのクエリが発生します。基準クエリのコンテキストでどのように使用できますか?
ここで、クエリとそのヒントを設定し、addNamedQuery
これが私の出力です:
hibernate - Hibernate First level Cache と Query Cache の比較
一次キャッシュは休止状態のクエリキャッシュとは異なりますか? 第 1 レベルおよびクエリ キャッシュについて言及している記事を見たことがありますが、混乱しています。
coldfusion - ColdFusion の複数のクエリが混乱して間違った値を返す
FIFA 14 で購入する選手カードを検索する API を開発しています。
3 つの異なるページにまたがる約 15 の異なる Player に対して、毎分 600 の個別のリクエストを行っており、個々のリクエストは毎回最大 50 の結果を返します。
各ページは、私が作成したテーブル (lowestBuyNowPrice) に対してクエリを実行します。このテーブルは、10 分ごとに市場で入手可能な今すぐ購入できる最低価格で更新され、この値と現在の結果の値を比較します。
しかし、lowestBuyNowPrice テーブルの値よりも 2 倍または 3 倍高い価格でカードを購入してきましたが、これは決して起こるべきではありません。
何が起こっているのかを把握するために、他のいくつかのテーブルをセットアップしましたが、クエリが、本来あるべきプレーヤー ID とは異なるプレーヤー ID の結果を返しているように見えます。
これはおそらく、非常に短い時間で大量のリクエストが行われたためですが、正しいレコードが常に返されるようにするためにこれを修正する方法がわかりません。
誰でもアイデアはありますか?