• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

Elasticsearch全文检索配置

2017-06-15 发表
  • 0关注
  • 0收藏 1143浏览
粉丝:0人 关注:1人

使用Elasticsearch组件实现对wordpdfexcelppt等的文本内容进行全文检索。

部署完成DataEngine大数据平台,然后在2个节点上添加Elasticsearch服务组件形成Elasticsearch集群。

1、 插件:

elasticsearch-mapper-attachments-3.1.0   全文检索插件wordpdfexcelppt(兼容es2.10

2、 在每个ES节点上安装插件:上传插件到该目录,然后在目录下解压插件,最后重启ES服务

[root@node4]cd /usr/share/elasticsearch/plugins
[root@node4 plugins]# ls

elasticsearch-analysis-ik-1.6.1  head  elasticsearch-mapper-attachments-3.1.0.zip

[root@node4 plugins]#unzip elasticsearch-mapper-attachments-3.1.0.zip -d ./elasticsearch-mapper

3、 打开ES界面,在复合查询中输入如下配置:(建立索引)


 

http://172.168.1.179:9200/smartsegmentation /

点击提交请求后返还为true即创建成功。

内容输入如下:

{

  "mappings": {

    "parseword": {

      "properties": {

        "parse_file": {

          "type": "attachment",

          "fields": {

            "content": {

              "type": "string",

              "term_vector": "with_positions_offsets",

              "analyzer": "ik_smart",

              "store": true

            },

            "content_type": {

              "type": "string",

              "store": true

            },

            "name": {

              "type": "string",

              "store": true

            }

          }

        }

      }

    },

    "parsepdf": {

      "properties": {

        "parse_file": {

          "type": "attachment",

          "fields": {

            "content": {

              "type": "string",

              "term_vector": "with_positions_offsets",

              "analyzer": "ik_smart",

              "store": true

            },

            "content_type": {

              "type": "string",

              "store": true

            },

            "name": {

              "type": "string",

              "store": true

            }

          }

        }

      }

    },

    "parseexcel": {

      "properties": {

        "parse_file": {

          "type": "attachment",

          "fields": {

            "content": {

              "type": "string",

              "term_vector": "with_positions_offsets",

              "analyzer": "ik_smart",

              "store": true

            },

            "content_type": {

              "type": "string",

              "store": true

            },

            "name": {

              "type": "string",

              "store": true

            }

          }

        }

      }

    },

    "parsepowerpoint": {

      "properties": {

        "parse_file": {

          "type": "attachment",

          "fields": {

            "content": {

              "type": "string",

              "term_vector": "with_positions_offsets",

              "analyzer": "ik_smart",

              "store": true

            },

            "content_type": {

              "type": "string",

              "store": true

            },

            "name": {

              "type": "string",

              "store": true

            }

          }

        }

      }

    }

  }

}

4、 指定文件上传目录:

[root@node4 files]# ll

total 100

drwxr-xr-x 2 root root  4096 Jun  2 11:37 filetoup

-rw-r--r-- 1 root root 89557 Jun  2 11:37 json.file

-rwxr-xr-x 1 root root   374 Jun  2 10:42 upfile.sh

-rwxr-xr-x 1 root root   374 Jun  2 11:37 upfile-test.sh

[root@node4 files]# pwd

/opt/files

5、 编写上传脚本,并给与脚本可执行权限chmod 777 upfile.sh

vi upfile.sh

#!/bin/sh

file_path='/opt/files/filetoup/云计算重大工程项目奖励评选.docx'

file=$(base64 $file_path)

json="{\"parse_file\": {\"_content_type\" : \"application/docx\",\"_name\" : \"云计算重大工程项目奖励评选.docx\",\"_content\" : \"$file\"}}"

echo "$json"> json.file

curl -X POST "http://172.168.1.179:9200/smartsegmentation/parseword" -d @json.file

6、 上传文件

Xshell上传文件即可,注意下面的配置:

使用utf-8编码,中文才能正常显示

7、 Es上查询,获取结果

http://172.168.1.179:9200/smartsegmentation/

 

{

  "fields": [

    "parse_file.content_type",

    "parse_file.name",

    "parse_file.content"

  ],

  "query": {

    "match": {

      "parse_file.content": "云计算"

    }

  },

  "highlight": {

    "fields": {

      "parse_file.content": {}

    }

  }

}

该案例对您是否有帮助:

您的评价:1

若您有关于案例的建议,请反馈:

作者在2019-06-08对此案例进行了修订
0 个评论

该案例暂时没有网友评论

编辑评论

举报

×

侵犯我的权益 >
对根叔知了社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔知了社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作