ElasticSearch系列学习

ElasticSearch第一步-环境配置

ElasticSearch第二步-CRUD之Sense

ElasticSearch第三步-中文分词

ElasticSearch第四步-查询详解

ElasticSearch第五步-.net平台下c#操作ElasticSearch详解

安装完成之后,我们该开始学习关于ElasticSearch最基本的CURD操作了。

ElasticSearch作为一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,其接口也是RESTful 风格。文档储存类型也是json格式。那么我们就可以像操作webapi一样简单的操作ElasticSearch进行CRUD了。

在Linux服务器上我们可以通过curl命令操作。但是作为window用户,我们大都不太熟悉curl命令。下面我将介绍一款基于chrome的插件Sense。通过Sense扩展插件我们可以很方便的操作ElasticSearch。

安装Sense如图:

CRUD

URL的格式:

http://localhost:9200/<index>/<type>/[<id>]

其中index、type是必须提供的。

id是一条数据(文档)的唯一标识,如果重复 则覆盖已经存在的。

index、type将信息进行分层,利于管理。index可以理解为数据库,type理解为数据表。

添加

 

PUT /db_news/news/1
{
"title":"第一条新闻",
"author":"王军华",
"content":"根据中的的最新调查显示"
}
PUT /db_news/person/5
{
"name":"jack",
"age":53,
"intro":"jack但是的是个乖孩子"
}

Sense操作如图:(PUT需要顶个写,json字段名称需要加引号)

修改/覆盖

修改就是将id置为和存在的记录一致。

删除

DELETE /db_news/news/1

如图:

查询

查询所有库,所有表的文档

GET /_search
{
"query": {
"match_all": {}
}
}

查询指定库指定表的一条文档

GET /db_news/person/2

如图:

在所有库所有表中查找某个字段等于某个值的文档

POST /_search
{
"query": {
"query_string": {
"query": "jack"
}
}
}

在指定库指定表中查找某个字段等于某个值的文档

POST /db_news/person/_search
{
"query": {
"query_string": {
"query": "jack"
}
}
}

在指定库指定表中查找指定个字段等于某个值的文档

POST /db_news/person/_search
{
"query": {
"query_string": {
"fields": ["age"],
"query": 13
}
}
}

多条件并列条件查询

POST /db_news/person/_search
{
"query": {
"filtered": {
"filter": {
"term": {
"age": 13,
"name":"tom" }
} }
}
}

详细CRUD命令请参考官方:

http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/index.html

部分内容摘抄自:

http://joelabrahamsson.com/elasticsearch-101/

ElasticSearch系列学习

ElasticSearch第一步-环境配置

ElasticSearch第二步-CRUD之Sense

ElasticSearch第三步-中文分词

ElasticSearch第四步-查询详解

ElasticSearch第五步-.net平台下c#操作ElasticSearch详解

ElasticSearch第二步-CRUD之Sense的更多相关文章

  1. Elasticsearch的CRUD:REST与Java API

    CRUD(Create, Retrieve, Update, Delete)是数据库系统的四种基本操作,分别表示创建.查询.更改.删除,俗称"增删改查".Elasticsearch ...

  2. elasticSearch安装 Kibana安装 Sense安装

    安装最新版本,安装6.*版本 先提示一个重要的事情,kibana新版本不需要安装Sense, 官方的是老版的Kibana才需要,我们现在用devTool http://localhost:5601/a ...

  3. Elasticsearch入门CRUD(新增、查询、修改、删除)

    1. 项目中引用 Elasticsearch.NET         Elasticsearch 其他版本可在: http://www.nuget.org/  找到对应的项目以源码 ! 本文以 2.4 ...

  4. java整合Elasticsearch,实现crud以及高级查询的分页,范围,排序功能,泰文分词器的使用,分组,最大,最小,平均值,以及自动补全功能

    //为index创建mapping,index相当于mysql的数据库,数据库里的表也要给各个字段创建类型,所以index也要给字段事先设置好类型: 使用postMan或者其他工具创建:(此处我使用p ...

  5. python实现elasticsearch操作-CRUD API

    python操作elasticsearch常用API 目录 目录 python操作elasticsearch常用API1.基础2.常见增删改操作创建更新删除3.查询操作查询拓展类实现es的CRUD操作 ...

  6. Python对elasticsearch的CRUD

    一.官网提供的Elasticsearch的Python接口包 1.github地址:https://github.com/elastic/elasticsearch-dsl-py 2.安装:pip i ...

  7. ElasticSearch第四步-查询详解

    ElasticSearch系列学习 ElasticSearch第一步-环境配置 ElasticSearch第二步-CRUD之Sense ElasticSearch第三步-中文分词 ElasticSea ...

  8. ElasticSearch第三步-中文分词

      ElasticSearch系列学习 ElasticSearch第一步-环境配置 ElasticSearch第二步-CRUD之Sense ElasticSearch第三步-中文分词 ElasticS ...

  9. ElasticSearch第一步-环境配置

    ElasticSearch第一步-环境配置 ElasticSearch第二步-CRUD之Sense ElasticSearch第三步-中文分词 ElasticSearch第四步-查询详解 Elasti ...

随机推荐

  1. ASP.NET Core 中文文档 第二章 指南(4.8)添加新的字段

    原文 Adding a New Field 作者 Rick Anderson 翻译 谢炀(Kiler) 校对 许登洋(Seay).高嵩(Jack) 在这个章节你将使用 Entity Framework ...

  2. “NOSQL” 杂谈

    引言: nosql 的兴起和革命,在我看来已经开始逐渐影响到了传统的sql的地位,但是仅仅是影响而已,取代是不太可能的. 正文: 两年前,一个偶然的机会开始接触到 nosql ( mongodb ). ...

  3. SSH(Struts2+Spring+Hibernate)框架搭建流程

    添加支持 我先介绍的是MyEclipse9的自带框架支持搭建过程:(完全的步骤 傻瓜式的学习..~) 首先我们来搭建一个Web项目: 一.Hibernate(数据层)的搭建: 相关描述 Ⅰ.服务器与数 ...

  4. C# 读取app.config配置文件 节点键值,提示 "配置系统未能初始化" 错误的解决方案

    新建C#项目,在app.config中添加了appSettings项,运行时出现"配置系统未能初始化"的错误,MSDN里写到,如果配置文件中包含 configSections 元素 ...

  5. jQuery+CSS3文字跑马灯特效

    jQuery+CSS3文字跑马灯特效是一款将跑马灯背景制作为3D立方体效果,文字在上面移动时,就像是文字投影到墙壁上,在转角出会改变运动方向. 效果展示 http://hovertree.com/te ...

  6. iOS-多线程介绍

    一.前言部分 最近在面试,重新温习了一遍多线程,希望加深一遍对于多线程的理解. 1.什么是进程? 1).要了解线程我们必须先了解进程,通俗来讲进程就是在系统中运行的一个应用程序. 2).每个线程之间是 ...

  7. java类的初始化顺序

    在java中,当我们new一个对象时,对象中的成员,初始化块以及构造方法的加载是有一定的顺序的,看下面一副图: 一.单类(无基类)下的初始化顺序: public class Parent { stat ...

  8. 浅谈为之奋斗过的Set接口

    Set接口 Set接口存储一组唯一,无序的对象 HashSet 是Set接口常用的实现类 HashSet允许集合元素值为null 操作数据的方法与List类似 Set接口不存在get()方法 set ...

  9. ES6(let 和 const)

    一项新技术的出现肯定是为了解决一些问题,那么ES6的出现主要是解决了哪些问题?它的出现给我们带来了什么便利?当它没有出现的时候,某些问题怎么处理?ES6的方法和以前的方法比较又有什么不同呢?根据提出的 ...

  10. jquery手风琴

    --js $(document).ready(function(){ //Set default open/close settings$('.acc_container').hide(); //Hi ...