ElasticSearch相关知识点
1.了解ES
ES的作用:ES是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据中快速找到需要的内容
ELK技术栈:ES结合kibana、Logstash、Beasts,也就是 elastic stack 。被广泛应用在日志数据分析、实时监控等领域。

ES与lucene:

为什么不用lucene?因为这个是个类库,还需要写很多API。

ES的实时更新很强大相较于Solr。
2.学习倒排索引
倒排索引的概念是基于 MySQL 这样的正向索引而言的
正向索引

如果是根据 id 查询,查询速度非常快
但如果是基于 title 做模糊查询,只能是逐行扫描数据,流程如下:

逐行扫描,也就是全表扫描,随着数据量增加,其查询效率也会越来越低。。
倒排索引
文档(Document):用来搜索的数据,其中的每一条数据就是一个文档。例如一个网页、一个商品信息。
词条(Term):对文档数据或用户搜索数据,利用某种算法分词,得到的具备含义的词语就是词条,例如"我是中国人",就可以分为:我、是、中国人、中国、国人,这样的几个词条

倒排索引的搜索流程如下(以搜索"华为手机"为例):

如图:

正向和倒排
- 正向索引是最传统的,根据id索引的方式,但根据词条查询时,必须先逐条查询获取每个文档,然后判断文档中国是否包含所需要的词条,是根据文档找词条的过程。
- 倒排索引则相反,是先找到用户要搜索的词条,根据词条得到包含词条的文档id,然后再根据id获取文档,是根据词条找文档的过程。
一些概念

结合使用:

使用消息中间件进行一个异步通知,数据同步。






![Sqli-labs靶场第19关详解[Sqli-labs-less-19]自动化注入-SQLmap工具注入](https://img-blog.csdnimg.cn/direct/b8b5350609474fb6b9fd413c076cfad3.png)






![Sqli-labs靶场第20关详解[Sqli-labs-less-20]自动化注入-SQLmap工具注入](https://img-blog.csdnimg.cn/direct/99238a6364ee4c5eb53801faff3fe72a.png)





