私は、複数の部分検索のためにApache Solrを使ってDatastax Cassandraに取り組んでいます。 問題は、私がカウント(*)クエリを実行しているときでも、たった10回しか取得できないたびに、1300行が特定のクエリに属することを確認できます。Solr Cassandraの検索で10行しか得られない
[email protected]:testo> select id from empo where solr_query = 'isd:9*';
id
--------------------------------------
5ee5fca6-6f48-11e6-8b77-86f30ca893d3
27e3e3bc-6f48-11e6-8b77-86f30ca893d3
f3156e76-6f47-11e6-8b77-86f30ca893d3
f315ac74-6f47-11e6-8b77-86f30ca893d3
f315bc82-6f47-11e6-8b77-86f30ca893d3
27e3058c-6f48-11e6-8b77-86f30ca893d3
4016eee4-6f47-11e6-8b77-86f30ca893d3
1bd33e34-6f47-11e6-8b77-86f30ca893d3
8f0a9168-6f47-11e6-8b77-86f30ca893d3
6669cc42-6f47-11e6-8b77-86f30ca893d3
(10 rows)
いくつかのリンクを検索した後、私はsolrconfig.xmlファイルに変更を加えます。変更は以下の通りです。
<requestHandler class="solr.SearchHandler" default="true" name="search">
<!-- default values for query parameters can be specified, these
will be overridden by parameters in the request
-->
<lst name="defaults">
<int name="rows">1000000</int>
</lst>
<!-- SearchHandler for CQL Solr queries:
this handler doesn't support any additional components, only default parameters
-->
<requestHandler class="com.datastax.bdp.search.solr.handler.component.CqlSearchHandler" name="solr_query">
<lst name="defaults">
<int name="rows">1000000</int>
</lst>
</requestHandler>
でも、私は同じ問題を抱えています。これに対する解決策を教えてください。おかげさまで
Iに戻る制限しますcqlshでレコードを取得するために使用しています。それでは、どのようにしてcqlコマンドプロンプト側のすべてのレコードを取得できますか –
私はその構文に慣れていませんが、いくつかの例があります:https://docs.datastax.com/en/datastax_enterprise/4.6/datastax_enterprise/srch/ srchCql.htmlので、あなたはそれを使用して遊んで、あなたのシステム上でそれをテストすることができます。最終的なクエリバージョンを教えてください。それを答えに追加します。 –
もう1つの問題私は今調べることができます。このように検索しようとすると.. solr_query = 'num1:* 1 * OR num2:* 1 *';それは私にレコードを与える..しかし、私は中国語のようなテキストで同じ構文をしようとしている場合、それは私のために働いていない.. solr_query = 'col1:*金沢* OR col2:*金泽*';これは私に0の記録を与えます.... –