我对弹性搜索概念非常陌生。我试图建立一个简单的应用程序使用弹性搜索。
public class App
{
public static void main( String[] args )
{
try {
TransportClient client = new PreBuiltTransportClient(Settings.EMPTY)
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"), 9300));
ElasticOperations.addDocToIndex(client, ElasticUtility.getJsonMap("Sandesha", "male", "jsandesh08@gmail.com", "Hassan"));
System.out.println("Doc added");
client.close();
} catch (UnknownHostException e) {
e.printStackTrace();
}
}
}
public class ElasticOperations {
public static void addDocToIndex(TransportClient client, Map<String,Object> jsonMap)
{
client.prepareIndex("customers", "personal").setSource(jsonMap).execute().actionGet();
}
}
我的ElasticUtility
类看起来像,
public class ElasticUtility {
public static Map<String, Object> getJsonMap(String name, String gender, String email, String city)
{
Map<String,Object> jsonMap = new HashMap<String, Object>();
jsonMap.put("name", name);
jsonMap.put("gender", gender);
jsonMap.put("email", email);
jsonMap.put("city", city);
return jsonMap;
}
}
谢谢你。
我想您的群集名称不匹配。如果集群名称不是“ElasticSearch”,这可能是问题所在。
在浏览器中转到http://localhost:9200,获取集群名称。然后,尝试将集群名称属性添加到TransportClient,如下所示:
Settings settings = Settings.builder()
.put("cluster.name", "elasticsearch_foo").build();
TransportClient client = new PreBuiltTransportClient(settings)
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"), 9300));
由于已经有很多关于连字符的问题,我已经尝试了以下解决方案: 使用字符筛选器:ElasticSearch-在名称中使用连字符进行搜索。 所以我做了这个映射: 所以char筛选器似乎没有在搜索字符串上执行?我该怎么做才能让它起作用?
我使用Elasticsearch允许用户输入要搜索的术语。例如,我要搜索以下属性'name': 如果使用以下代码搜索或,我希望返回此文档。 我尝试过做一个bool must和做多个术语,但它似乎只有在整个字符串都匹配的情况下才起作用。 所以我真正想做的是,这个词是否以任何顺序包含两个词。 有人能帮我走上正轨吗?我已经在这上面砸了一段时间了。
当我执行ps-aef grep elasticsearch HeapDumpOnOutOfMemoryError时看到了这一点 501 373 47 1 0 2:29pm ttys004 0:04.14/usr/bin/Java-xms4g-xmx4g-xss256k-djava.awt.headless=true-xx:+useparnewgc-xx:+useparnewgc-xx:+usepa
我从ElasticSearch得到以下错误。 我在Ubuntu上运行Elasticsearch 1.7.2。 我做错了什么?
我有以下格式的弹性搜索文档 } } 我的要求是,当我搜索特定字符串(string.string)时,我只想获得该字符串的FileOffSet(string.FileOffSet)。我该怎么做? 谢谢
我无法设置弹性服务器群集,因为我收到“Master not discovered Exception” 我的配置是 主控 客户 当我们从客户endpoint击curl'localhost:9200/_cat/master?v'时,它显示master not discovered异常。 任何帮助都是非常感谢的。 原木 Elasticsearch.service-Elasticsearch已加载:已加