news 2026/6/15 13:50:15

Python Elasticsearch 客户端使用详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python Elasticsearch 客户端使用详解

Elasticsearch 是一个广泛使用的分布式搜索和分析引擎,而elasticsearch是其官方提供的 Python 客户端库。通过该库,开发者可以方便地与 Elasticsearch 集群进行交互,完成从集群状态监控到复杂查询的各类操作。本文将系统性地介绍如何使用 Python 操作 Elasticsearch,内容涵盖集群管理索引控制以及文档的增删改查高级查询功能。

一、安装与连接

首先,通过 pip 安装官方客户端:

pipinstallelasticsearch==8.14.0

在代码中初始化客户端:

fromelasticsearchimportElasticsearch,NotFoundError es=Elasticsearch('http://localhost:9200',basic_auth=("elastic","123456"),retry_on_timeout=True,max_retries=3)

二、集群操作

获取集群健康状态

集群健康状态反映当前数据分片的分配情况,是运维监控的重要指标:

health=es.cluster.health()print("集群状态:",health['status'])print("节点数量:",health['number_of_nodes'])print("未分配分片数:",health['unassigned_shards'])
集群状态: green 节点数量: 1 未分配分片数: 0

获取集群基本信息

info=es.info()print("Elasticsearch 版本:",info['version']['number'])print("集群名称:",info['cluster_name'])
Elasticsearch 版本: 8.14.0 集群名称: docker-cluster

三、索引操作

索引(Index)是 Elasticsearch 中存储文档的逻辑容器,类似于关系型数据库中的“表”。

判断索引是否存在

exists=es.indices.exists(index='my_index')print("索引存在?",exists)
索引存在? False

创建索引

创建索引时可指定分片数、副本数及字段映射(mapping):

mapping={"settings":{"number_of_shards":1,"number_of_replicas":0},"mappings":{"properties":{"title":{"type":"text"},"category":{"type":"keyword"},"price":{"type":"float"},"created_at":{"type":"date"}}}}es.indices.create(index='my_index',body=mapping)

删除索引

es.indices.delete(index='my_index')

四、文档操作

文档(Document)是 Elasticsearch 中的基本数据单元,以 JSON 格式存储。

创建文档

doc={"title":"Python 与 Elasticsearch","category":"dev",<
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 12:56:07

进程间通信IPC(3)system V标准下基于责任链模式的消息队列,基于建造者模式的信号量

本章目标 1,基于责任链模式的消息队列 2.基于建造者模式的信号量 1,基于责任链模式的消息队列 1.消息队列实现原理 消息队列同样是属于system V标准下的一致进程间通信,但是于共享内存不同的的是,它并不是一整块的内存块,在内存当中是通过一个队列进行维护一些特定大小的数…

作者头像 李华
网站建设 2026/6/13 18:40:56

学术写作效率革命!2026 高精准度 AI 论文写作工具推荐指南

2026年AI论文写作工具已进入全流程闭环学术合规时代&#xff0c;PaperRed&#xff08;综合评分99分&#xff09;与毕业之家&#xff08;综合评分87分&#xff09;为中文学术场景双标杆&#xff1b;Grammarly Academic与Elicit为英文论文写作首选&#xff1b;按需求匹配度-数据可…

作者头像 李华
网站建设 2026/6/15 12:53:21

三线城市开发者的太空机遇:地域红利解析

2026年开年以来&#xff0c;商业航天领域持续升温&#xff0c;低轨轨道资源争夺进入白热化阶段&#xff0c;全球申报卫星总量已远超近地轨道17.5万颗的容量上限。在这一浪潮中&#xff0c;三线城市开发者凭借独特优势脱颖而出。地域红利源于三大核心因素&#xff1a; 政策与成本…

作者头像 李华
网站建设 2026/6/15 11:54:40

windows电脑部署OpenClaw

windows电脑部署OpenClaw什么是OpenClawOpenClaw是一个运行在本地电脑的开源 AI 智能体。核心优势&#xff1a;特性说明接入聊天工具出门在外用手机给它留言&#xff0c;它就能自动干活&#xff0c;还能实时同步截图和执行过程定时任务系统用自然语言创建定时任务&#xff0c;如…

作者头像 李华
网站建设 2026/6/14 17:19:54

软工毕业设计最新项目选题帮助

文章目录 &#x1f6a9; 1 前言1.1 选题注意事项1.1.1 难度怎么把控&#xff1f;1.1.2 题目名称怎么取&#xff1f; 1.2 选题推荐1.2.1 起因1.2.2 核心- 如何避坑(重中之重)1.2.3 怎么办呢&#xff1f; &#x1f6a9;2 选题概览&#x1f6a9; 3 项目概览题目1 : 图像隐写算法研…

作者头像 李华
网站建设 2026/6/9 20:54:46

核心技术突破:高功率密度线圈赋能智能装备高效运行

高功率密度线圈是指在有限体积和重量条件下&#xff0c;实现更高电磁能量转换效率的线圈产品&#xff0c;是当前高端装备、小型化系统和智能机器人的关键基础部件之一。随着设备集成度不断提升&#xff0c;对线圈性能的要求已从“能用”升级为“高效、稳定、紧凑”。在电机驱动…

作者头像 李华