一. 安装插件

  1. 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/
  2. 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
  3. 启动es

    ./elasticsearch --cluster.name my_cluster_name --node.name my_node_name

二.快速入门

  1. 管理

    #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'
  2. 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" }
    '
  3. 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(一)的更多相关文章

  1. elastic search查询命令集合

    Technorati 标签: elastic search,query,commands 基本查询:最简单的查询方式 query:{"term":{"title" ...

  2. elastic search 学习笔记

    Elastic search在数据分析的应用中相当于一个数据库的搜索引擎. 跟MySQL类似,它有自己的查询语言,只不过不是关系型数据库,属于NoSQL. 可以根据索引从分布式服务器文件系统中快速存取 ...

  3. elastic search 学习 一

    初步阅读了elastic search 的文档,并使用command实践操作. 大概明白其概念模型.

  4. 分库分表后跨分片查询与Elastic Search

    携程酒店订单Elastic Search实战:http://www.lvesu.com/blog/main/cms-610.html 为什么分库分表后不建议跨分片查询:https://www.jian ...

  5. 自学elastic search

    工作也有一段时间了,虽然来这个公司之后学会了几门不同的语言,但想拨尖还是任重道远. 想往高级程序员甚至是架构师方向发展.他仍然是我的学习对象.我现在做着的,无非是他玩剩下的罢了. luncene之前有 ...

  6. Elastic Search 上市了,市值翻倍,这群人财务自由了!

    国庆长假,大部分人还深浸在风花雪月之中,而就在昨天(美国时间10月5号),我们 Java 程序员所熟知的大名鼎鼎的 Elastic Search 居然在美国纽约证券交易所上市了! 当说到搜索时,大部分 ...

  7. Elastic Search 安装和配置

    目标 部署一个单节点的ElasticSearch集群 依赖 java环境 $java -version java version "1.8.0_161" Java(TM) SE R ...

  8. [elastic search][redis] 初试 ElasticSearch / redis

    现有项目组,工作需要. http://www.cnblogs.com/xing901022/p/4704319.html Elastic Search权威指南(中文版) https://es.xiao ...

  9. elastic search文档详解

    在elastic search中文档(document)类似于关系型数据库里的记录(record),类型(type)类似于表(table),索引(index)类似于库(database). 文档一定有 ...

  10. elastic search 查询

    eelastic search主要有两种查询方式,一种是查询字符串,一种是请求体(json格式)查询. 查询字符串: 查询字符串的功能相对简单,使用容易. 比如GET http://localhost ...

随机推荐

  1. 浅谈C中的malloc和free

    转自http://bbs.bccn.net/thread-82212-1-1.html非常感谢作者 浅谈C中的malloc和free 在C语言的学习中,对内存管理这部分的知识掌握尤其重要!之前对C中的 ...

  2. ubuntu12.04 修复Grub2

    电脑双系统,但是把win7重装了之后,会发现grub坏了,只能进入win7. 遇到过好几次,虽然每次都成功解决问题了,但是都花费了不少时间. 所以,总结一下,基本是从网上找到的方法,有的行不通,有的可 ...

  3. FZU-2216 The Longest Straight (二分枚举)

    题目大意:给n个0~m之间的数,如果是0,那么0可以变为任意的一个1~m之间的一个数.从中选出若干个数,使构成一个连续的序列.问能构成的最长序列的长度为多少? 题目分析:枚举连续序列的起点,二分枚举二 ...

  4. IOS中打开应用实现检查更新的功能

    //检查更新页面 - (void)Renew{        NSDictionary *infoDic = [[NSBundle mainBundle]infoDictionary];        ...

  5. php 代码大全

    1.子类访问父类静态方法 <?php class A{ static function loadById(){ $class_name = get_called_class(); $model ...

  6. pdo的工作方式与查错

    pdo某些方法如prepare()会返回PDOStatement对象; 然后需要通过返回的PDOStatement对象的方法操作 当查错通过$pdo->errInfo()方法可能查不出错误信息 ...

  7. 套接字I/O模型-WSAAsyncSelect

    利用这个异步I/O模型,应用程序可在一个套接字上接收以Windows消息为基础的网络事件通知.WSAAsyncSelect和WSAEventSelect提供读写数据能力的异步通知,但它们不提供异步数据 ...

  8. why does txid_current() assign new transaction-id?

    Naoya: Hi,hackers! I have a question about txid_current(). it is "Why does txid_current() assig ...

  9. MongoDB 入门与实例

    一.准备工作 1. 下载mongoDB 下载地址:http://www.mongodb.org/downloads 选择合适你的版本 相关文档:http://www.mongodb.org/displ ...

  10. 记一次系统稳定性问题的分析处理过程(因CallContext使用不当而造成bug)

    问题描述: 一个项目现场反馈,“差旅费类型的单据审批,在出现业务规则没满足的情况时(即业务报错,需要人机交互),审批仍然通过了”.从技术的角度上说,就是业务构件中的业务规则报错后,事务没有回滚.但是, ...