-
项目结构:
controller
entity(实体类)
es
mysql(实体类)
mysqlBlog
数据库表中的字段
@Table
@ID @GeneratedValue
@Column
@Entity
repository(dao层数据打交道)
es
mysql
interface MysqlBlogRepository继承JpaRepository<MysqlBlog,Integer>
查看全部 -
项目依赖
Developer Tools
Web
SQL
配置文件:数据源, JPA,数据库连接池, ES
查看全部 -
将下载好的IK分词器,添加到elasticSearch包下的plugins
新建文件夹IK目录下
重启ES
post _analyzer
{
"analyzer":"ik_smart/ik_max_word",
"text":"我是中国人"
}
可以在字典(main.dic)里面添加词组。
查看全部 -
下载
bin 目录:引入mysql连接接Java jar 包
config 文件夹 mysql.conf设置
查看全部 -
ES 集群就是一个或者多个拥有相同的Cluster.namespace 节点所组成的。
共同承担着数据以及负载的压力。
当有节点加入集群或者从集群当中移除
整个集群将会平均分布所有的数据。
例如下图
新加node3
信的node刚进来,集群之前选举出来的主节点就会感知到,并且做后续的一系列的管理和负载编排工作。
主节点负责集群范围内的所有变更,比如增加索引,删除索引,或者增加删除索引等等。
用户可以将请求发送到集群的任意节点,每一个节点都知道任意文档存储的位置,并且能够将我们的请求直接转发到我们所需文档的具体节点,最后将结果展示给客户端。
ES对于集群内部管理是透明的。
查看全部 -
mysql 使用like进行模糊查询
mysql为什么不做索引?
索引的适用场景:数值型,字符串类型的全文比较,但在like中进行全文索引,索引将失效。而且还会进行全文的扫描。
随着数据的增加,就会引入分布式架构,就是使用分库分表。
搜索的业务场景是一种模糊匹配,并不知道用户将要输入什么样的字符,所以没有办法具体单库节点的准确映射。
查看全部 -
安装ES
www.elastic.co/cn下载想要的版本后,解压后找到bin目录下找到elasticsearch.bat文件,直接双击运行,
在浏览器中输入localhost:9200,看到json文件,成功安装单点服务。
安装kibana
双击运行kibana.bat(保证本地启动了ES)在浏览器输入localhost:5601
kibana的dev tool 可以调试ES
查看全部 -
与Mysql对比:
查看全部 -
ES 是开源的分布式全文搜索和分析引擎
进行实时快速搜索存储分析海量的数据
分布式 (可以单点运行也可以在多节点的集群上面运行)
可以通过ES 的分片算法散列在不同的节点上,从而实现了高可用,负载均衡的搜索服务。
全文检索
实时快速(维基百科,GitHub, stackconflue)
Restful API :对程序员比较友好
适用于在大量数据上搜索分析
查看全部 -
跨域问题解决
查看全部 -
查看全部
-
mysql.conf 链接参数和配置查看全部
-
biglog同步mysql到es查看全部
-
可视化工具kibana
查看全部 -
记录下查询语法查看全部
举报