elasticsearch全文搜索功能示例

本文介绍了如何基于Docker安装Elasticsearch,通过创建索引和验证默认分词器效果展示了全文搜索的基础操作。当发现默认分词器不适用于中文时,安装了IK分词插件并验证了分词效果。最后,通过创建索引、插入数据及内容搜索DEMO,演示了全文搜索的实战应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基于 docker 安装 es

起动 docker 镜像

我使用的版本是 ES 7.4.2
官方文档地址

下载镜像

docker pull docker.elastic.co/elasticsearch/elasticsearch:7.4.2

运行一个单节点的 ES

docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" -d docker.elastic.co/elasticsearch/elasticsearch:7.4.2
  1. -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" 是因为我的服务器内存不足,所以限制下内存使用
  2. -p 9200:9200 对外暴露 ES 的 HTTP 接口
  3. -p 9300:9300对外暴露 ES 的 TCP 接口
创建索引示例

通过 HTTP 接口创建一个索引来验证下 ES 正常运行
在这里插入图片描述
通过 HTTP 接口请求,创建了一个名为 cctv 的索引

  1. 通过 PUT /index 方式创建索引

全文搜索

验证默认分词器效果

在这里插入图片描述
运行结果:

{
   
   
    "tokens": [
        {
   
   
            "token": "hello",
            "start_offset": 0,
            "end_offset": 5,
            "type": "<ALPHANUM>",
            "position": 0
        },
        {
   
   
            "token": "world",
            "start_offset": 6,
            "end_offset": 11,
            "type": "<ALPHANUM>",
            "position": 1
        }
    ]
}

可见,对于英文还是可以的

再来试试中文
在这里插入图片描述
运行结果:

{
   
   
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值