1. java API 交互
如果使用java, elasticsearch给出了两种内置客户类型
节点类型(node client)
节点类型客户端将会被加入到集群节点中作为一个不承载数据的节点。该节点不存储任何索引数据,但是它知道具体的索引数据存在于集群中的哪个节点,可以直接将数据请求发送到对应的节点上。传输类型(transport client)
轻量级传输客户端可以将请求转发至远程的 elasticsearch 集群,它不会加入到集群本身。java 客户端 和 elasticsearch 的版本必须相同。
2. 基于JSON 的 RESTful API
许多语言可以通过 RESTful API 和 elasticsearch 交互。实际上可以看到 通过 curl
命令也可以和 elasticsearch 进行交互
curl 命令的使用:
curl -X<VERB> '<PROTOCOL>://<HOST>/<PATH>?<QUERY_STRING>' -d '<BODY>'
关键字 说明 VERB 适当的HTTP动作: GET, POST, PUT, HEAD, or DELETE PROTOCOL 传输协议:不是 http
就是https
HOST 主机IP或者域名 PORT 端口 QUERY_STRING 可选的查询语句 BODY JSON格式的请求体
更详细的客户端交互讲解请看guide