全文搜索引擎 Elasticsearch 入门教程

本文是关于全文搜索引擎 Elasticsearch 的入门教程,介绍了全文搜索的概念、Elasticsearch 的安装、基本概念、操作以及中文分词。Elasticsearch 是一个基于 Lucene 的分布式搜索引擎,支持多租户,并具有 HTTP web 界面和 JSON 文档。文中详细讲解了如何创建和删除 Index,以及如何进行数据操作,包括记录的新增、查询和更新。
摘要由CSDN通过智能技术生成

全文搜索是什么

全文搜索引擎就是通过从互联网上提取的各个网站的信息(以网页文字为主)而建立的数据库中,检索与用户查询条件匹配的相关记录,然后按一定的排列顺序将结果返回给用户。

ES是一个基于 Lucene 库的搜索引擎。它提供了一个分布式的、支持多租户的全文搜索引擎,该引擎具有 HTTP web 界面和无模式的 JSON 文档。是用 Java 开发的。遵循开放核心业务模式,部分软件根据各种开放源码许可证(主要是 Apache 许可证)进行许可,而其他部分则根据专有(源码可用)弹性许可证进行许可。官方客户端可以在 Java,。NET (c #)、 PHP、 Python、 Apache Groovy、 Ruby 和许多其他语言。据 DB-Engines 排名,Elasticsearch 是最受欢迎的企业搜索引擎,其次是 Apache Solr,也是基于 Lucene 的.


安装

服务端,以macOS为例brew install elasticsearch

安装好了直接运行 curl localhost:9200

上面代码中,请求9200端口,Elastic 返回一个 JSON 对象,包含当前节点、集群、版本等信息。

默认情况下,Elastic 只允许本机访问,如果需要远程访问,可以修改 Elastic 安装目录的config/elasticsearch.yml文件,去掉network.host的注释,将它的值改成0.0.0.0,然后重新启动 Elastic。

客户端,以python为例

python -m pip install elasticsearch

基本概念

Elastic 本质上是一个分布式数据库,允许多台服务器协同工作,每台服务器可以运行多个 Elastic 实例。

单个 Elastic 实例称为一个节点(node)。一组节点构成一个集群(cluster)。

Elastic 会索引所有字段,经过处理后写入一个反向索引(Inverted Index)。查找数据的时候,直接查找该索引。

所以,Elastic 数据管理的顶层单位就叫做 Index(``索引)。它是单个数据库的同义词。每个 Index (即数据库)的名字必须是小写。

Index 里面单条的记录称为 Document(文档)。许多条 Document 构成了一个 Index。

Document 可以分组,比如weather这个 Index 里面,可以按城市分组(北京和上海),也可以按气候分组(晴天和雨天)。这种分组就叫做 Type,它是虚拟的逻辑分组,用来过滤 Document。

http://localhost:9200/_mapping?pretty=true 这个命令可以列出每个 Index 所包含的 Type。</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值