我正在考虑使用ElasticSearch或solr进行“监禁”搜索结果。由于安全起见,我想保留数据集,等等。
据我所知,这可以通过使用solr的多核配置来实现 - 有没有办法使用ElasticSearch以高效的'实例化'方式隔离索引/数据?
答案 0 :(得分:8)
在ElasticSearch中,您可以通过索引到单独的索引来分隔数据,然后将查询限制为特定的索引。
例如,如果您有两个索引,'foo'和'bar'正在运行:
% curl -XGET http://localhost:9200/_search?q=*:*
将搜索整个群集,同时:
% curl -XGET http://localhost:9200/foo/_search?q=*:*
将只搜索'foo'索引。
如果使用以下内容创建索引“test”,也可以按类型分隔数据:
% curl -XPOST http://localhost:9200/test -d '{
"mappings" : {
"type1" : {
"_source" : { "enabled" : false },
"properties" : {
"field1" : { "type" : "string", "index" : "not_analyzed" }
}
},
"type2" : {
"_source" : { "enabled" : false },
"properties" : {
"field1" : { "type" : "string", "index" : "not_analyzed" }
}
}
}
}'
您可以通过使用查询指定类型来搜索'type1'文档:
% curl -XGET http://localhost:9200/test/type1/_search?q=*:*