1.数据同步
名词解释
在mysql、es数据同步的过程中需了解两个概念
全量:第一次当建立完es索引之后将mysql数据一次性打包到es中
增量:当mysql产生新的数据(新数据add、旧数据update或者delete)需es做相应的操作
2.实现方式
编写脚本
针对全量的场景,编写脚本:查询数据、数据处理、插入到es中
简单步骤说明如下:
名词解释
在mysql、es数据同步的过程中需了解两个概念
全量:第一次当建立完es索引之后将mysql数据一次性打包到es中
增量:当mysql产生新的数据(新数据add、旧数据update或者delete)需es做相应的操作
针对全量的场景,编写脚本:查询数据、数据处理、插入到es中
简单步骤说明如下:
分词器分类
standard:es默认的分词器,将词汇单元转为小写形式,并去除一些停用词和标点符号。(支持中文、单字切分)
simple:通过非字母字符分割文本信息,将文本单元统一为小写形式,去除数字类型字符。
whitespace:仅仅去除空格,没有任何lowcase化,不支持中文,对生成的词汇单元没有任何标准化处理
language:不支持中文
通过个人博客全文检索的实际场景,了解现有mysql技术的局限性,并初步认识ES的检索性能
项目基于springboot构建个人博客demo
表结构设计
CREATE DATABASE blog;
USE blog;
CREATE TABLE `t_blog` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增id',
`title` varchar(60) DEFAULT NULL COMMENT '博客标题',
`author` varchar(60) DEFAULT NULL COMMENT '博客作者',
`content` mediumtext COMMENT '博客内容',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4
# 模拟
INSERT INTO `blog`.`t_blog`(`id`, `title`, `author`, `content`, `create_time`, `update_time`) VALUES (1, 'Springboot 为什么这', 'bywind', '没错 Springboot ', '2019-12-08 01:44:29', '2019-12-08 01:44:34');
INSERT INTO `blog`.`t_blog`(`id`, `title`, `author`, `content`, `create_time`, `update_time`) VALUES (3, 'Springboot 中 Redis', 'bywind', 'Spring Boot', '2019-12-08 01:44:29', '2019-12-08 01:44:29');
INSERT INTO `blog`.`t_blog`(`id`, `title`, `author`, `content`, `create_time`, `update_time`) VALUES (4, 'Springboot 中如何优化', 'bywind', NULL, '2019-12-08 01:44:29', '2019-12-08 01:44:29');
INSERT INTO `blog`.`t_blog`(`id`, `title`, `author`, `content`, `create_time`, `update_time`) VALUES (5, 'Springboot 消息队列', 'bywind', NULL, '2019-12-08 01:44:29', '2019-12-08 01:44:29');
INSERT INTO `blog`.`t_blog`(`id`, `title`, `author`, `content`, `create_time`, `update_time`) VALUES (6, 'Docker Compose + Springboot', 'bywind', NULL, '2019-12-08 01:44:29', '2019-12-08 01:44:29');
内容说明
1.ElasticSearch的概念和适用场景
2.ElasticSearch VS Mysql
3.ElasticSearch的安装与部署
Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。 作为 Elastic Stack 的核心,它集中存储您的数据,帮助您发现意料之中以及意料之外的情况。
关键字:分布式(Node & Cluster)、全文检索、实时快速、Restful
项目说明
视频地址:https://www.imooc.com/learn/1161
项目源码:https://github.com/holic-x/springboot-es
项目笔记:https://www.yuque.com/u21572591/exqg2x/pco32x
学习内容
结合实际需求分析,打造个人博客检索系统。内容涵盖 ES安装、ES基本概念和数据类型、Mysql 到 ES 数据同步、SpringBoot 操作 ES。可初步认识ES,理解ES的一些适用场景,以及如何使用springboot来同ES进行交互
部署步骤(linux环境)
进入nginx官网,下载指定版本的.tar.gz文件
将下载好的nginx安装包上传到虚拟机并配置依赖环境
解压、编译安装、启动nginx服务器,测试nginx是否可以正常访问
将静态资源上传到指定的目录,并配置nginx.conf文件,随后重启服务器访问资源文件
nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;nginx可以作为一个HTTP服务器进行网站的发布处理,还可作为反向代理进行负载均衡的实现
nginx作用
发布网站(静态, html,css,js)
实现负载均衡
代理服务器
作为邮件服务器实现收发邮件等功能
[TOC]
su 用户名 (随后输入用户密码)
# 切换到超级管理员su root
[TOC]
yum基本概念
yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器
它是一个类似于开发工具idea、eclipse中的在线插件安装商店
yum [options] [command] [package ...]
# 执行权限:管理员
[TOC]
傻瓜式安装VMWare,安装结束之后在网上搜索相关的许可证秘钥,输入即可完成安装
VMware Workstation Pro 15 激活许可证
UY758-0RXEQ-M81WP-8ZM7Z-Y3HDA
VF750-4MX5Q-488DQ-9WZE9-ZY2D6
UU54R-FVD91-488PP-7NNGC-ZFAX6
YC74H-FGF92-081VZ-R5QNG-P6RY4
YC34H-6WWDK-085MQ-JYPNX-NZRA2
VMware Workstation Pro 14 激活许可证
FF31K-AHZD1-H8ETZ-8WWEZ-WUUVA
CV7T2-6WY5Q-48EWP-ZXY7X-QGUWD
VMware Workstation Pro 12 激活许可证
5A02H-AU243-TZJ49-GTC7K-3C61N
VF5XA-FNDDJ-085GZ-4NXZ9-N20E6
UC5MR-8NE16-H81WY-R7QGV-QG2D8
ZG1WH-ATY96-H80QP-X7PEX-Y30V4
AA3E0-0VDE1-0893Z-KGZ59-QGAVF
VMware Workstation Pro 10 激活许可证
1Z0G9-67285-FZG78-ZL3Q2-234JG
4C4EK-89KDL-5ZFP9-1LA5P-2A0J0
HY086-4T01N-CZ3U0-CV0QM-13DNU