Elastic Search(一)
一. 安装插件
Marvel集群管理
root@lj-ThinkPad-L460:~# sudo bin/plugin install license
root@lj-ThinkPad-L460:~# sudo bin/plugin install marvel-agent 访问 http://localhost:9200/_plugin/marvel/
Kibana 4.5.1可视化
root@lj-ThinkPad-L460:~# wget https://download.elastic.co/kibana/kibana/kibana-4.5.1-linux-x64.tar.gz
root@lj-ThinkPad-L460:~# vim config/kibana.yml
Set the elasticsearch.url
root@lj-ThinkPad-L460:~# ./bin/kibana 运行 访问 http://yourhost.com:5601
启动es
./elasticsearch --cluster.name my_cluster_name --node.name my_node_name
二.快速入门
管理
#1.cluster healthy
curl 'localhost:9200/_cat/health?v'
#2. nodes in our cluster
curl 'localhost:9200/_cat/nodes?v'
#3.list all indices
curl 'localhost:9200/_cat/indices?v'
customer例子
#1. create an index named "customer" and then list all the indexes again:
➜ ~ curl 'localhost:9200/_cat/indices?v'
➜ ~ curl 'localhost:9200/_cat/indices?v' #2. Let’s index a simple customer document into the customer index, "external" type, with an ID of 1
➜ ~ curl -XPUT 'localhost:9200/customer/external/1?pretty' -d '
{
"name": "John Doe"
}' # ip:port/index name/type/id
➜ ~ curl -XGET 'localhost:9200/customer/external/1?pretty'
{
"_index" : "customer",
"_type" : "external",
"_id" : "1",
"_version" : 1,
"found" : true,
"_source" : {
"name" : "John Doe" # full json
}
} #3. delete the index that we just created
# curl -X<REST Verb> <Node>:<Port>/<Index>/<Type>/<ID>
➜ ~ curl -XGET 'localhost:9200/customer/external/1?pretty' #4. batch processing
➜ ~ curl -XPOST 'localhost:9200/customer/external/_bulk?pretty' -d '
{"index":{"_id":"1"}}
{"name": "John ss" }
{"index":{"_id":"2"}}
{"name": "Jane Doe" }
'
bank例子
#1. download json file : https://github.com/bly2k/files/blob/mas
#2. load file
➜ ~ curl -XPOST 'localhost:9200/bank/account/_bulk?pretty' --data-binary "@accounts.json"
➜ ~ curl 'localhost:9200/_cat/indices?v'
health status index pri rep docs.count docs.deleted store.size pri.store.size
yellow open bank 5 1 1000 0 442.1kb 442.1kb
yellow open .marvel-es-1-2016.06.14 1 1 4816 26 1.9mb 1.9mb
yellow open .marvel-es-data-1 1 1 4 2 12.2kb 12.2kb
yellow open .kibana 1 1 1 0 3.1kb 3.1kb
yellow open customer 5 1 2 0 6.5kb 6.5kb #3. search api
➜ ~ curl 'localhost:9200/bank/_search?q=*&pretty'
{
"took" : 89, #time in milliseconds for Elasticsearch to execute the search
"timed_out" : false, #if the search timed out or not
"_shards" : { #how many shards were searched, as well as a count of the successful/failed searched shards
"total" : 5,
"successful" : 5,
"failed" : 0
},
"hits" : { #search results
"total" : 1000, # total number of documents matching our search criteria
"max_score" : 1.0,
"hits" : [ {
"_index" : "bank",
"_type" : "account",
"_id" : "25",
"_score" : 1.0,
"_source" : {
"account_number" : 25,
"balance" : 40540,
"firstname" : "Virginia",
"lastname" : "Ayala",
"age" : 39,
"gender" : "F",
"address" : "171 Putnam Avenue",
"employer" : "Filodyne",
"email" : "virginiaayala@filodyne.com",
"city" : "Nicholson",
"state" : "PA"
}
}, { # instead of passing q=* in the URI, we POST a JSON-style query : Json Query DSL
➜ ~ curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
"query": { "match_all": {} }
}'
➜ ~ curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
"query": { "match_all": {} },
"from": 10,
"size": 10,
"sort": { "balance": { "order": "desc" } },
"_source": ["account_number", "balance"] #显示的字段
}'
#where条件
➜ ~ curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
"query": { "match": { "account_number": 20 } }
}' # and or条件查询语法
➜ ~ curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
"query": {
"bool": {
"must": [
{ "match": { "address": "mill" } },
{ "match": { "address": "lane" } }
]
}
}
}'#"bool":bool型查询 #"must":and "should":or "must_not":neither..nor #范围查询
➜ ~ curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
"query": {
"bool": {
"must": { "match_all": {} },
"filter": {
"range": {
"balance": {
"gte": 20000,
"lte": 30000
}
}
}
}
}
}' # "gte":大于 "lte":小于 #group by
#SELECT state, COUNT(*) FROM bank GROUP BY state ORDER BY COUNT(*) DESC
➜ ~ curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
"size": 0,
"aggs": {
"group_by_state": {
"terms": {
"field": "state"
}
}
}
}'
Elastic Search(一)的更多相关文章
- elastic search查询命令集合
Technorati 标签: elastic search,query,commands 基本查询:最简单的查询方式 query:{"term":{"title" ...
- elastic search 学习笔记
Elastic search在数据分析的应用中相当于一个数据库的搜索引擎. 跟MySQL类似,它有自己的查询语言,只不过不是关系型数据库,属于NoSQL. 可以根据索引从分布式服务器文件系统中快速存取 ...
- elastic search 学习 一
初步阅读了elastic search 的文档,并使用command实践操作. 大概明白其概念模型.
- 分库分表后跨分片查询与Elastic Search
携程酒店订单Elastic Search实战:http://www.lvesu.com/blog/main/cms-610.html 为什么分库分表后不建议跨分片查询:https://www.jian ...
- 自学elastic search
工作也有一段时间了,虽然来这个公司之后学会了几门不同的语言,但想拨尖还是任重道远. 想往高级程序员甚至是架构师方向发展.他仍然是我的学习对象.我现在做着的,无非是他玩剩下的罢了. luncene之前有 ...
- Elastic Search 上市了,市值翻倍,这群人财务自由了!
国庆长假,大部分人还深浸在风花雪月之中,而就在昨天(美国时间10月5号),我们 Java 程序员所熟知的大名鼎鼎的 Elastic Search 居然在美国纽约证券交易所上市了! 当说到搜索时,大部分 ...
- Elastic Search 安装和配置
目标 部署一个单节点的ElasticSearch集群 依赖 java环境 $java -version java version "1.8.0_161" Java(TM) SE R ...
- [elastic search][redis] 初试 ElasticSearch / redis
现有项目组,工作需要. http://www.cnblogs.com/xing901022/p/4704319.html Elastic Search权威指南(中文版) https://es.xiao ...
- elastic search文档详解
在elastic search中文档(document)类似于关系型数据库里的记录(record),类型(type)类似于表(table),索引(index)类似于库(database). 文档一定有 ...
- elastic search 查询
eelastic search主要有两种查询方式,一种是查询字符串,一种是请求体(json格式)查询. 查询字符串: 查询字符串的功能相对简单,使用容易. 比如GET http://localhost ...
随机推荐
- Qt 串口学习2
未命名 (2) 1 新建串口 //new serial portmy_serialport= new QSerialPort(); 2给串口设定名字 my_serialport->setPort ...
- scala言语基础学习十一
隐式转换 使用隐式转换加强现有的类型的功能-类似于设计模式的装饰模式
- scala言语基础学习六
trait的学习 1.将trait作为接口来使用 trait中可以实现一些方法,子类只要extends 了trait就可以直接使用父trait里面的方法 普通继承的话父类和子类之间的field是通过引 ...
- I’m stuck!(BFS)
I’m stuck! 给定一个R行C列的地图,地图的每一个方格可能是'#', '+', '-', '|', '.', 'S', 'T'七个字符中的一个,分别表示如下意思: '#': 任何时候玩家都不能 ...
- List of devices attached ???????????? no permissions
如果显示如下:List of devices attached???????????? no permissions就要设置usb $ lsusbBus 005 Device 001: ID 1d6b ...
- MySQL 常用show命令
MySQL中有很多的基本命令,show命令也是其中之一,在很多使用者中对show命令的使用还容易产生混淆,本文汇集了show命令的众多用法. 1 2 3 4 5 6 7 8 9 10 11 12 13 ...
- Unity3D研究院编辑器之脚本设置ToolBar
Unity版本5.3.2 如下图所示,ToolBar就是Unity顶部的那一横条.这里的所有按钮一般情况下都得我们手动的用鼠标去点击.这篇文章我们说说如果自动操作它们 1.自动点击左边四个按钮 (拖动 ...
- linux下恢复误删除的文件方法(ext2及ext3)
linux下恢复误删除的文件方法(ext2及ext3) 2009-12-19 15:23:47 分类: LINUX 如果是ext2文件系统的,直接用debugfs是可以恢复出来的,但对于ext3,d ...
- python三种数据库连接池方式
psycopg2.pool – Connections pooling Creating new PostgreSQL connections can be an expensive operatio ...
- C#实现通过模板自动创建Word文档的方法
原文地址:http://www.jb51.net/article/55332.htm 本文实例讲述了C#实现通过模板自动创建Word文档的方法,是非常实用的技巧.分享给大家供大家参考.具体实现方法 ...