データベーステーブルの検索クエリの結果を1秒以内に取得する必要があります。データベーステーブルはこの時点でゆっくりと結果を返します。検索結果が速くなるように、テーブルをキャッシュに移動してそこから検索する必要があります。既存の検索ページでGoogleタイプのページ更新を実行したい-つまり、ユーザーが入力するとページが更新されるはずです。
これを実現するには、検索結果が1秒以内に返される必要があります。私のデータベースはteradataです。クエリには少なくとも2〜3秒かかります。したがって、キャッシュなどの他のオプションを探します。結果が得られるようにキャッシュを使用します。急いできて。
列は
会社、ID、業界、親... 4 more
検索ページです。したがって、ユーザーが「ja」と入力すると、jaで始まるすべてのアイテムが次のようになります。
会社-------------Id-------------業界--------------親
jaico----- --------222-------------塗料-------------Jaicoasia
ジャミーフルーツ---------- --- 232 ------------- food ------------- jammy International
テーブルには320万行が含まれ、8列が存在します。検索データは8列すべてを返す必要があります。バイト単位で考えると、1行あたり150文字です。したがって、合計バイト数は320万*150文字=480メガバイトです。これだけのデータをキャッシュに保存し、SQLなどの検索クエリ(グループ化、グループ化、並べ替えなど)を実行します。この場合に使用するのに最適なオプションは何ですか。
- ehcache
- jbossキャッシュ
- イニフィニスパン
- Apache Lucene
どのオプションが適切かを提案してください。メモリにキャッシュするのが良いですか、それともluceneを使用するのが良いですか?
何をキャッシュする必要がありますか?->これは8列の320万行のテーブルです。
なぜキャッシュするのですか?->検索結果がSQLクエリよりも速くなるようにキャッシュする必要があります。SQLクエリを使用すると非常に時間がかかるため、データのキャッシュに移行したいと思います。