惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
Netflix TechBlog - Medium
Blog — PlanetScale
Blog — PlanetScale
月光博客
月光博客
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
爱范儿
爱范儿
量子位
博客园 - 聂微东
Engineering at Meta
Engineering at Meta
WordPress大学
WordPress大学
GbyAI
GbyAI
MyScale Blog
MyScale Blog
IT之家
IT之家
P
Proofpoint News Feed
M
MIT News - Artificial intelligence
The Cloudflare Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Hugging Face - Blog
Hugging Face - Blog
The Register - Security
The Register - Security
Microsoft Security Blog
Microsoft Security Blog
博客园_首页
MongoDB | Blog
MongoDB | Blog
F
Fortinet All Blogs
博客园 - 三生石上(FineUI控件)
Y
Y Combinator Blog
雷峰网
雷峰网
V
Visual Studio Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Last Week in AI
Last Week in AI
博客园 - 叶小钗
D
DataBreaches.Net
B
Blog
B
Blog RSS Feed
大猫的无限游戏
大猫的无限游戏
aimingoo的专栏
aimingoo的专栏
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
The GitHub Blog
The GitHub Blog
云风的 BLOG
云风的 BLOG
Recent Announcements
Recent Announcements
阮一峰的网络日志
阮一峰的网络日志
小众软件
小众软件
腾讯CDC
T
Threat Research - Cisco Blogs
SecWiki News
SecWiki News
Martin Fowler
Martin Fowler
D
Docker
Cisco Talos Blog
Cisco Talos Blog
T
Tenable Blog
Webroot Blog
Webroot Blog
宝玉的分享
宝玉的分享

博客园 - bluesky4485

在windows环境下基于sublime text3的node.js开发环境搭建 CentOS6.4安装及配置oracle Ant学习 Springframework3.1源码编译 如何测试java支持的最大内存 win7x64下安装oraclex64版本后,plsql Developer无法登录的问题 VMWare安装redhat9后上网的的问题 Tomcat中部署后JspFactory报异常的解决方案 MyEclipse10 中增加svn插件 Oracle连接池信息的修改 OPDS1.1 VMware下Redhat9鼠标选用usb后不能使用的解决办法 m2e插件安装 Java开发Maven环境配置和介绍 javadoc生成出现错误“编码 GBK 的不可映射字符” Google常用搜索技巧 设置Google不跳转到google.com.hk CodeSmith支持中文配置 jni和C++通信中文乱码的问题
Elasticsearch及java客户端jest使用
bluesky4485 · 2014-12-17 · via 博客园 - bluesky4485

本文使用Github中的Elasticsearch-rtf,已经集成了众多的插件,例如必须使用的中文分词等,可以简单的通过配置来启用中文分词。本文主要分为以下几部分:

1、配置和启用中文分词;

2、定义索引的mapping

3、java客户端jest创建和检索索引

4、高亮检索结果

5、集群配置

工具:

由于Elasticsearch完全REST风格,支持json进行交互,简单的curl工具就可以完成很多功能,本文中也有部分操作会直接使用curl。window环境下建议下载一个可执行的curl.exe,找一个目录,然后将目录放到path环境变量中,则curl就可以直接使用了。

配置

定义Mapping

使用json格式的mapping,直接通过image添加到test-index索引中。当然,在此之前得先增加一个叫test-index的索引( curl –XPUT http://localhost:9200/test-index,一个简单的命令就可以完成这个事情了。)

{
    "huangke": {
        "mappings": {
            "index": {
                "properties": {
                    "alttitle": {
                        "index": "analyzed",
                        "type": "string"
                    },
                    "contens": {
                        "properties": {
                            "pageno": {
                                "type": "long"
                            },
                            "pagetext": {
                                "index": "analyzed",
                                "type": "string"
                            }
                        }
                    },
                    "desc": {
                        "index": "analyzed",
                        "type": "string"
                    },
                    "drmi": {
                        "index": "not_analyzed",
                        "type": "string"
                    },
                    "isbn": {
                        "index": "not_analyzed",
                        "type": "string"
                    },
                    "metadatatype": {
                        "index": "not_analyzed",
                        "type": "string"
                    },
                    "metaid": {
                        "index": "not_analyzed",
                        "type": "string"
                    },
                    "publisher": {
                        "index": "analyzed",
                        "type": "string"
                    },
                    "title": {
                        "index": "analyzed",
                        "type": "string"
                    }
                }
            }
        }
    }
}

JEST使用

高亮检索结果

集群配置

cluster.name一样,则表示是一个集群,es默认会根据名字自动发现node节点的机器,并加入到集群中进行管理。通过如下简单的配置,就可以将es的集群搭建好:

master机器:

cluster.name: "logstash_ela"
node.name: "elasticsearch_node0"
node.master: true
node.data: true

node节点机器:node.master配置为false表示此节点就只会用来存储数据,在任何情况下都不会作为master节点(内置选举啥机制等,配置为true的则在某些情况下还是有可能会作为master节点存在的)。

cluster.name: "logstash_ela"
node.name: "elasticsearch_node1"
node.master: false
node.data: true