Elasticsearch对文档的查询操作

五、elasticsearch查询操作 elasticsearch更多查询操作 阅读详情

查询文档中个字段的含义:

“-index”:  表示在那个索引(相当于数据库中位于那个库)

“-type”:   表示是那个类型(相当于数据库中位于哪个表)

“-id”:  记录的ID

“-version”: 版本号

“-seq_no”: 并发控制字段,每次更新就会加一,用来做乐观锁

“-primary_term”:  同上。主分片重新分配,如重启就会变化

“-found”:  表示是否找到数据查询文档中个字段的含义

“-source”:真正查找的内容

更新文档:

POST更新会对比原来的数据,如果一样版本号就不会发生变化,seq_no也不变

Put和不带_update的POST都会直接更新

Put和不带_update的POST也是可以的

删除文档&索引

批量操作:必须是POST请求

测试:

批量操作每条记录都是独立统计,上一条记录的失败不会影响下一条记录的进行

测试数据:

两种查询数据方式:

示例:

match既可以做精确查询(查询字段非字符串)也可以做模糊匹配

分词匹配:全文检索按照评分进行排序,会对检索条件进行分词匹配,能按照评分排序是得益于倒排索引。

短语匹配:

多字段匹配:进行分词匹配

复合查询:

must:必须符合某个条件

must_not:必须不是XXX

should:满足条件最好得分就会更高,不满足也没有关系

结果过滤:

示例:

过滤和匹配的区别就是是否对相关性得分有贡献。

term:全文检索的字段(地址等)不推荐使用,精确的字段可以使用(年龄等)

keyword是精确匹配,match_phrase是模糊匹配

 

 

 

 

 

 

Elasticsearch Demo 读取word内容写入到Es上并展示在WebFrom页面上 Elasticsearch Demo 读取word内容写入到Es上并展示在WebFrom页面上,简单查询根据关键字检索 并高亮显示。 立即下载

相关推荐

AMD锐龙笔记本隐藏玩法:分核降压+ PBO2超频全攻略(以5900HX/6900HX为例)

本文详细解析了AMD锐龙笔记本(以5900HX/6900HX为例)的分核降压与PBO2超频技术,帮助用户释放处理器隐藏性能。通过BIOS设置、Curve Optimizer参数调整及稳定性测试,实现性能提升与温度控制的完美平衡,适合硬件爱好者进阶调校。

weixin_30617737的博客 343

elasticsearch教程2之文档查询

文章目录文档查询聚合查询countavg映射Java开发ESdependenciesexample创建索引查询索引删除索引插入数据修改数据查询删除数据批量增加&删除 文档查询 GET http://127.0.0.1:9200/shopping/_search?q=category:小米 放在query参数中 GET http://127.0.0.1:9200/shopping/_search 放在请求体中 { "query":{ "match":{ "category":"

剑雨巍巍的博客 452

[原创]Step by step 实现自己的AI知识库问答(二)

对小白很友好的AI智能问答开发保姆级教程,适合初级开发者、学生阅读参考,无限制分享,欢迎转载。在这个章节中,我们使用了百度千帆作为知识库,通过简单的代码调用API实现了智能问答。

BaiRiYiSanJin的博客 1471

Elasticsearch7.8.0版本入门—— 指定查询字段查询文档(高级查询)

Elasticsearch7.8.0版本入门—— 指定查询字段查询文档(高级查询)

小志的博客 2128

图像超分辨率在医学影像中的应用:如何用深度学习提升CT/MRI图像质量

本文探讨了深度学习驱动的图像超分辨率技术在医学影像(如CT/MRI)质量提升中的应用。文章分析了医学图像超分辨率在提升诊断信息含量、平衡保真度与临床相关性方面的独特挑战,并详细介绍了如何针对3D体数据特点定制模型架构、设计病理感知损失函数,以及解决高质量配对数据稀缺的策略。通过实战案例,阐述了从数据模拟、模型训练到临床评估的完整流程,旨在为医学影像的清晰化与诊断精准化提供有效解决方案。

weixin_29063681的博客 523

保姆级教程:用GlobleLand30数据+GTB3.3软件,一步步搞定MSPA景观格局分析

本文提供GlobleLand30数据结合GTB3.3软件进行MSPA景观格局分析的保姆级教程,涵盖数据预处理、软件操作、结果解读全流程,特别针对零基础用户常见问题提供解决方案,助力研究者高效完成景观生态学分析。

weixin_26757925的博客 450

ElasticSearch 实现 全文检索 支持(PDF、TXT、Word、HTML等文件)通过 ingest-attachment 插件实现 文档的检索

Attachment 插件是 Elasticsearch 中的一种插件,允许将各种二进制文件(如PDF、Word文档等)以及它们的内容索引到 Elasticsearch 中。插件使用 Apache Tika 库来解析和提取二进制文件的内容。通过使用 Attachment 插件,可以轻松地在 Elasticsearch 中建立全文搜索功能,而无需事先转换二进制文件为文本。

解决bug的路上 1万+

从IPv6到Tomcat:彻底解决127.0.0.1拒绝连接的完整指南

本文提供了从IPv6到Tomcat的全面指南,帮助开发者彻底解决127.0.0.1拒绝连接的问题。涵盖网络协议栈、服务配置、端口管理等多个层面的排查方法,特别针对Tomcat服务提供了专项解决方案,确保开发者能够快速定位并修复连接问题。

weixin_29207439的博客 471

ElasticSearch-文档查询

ElasticSearch-文档查询,查询某个索引下的全部文档,根据查询条件查询文档,分页查询,查询指定返回的字段,排序,多条件查询,范围查询,全文检索与完全匹

qq_28227405的博客 4929

STM32CubeIDE入坑指南

一 前言 在科技日新月异的今天,作为从事效率为先的苦逼 IT 行业,秉承着我不入地狱谁入地狱的伟大革命精神,我决定再一次做第一个吃螃蟹的人,通过自身的入坑过程,为大家测试STM32CubeIDE这款新式工具。(其实是为了我能省点时间,快点做完项目,多挣点钱买几瓶肾气丸) 二 看一看别人是如何入坑的 二 手把手带你入坑 三 相关资料 ...

CH的博客 1万+

Docker新手必看:解决‘Unable to find image’错误的完整指南

本文针对Docker新手常见的‘Unable to find image’错误,提供了完整的排查与解决指南。文章深入剖析了权限不足、网络连接失败、Docker服务未运行等核心原因,并给出了将用户加入docker组、配置镜像加速器等实用解决方案,帮助读者彻底理解并解决镜像拉取问题。

weixin_29230901的博客 243

【ElasticSearch】es索引、映射、文档基本操作&复杂查询

各位小伙伴们大家好,欢迎来到这个小扎扎的,本篇博客由B战尚硅谷的ElasticSearch视频总结而来,鉴于精神,这波依然是血赚┗|`O′|┛

扎哇太枣糕的笔记博客 5639

OpenClaw用户必看:每天0成本使用OpenClaw!NVIDIA NIM免费大模型接入教程

🚀 OpenClaw接入NVIDIA NIM免费API!glm5、minimax-m2.5等大量模型任选,0成本升级AI助手!💰

XiaoqiangClub的博客 5578

es内嵌文档查询_Elasticsearch之文档操作

Elasticsearch之文档操作这是es系列的第五篇文章了,阅读前四篇有助于小伙伴们理解本篇文章。回顾前面的四篇文章我们讨论了什么是es,是用来干什么的,如何进行安装,怎么样建立索引库,如何给索引库添加mapping映射。本篇我们开始讨论如何添加文档,如何修改文档以及如何删除文档。文档什么是es文档,其实mapping就是es的数据字段约束,我们定义好一个索引,并且定义了一个mapping映射...

weixin_29529047的博客 711

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

原生语言操作和spring data中RestHighLevelClient操作Elasticsearch,索引,文档的基本操作,es的高级查询.查询结果处理. 数据聚合.相关性系数打分

​ Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸缩性,能使数据在生产环境变得更有价值。Elasticsearch 的实现原理主要分为以下几个步骤,首先用户将数据提交到Elasticsearch 数据库中,再通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据,当用户搜索数据时候,再根据权重将结果排名,打分,再将返回结果呈现给用户。​ RestHighLevelClient

qq_62357662的博客 5222

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

【ES】[教程]----第二章:Elasticsearch 用 postman操作(索引、文档、映射、高级查询)

本文介绍了Elasticsearch的基本操作规范和数据格式。Elasticsearch遵循RESTful规范,采用JSON格式存储文档数据。文章通过与关系型数据库MySQL的类比,解释了ES中Index、Type和Document的概念(注意Type在7.X版本已被移除)。详细说明了索引的创建、查看和删除操作,以及文档的创建方法,包括自动生成ID和指定ID两种方式。操作示例展示了请求方法、路径和响应结果,并强调了POST和PUT方法的区别。文中还包含了索引健康状态、分片信息等重要概念的说明。

记录生活 1353

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Elastic Search Java API(文档操作API、Query DSL查询API)、es搜索引擎实战demo

elastic search实战小demo:https://github.com/simonsfan/springboot-quartz-demo,分支:feature_es 之前在 Elastic Search之Search API(Query DSL)、Elasticsearch之索引和文档API 文章中讲到过elastic search(以下简称es)的以下常用的原生api,本篇开始讲述如...

分享传递价值 3万+

RestHighLevelClient操作es查询文档

② 传入Request.source() 的 query() 方法。第三步,利用client.search()发送请求,得到响应。构建DSL,DSL中可以包含查询、分页、排序、高亮等。准备Request.source(),也就是DSL。解析结果(参考JSON结果,从外到内,逐层解析)① QueryBuilders来构建查询条件。创建SearchRequest对象。

luosuss的博客 1527

ElasticSearch学习;RestClient 操作索引库;RestClient 查询文档

docker 中安装 elasticsearch 和 kibana;安装 IK 分词器;正向索引和倒排索引;mapping常见属性有哪些?;索引操作;文档操作;RestClient 操作索引库;RestClient 操作索引;RestClient 操作文档

時間的博客 3498

Elasticsearch 文档操作:增加、删除与查询

Elasticsearch 文档操作:增加、删除与查询

一起coding,一起嗨。 822

全文检索 — ElasticSearch_02(ES编程操作:创建索引、设置mapping、添加文档、查询文档、分页操作、高亮显示)

文章目录一、ES编程操作1.1 导入依赖坐标1.2 创建索引index1.3 创建映射mapping1.4 建立添加文档document1.4.1 XContentBuilder1.4.2 使用Jackson将实体转为Json1.5 查询文档操作1.5.0 创建客户端对象client(@Before)1.5.1 id查询1.5.2 关键词查询1.5.3 字符串查询1.6 查询文档分页操作1.7 查...

文泽路小男孩的博客 688

ElasticSearch基础及常用查询

Es是一个使用java语言并且基于Lucene编写的搜索引擎框架,它提供了分布式的全文搜索功能,提供了一个统一基于RESTful风格的WEB接口。Lucene本身就是一个搜索引擎底层,ES本身就是对Lucene的封装。分布式主要是为了扩展ES的横向扩展能力。全文检索(倒排索引):将一段词语进行分词,并且将分出来的单个词语统一放到一个分词库中,在搜索时,根据关键字去分词库中检索,找到匹配的内容。

weixin_43730516的博客 795

【ES】[教程]----第三章:Elasticsearch 用 Java API操作(索引、文档、高级查询)

本文介绍了通过Java API操作Elasticsearch的基本方法。首先需要创建Maven项目并添加相关依赖,包括Elasticsearch客户端和日志组件。然后创建高级REST客户端对象连接ES服务。文章详细说明了索引操作(创建、查询、删除)和文档操作(新增、修改)的具体实现,包括请求对象构建、响应处理和结果输出。关键代码示例展示了如何使用IndexRequest、UpdateRequest等类与ES交互,完成数据增删改查功能。操作结果通过响应对象的状态属性进行验证,确保操作成功执行。

朱朱博客,分享技术 549

【ElasticSearch】ElasticSearch Java API的使用——常用索引、文档、查询操作(二)

本文总结了ElasticSearch的常用Java API,包含常用的索引、文档、查询相关操作。索引操作包含索引的增、删、查;文档操作包含文档的增、删、改、查以及批量操作;查用的查询操作包含查询所有数据、match查询、term查询、分页查询、排序查询、过滤字段、bool查询、范围查询、模糊查询、高亮查询以及聚合查询。

Cxj__的博客 1323

Elasticsearch操作--笔记

我们在创建索引库时,通过setting来配置自定义的analyzer(分词器):拼音分词器适合在创建倒排索引的时候使用,但不能在搜索的时候使用。PUT /索引库名"analyzer":{ //自定义分词器“自定义分词器的名字”:{“tokenizer”:"ik_max_word", //先分词"filter":"pinyin" //再把分好的词转成拼音。

weixin_44846205的博客 1334
上一篇: SpringMVC无法访问静态资源的解决办法
下一篇: 浪潮之巅
Alt__
博客等级 码龄7年 16粉丝 80原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值