ELK学习总结(2-2)单模式CRUD操作
------------------------------------------------------
1、查看索引信息
请求命令:
GET /library/_settings
GET /library1,library2/_settings
GET /_all/_settings
------------------------------------------------------
2、创建一个 _id 为1的文档
PUT /索引名/类型名/文档id
请求命令:
PUT /library/books/
{
“title”:“Black Horse”,
“name”:{
“first”:“shengqi”,
“last”:“liang”
},
"publish_date","1900/01/01",
"price":"35.99"
}
POST /library/books/
{
“title”:“Black Horse”,
“name”:{
“first”:“shengqi”,
“last”:“liang”
},
"publish_date","1900/01/01",
"price":"55.99"
}
------------------------------------------------------
3、查看 _id 为1的书信息
请求命令:
GET /library/books/1
GET /library/books/1?_source=title,price ## 返回title和price
响应结果:
{
"_index":"library",
"_type":"books",
"_id":"1",
"_version":"4",
"_found":"true",
"_source":{
"title":"black fly",
"name":{
"first":,"xxx",
"last":,"yyy"
}
"publish_date":"2015-12-06",
"price":"100"
}
}
------------------------------------------------------
4、更新docment
方式1,重新put同一个id的新内容
方式2,POST更新方式(_update,doc)
方式3:脚本更新 http://www.cnblogs.com/xing901022/p/5330778.html
请求命令:
POST /library/books/1/_update
{
“doc”:{
“price”:“100.99”
}
}
响应结果:
------------------------------------------------------
5、删除一个 _id=1 的文档
请求命令:
DELETE /library/books/1
响应结果:
{
“_found”:true,
"_index":"library",
"_type":"books",
"_id":"1",
"_version":"5"
}
删除一个 type和索引
请求命令:
DELETE /library/books
DELETE /library
响应结果1:
{
“acknowledge”:true
}
响应结果2:
{
“error”:"xxx",
“status”:404
}
6、追加字段定义
https://www.elastic.co/guide/en/elasticsearch/guide/current/_controlling_analysis.html
For instance, let’s add a new field to my_index:
PUT /my_index/_mapping/my_type
{
"my_type": {
"properties": {
"english_title": {
"type": "string",
"analyzer": "english"
}
}
}
}
elasticsearch 添加字段
Elasticsearch中的mapping一旦创建,就不能再修改。但是添加字段是可以的。
其实很简单,只需在原来的mapping上面直接新增加一个field,
然后重新创建一下mapping就可以了。
原mapping的定义如下:
Java代码 收藏代码
private static XContentBuilder getMapping() throws Exception{
XContentBuilder mapping = jsonBuilder()
.startObject()
.startObject("test")
.startObject("properties")
.startObject("id")
.field("type", "long")
.field("store", "yes")
.endObject()
.startObject("type")
.field("type", "string")
.field("index", "not_analyzed")
.endObject()
.startObject("catIds")
.field("type", "integer")
.endObject()
.endObject()
.endObject()
.endObject();
return mapping;
}
现在加入要增加一个field,名称叫title。新增后的代码如下:
Java代码 收藏代码
private static XContentBuilder getMapping() throws Exception{
XContentBuilder mapping = jsonBuilder()
.startObject()
.startObject("test")
.startObject("properties")
.startObject("id")
.field("type", "long")
.field("store", "yes")
.endObject()
.startObject("type")
.field("type", "string")
.field("index", "not_analyzed")
.endObject()
//新增字段
.startObject("title")
.field("type", "string")
.field("index", "analyzed")
.endObject()
.startObject("catIds")
.field("type", "integer")
.endObject()
.endObject()
.endObject()
.endObject();
return mapping;
}
然后重新putMapping即可。
还不知道如何创建mapping?请看这里。
对这类话题感兴趣?欢迎发送邮件至donlianli@126.com
ELK学习总结(2-2)单模式CRUD操作的更多相关文章
- MyBatis入门学习教程-使用MyBatis对表执行CRUD操作
上一篇MyBatis学习总结(一)--MyBatis快速入门中我们讲了如何使用Mybatis查询users表中的数据,算是对MyBatis有一个初步的入门了,今天讲解一下如何使用MyBatis对use ...
- mybatis学习(二)----对表进行CRUD操作
一.使用MyBatis对表执行CRUD操作——基于XML的实现 userMapper.xml映射文件如下: <?xml version="1.0" encoding=&quo ...
- Mybatis框架学习总结-使用Mybatis对表执行CRUD操作
使用MyBatis对表执行CRUD操作——基于XML的实现 1.创建(create)用户:在userMapper.xml文件中增加: <!-- 创建用户Create --> <ins ...
- MyBatis学习存档(4)——进行CRUD操作
使用MyBatis进行数据库的CRUD操作有2种方式:一种如之前所说的接口+xml,而另一种是通过对接口上的方法加注解(@Select @Insert @Delete @Update) 但是通常情况下 ...
- MyBatis学习01(初识MyBatis和CRUD操作实现)
1.初识MyBatis 环境说明: jdk 8 + MySQL 5.7.19 maven-3.6.1 IDEA 学习前需要掌握: JDBC MySQL Java 基础 Maven Junit 什么是M ...
- mybatis学习:mybatis的注解开发CRUD操作
Dao层: public interface IUserDao { /** * 查询所有结果 * @return */ @Select("select * from user") ...
- 【Java EE 学习 44】【Hibernate学习第一天】【Hibernate对单表的CRUD操作】
一.Hibernate简介 1.hibernate是对jdbc的二次开发 2.jdbc没有缓存机制,但是hibernate有. 3.hibernate的有点和缺点 (1)优点:有缓存,而且是二级缓存: ...
- Elasticsearch学习系列之单模式下API的增删改查操作
这里我们通过Elasticsearch的marvel插件实现单模式下API的增删改查操作 索引的初始化操作 创建索引之前可以对索引进行初始化操作,比如先指定shard数量以及replicas的数量 代 ...
- 【前端学习】sublime开启vim模式
学习目标:在sublime下开启vim模式,了解基本vim的编辑快捷键. 下载安装Sublime Text 3 :http://www.sublimetext.com/3 Vim/Vi: Vim/Vi ...
随机推荐
- 解决IAR printf函数输出中文字符乱码问题
首先看一下IAR的中文字符的坑 这会对调试造成很大的干扰,因为眼见不一定为实. 你所期望的中文打印输出都成了乱码,心在滴血.... 解决方法详细,纯属个人摸索 1.新建notepad++文件,编码方式 ...
- Java中String字符串常量池总结
最近到广州某建站互联网公司面试,当时面试官问假设有两个字符串String a="abc",String b = "abc";问输出a==b是true还是fals ...
- Golang的CSP很酷?其实.NET也可以轻松完成
说起Golang(后面统称为Go),就想到他的高并发特性,在深入一些就是 Goroutine.在大家被它优雅的语法和简洁的代码实现的高并发程序所折服时,其实C#/.NET也可以很容易的做到.今天我们来 ...
- 我的linux学习之路--(二)linux常用命令
1.date 时间管理 电脑主板有电池,所有电脑断电时间正确,rtc linux:rtc 硬件时钟 clock/hwclock 系统时钟(linux操作系统用软件模拟震荡器计算)date看到就是 命令 ...
- 微信小程序开发之--”emplate模板“的应用
第一步:定义模板 ①:新建一个template文件夹用来管理项目中所有的模板(本文案例定义文件夹名为:temp): ②.新建一个wxml文件来定义模板(本文案例定义文件夹名为:temp.wxml): ...
- 如何在MD(d)和MT(d)工程间正确分配和释放动态内存
MD(d)和MT(d) MD(d)和MT(d)是windows下VC开发的两个编译选项,表示程序的运行时库编译选项. /MT是"multithread, static version&quo ...
- 手把手的SpringBoot教程,SpringBoot创建web项目(五)
这一节,我们来演示如何在SpringBoot项目中连接数据库,并且自动创建一张表. 按照惯例,数据库我们依然使用mysql,至于什么是jpa呢? jpa是sun推出的持久化规范(java persis ...
- Maven-03: 优化依赖
已解析依赖: Maven会自动解析项目的直接依赖和传递性依赖,并且根据规则正确判断每个依赖的范围,对于一些依赖冲突,也能进行调节,以确保任何一个构件只有唯一的版本在依赖中存在.在这些工作之后,最后得到 ...
- [jdoj1090]矩阵_区间dp
矩阵 jdoj-1910 题目大意:给你连续的n个矩阵的长和宽,保证每连续的两个相邻矩阵满足相乘的条件,不能改变题目中矩阵的位置,求将这些矩阵相乘为一个矩阵的最小乘法次数. 注释:1<=n< ...
- QuietHit小Game
根据项目的要求分别建出几个类 有游戏类 玩家类 测试类 等级类 等级时间类 一以下类图: 游戏类: public class Game { private Player player; public ...