Elasticsearch入门学习(二):简单的入门学习

一、ES一些概念

索引

_inde,文档存储的地方,类似于关系型数据中的数据库。

事实上,数据被存储和索引在分片中,索引仅仅是一个把一个或者多个分片分组在一起的逻辑空间。 索引名字必须是全部小写,不允许以下划线开头,不能包含逗号。

文档

文档id是一个字符串,与_index组合时,就可以在ElasticSearch中唯一标识一个文档。创建文档时,可以自定义_id,也可以让ES帮助自动生成。

二、使用postman入门学习

  • 创建索引

    创建索引库的格式为:使用put请求:ip:9200/{index}

在ES7之前红框里面是可以指定type的,现在是不需要的可以使用默认的_doc为type,看到有的文档上面说type会在8.x里面彻底移除。

{
     "settings":{
        "number_of_shards":3,
        "number_of_replicas":1
    },
	"mappings": {

		"properties": {
			"id": {
				"type": "long",
				"store":true
			},
			"title": {
				"type": "text",
				"store":true,
				"index":true,
				"analyzer": "standard"
			},
			"content": {
				"type": "text",
				"store":true,
				"index":true,
				"analyzer": "standard"
			}
		}

}
}

number_of_shards是用来设置分片数量的,number_of_replicas是用来设置副本数量的。在properties里面增加自己的字段,并且指定属性的类型

  • 删除索引

    格式:DELETE IP:9200/{index}

  • 创建文档和修改文档

    插入文档格式:PUT(POST) IP:9200/{index}/_doc/id 指定文档ID

    POST IP:9200/{index}/_doc 随机ID

  • 修改文档

    格式: POST IP:9200/{index}/_doc/文档ID

    其实和新增差不多,是先删除原有的在新增。

  • 删除文档

    格式:DELETE IP:9200/{index}/_doc/文档ID

  • 文档查询

    格式:GET IP:9200/{index}/_doc/文档ID

    格式:POSTIP:9200/{index}/_doc/_search

三、分词器

  • 标准分词器

可以看到标准的分词器对中文处理的并不是很好

  • IK分词器

    1.下载地址https://github.com/medcl/elasticsearch-analysis-ik/releases

    2.在/plugins下面创建一个文件夹名为ik,然后将下载好的分词器通过ftp传入ik文件夹下面,并解压

    3.重启ES

    IK分词器有两种算法,ik_smart(粗粒度的拆分)和ik_max_word(细粒度的拆分)

自定义词库

需要在IKAnalyzer.cfg.xml里面配置扩展的词典就OK了

不过词典的文件格式格式为utf-8(不要选择utf-8 BOM)

原文地址:https://www.cnblogs.com/yangk1996/p/12657687.html

时间: 2024-10-08 23:30:43

Elasticsearch入门学习(二):简单的入门学习的相关文章

设计模式学习(二)-简单工厂模式

---恢复内容开始--- 简单工厂设计模式 简单工厂模式定义: 简单工厂设计模式又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式.在简单工厂模式中,可以根据参数的不同返回不同类的实例.简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类. 简单工厂主要分为如下几个角色 抽象产品(abstract product):为所有具体产品的抽象表现,一般为抽象类 具体产品(product):为抽象产品的具体实现 生成产品工厂(facto

dubbo学习(1)--简单的入门搭建实例

转载请注明源文出处:http://www.cnblogs.com/lighten/p/6828026.html 1 简介 dubbo是一个分布式服务框架,由阿里巴巴的工程师开发,致力于提供高性能和透明化的RPC远程服务调用.可惜的是该项目在2012年之后就没有再更新了,之后由当当基于dubbo开发了dubbox.这里对dubbo的入门构建进行简单的介绍.不涉及dubbo的运行机制,只是搭建过程,方便学习者快速构建项目,运行.熟悉该框架. dubbo提供了两种构建项目的方法.1.通过Spring容

Redis学习二:Redis入门介绍

一.入门概述 1.是什么 Redis:REmote DIctionary Server(远程字典服务器) 是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为数据结构服务器. Redis 与其他 key - value 缓存产品(memcached)有以下三个特点: 1)持久化:Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再

MySQL快速入门(二)——Java进阶学习第十六天

文档版本 开发工具 测试平台 工程名字 日期 作者 备注 V1.0 2016.05.10 lutianfei none SQL多表操作 外键约束 作用:保证数据的完整性. 定义外键约束 可以直接在create语句中定义外键 foreign key 当前表名 (字段名) references 目标表名 (目标表的主键) 创建完语句后,可以直接使用修改语句定义 alter table 表名 add foreign key 当前表名 (字段名) references 目标表名 (目标表的主键); 作用

java web 学习二(Tomcat服务器学习和使用1)

一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件. 如果想修改Tomcat服务器的启动端口,则可以在server.xml配置文件中的Connector节点进行的端口修改 例如:将Tomcat服务器的启动端口由默认的8080改成8081端口 Tomcat服务器启动端口默认配置 1 <Connector port="8080" protocol="HTTP/1.1" 2 connect

excel的宏与VBA入门(二)——基础入门

一.属性与方法 1.属性 上面单击对象,下面即显示对应的属性: 2.方法 双击左上的对象,即可看到相应的方法: 二.数据类型 Byte 0 到 255 Boolean True 或 False Integer -32,768 到 32,767 Long(长整型)-2,147,483,648 到 2,147,483,647 Single (单精度浮点型) Double (双精度浮点型) Currency Decimal Date 100 年 1 月 1 日 到 9999 年 12 月 31 日 O

RPC学习----Thrift快速入门和Java简单示例

一.什么是RPC? RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议. RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据.在OSI网络通信模型中,RPC跨越了传输层和应用层.RPC使得开发包括网络分布式多程序在内的应用程序更加容易. 二.什么是Thrift? thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发.它结合了功能强大的软件堆栈和

MongoDB入门学习(二):MongoDB的基本概念和数据类型

上一篇讲了MongoDB的安装和管理,其中涉及到了一些概念,数据结构还有一些API的调用,不知道的没关系,其实很简单,这篇会简单介绍一下. 1.文档 文档是MongoDB的核心概念,多个键值对有序的放在一起就是一个文档,文档是MongoDB存储数据最基本的数据结构.对MongoDB都是以文档的形式来操作的,使用了一种类似JSON的二进制BSON数据格式,对API的调用都是传的文档参数.每种编程语言都有标示文档的数据结构,比如java的map,lua的table,python的dict等等,但是都

SpringMVC入门学习(二)

SpringMVC入门学习(二) ssm框架 springMVC 在上一篇博客中,我简单介绍了一下SpringMVC的环境配置,和简单的使用,今天我们将进一步的学习下Springmvc的操作. model.addAttribute()的使用 model接口的源代码: 由图可知,在addAttribute()中有两种入参方式,一种是指明名字var1,一种是不指明名字var1.在不指明名字中,会通过相近的去寻找. 在addAttribute()中,我们可以放任何对象: 首先先导入jsp标签maven

Android中关于JNI 的学习(零)简单的例子,简单地入门

Android中JNI的作用,就是让Java能够去调用由C/C++实现的代码,为了实现这个功能,需要用到Anrdoid提供的NDK工具包,在这里不讲如何配置了,好麻烦,配置了好久... 本质上,Java去调用C/C++的代码其实就是去调用C/C++提供的方法,所以,第一步,我们要创建一个类,并且定义一个Native方法,如下: JniTest类: public class JniTest { public native String getTestString(); } 可以看到,在这个方法的前