Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Solr:可以定义不同于索引模式的JSON输出模式吗?_Json_Search_Solr_Full Text Search - Fatal编程技术网

Solr:可以定义不同于索引模式的JSON输出模式吗?

Solr:可以定义不同于索引模式的JSON输出模式吗?,json,search,solr,full-text-search,Json,Search,Solr,Full Text Search,我正在尝试使用Solr实现一个web应用程序的解决方案,它将接收搜索请求,将查询发送到搜索服务器,接收其JSON响应,并将其作为JSON输出直接打包到响应中。我的主要观点是,当前实现将查询发送到搜索服务器,接收资源ID,实例化每个资源(将其完全加载到内存中),然后从每个资源生成所需的JSON结构。因此,我想省去这一步,让应用程序成为搜索服务器的代理。我考虑使用Solr,因为它已经提供了JSON响应 我现在唯一的问题是:用于填充索引和方便搜索的数据与我想要输出的数据之间存在差异。在我看到的Solr

我正在尝试使用Solr实现一个web应用程序的解决方案,它将接收搜索请求,将查询发送到搜索服务器,接收其JSON响应,并将其作为JSON输出直接打包到响应中。我的主要观点是,当前实现将查询发送到搜索服务器,接收资源ID,实例化每个资源(将其完全加载到内存中),然后从每个资源生成所需的JSON结构。因此,我想省去这一步,让应用程序成为搜索服务器的代理。我考虑使用Solr,因为它已经提供了JSON响应

我现在唯一的问题是:用于填充索引和方便搜索的数据与我想要输出的数据之间存在差异。在我看到的Solr实现中,索引数据是获取JSON输出的数据

我的问题是:能否定义两个独立的模式:一个是要索引的数据,另一个是要输出的数据?这将是一个巨大的优势,因为我不喜欢索引数据的方法,我不会用它来搜索。我们可以通过查询说出想要输出哪些“可输出”参数吗


另外,我想知道是否可以在输出之前格式化数据(比如,取一个表示秒的整数,并将其格式化为HH:MM格式)

您可以将index=truestored=true属性添加到。然后,您的字段将被索引和存储,这意味着您可以根据需要获得输出。

是的,但是索引不会被搜索的内容是一种好的做法吗?我能影响格式吗?我看过关于索引和存储的文档,它们似乎正是我想要的。现在只剩下回答有关格式以及我是否可以在搜索时选择字段的问题。如果您不想在字段上搜索,则可以设置indexed=false和stored=true。我不明白您所说的格式是什么意思。您可以在搜索期间使用fl=fieldName语法选择字段。format的意思是:我有一个表示秒的整数。我想以HH:MM格式发布。我想要2或3个小数的浮点。仅举一个例子。AFAIK您不能在模式文件内进行格式化,但使用客户端库(例如SolrJ)可以在得到结果后进行格式化。