solr

ElasticSearch入门(一)主要概念汇总

本小妞迷上赌 提交于 2020-10-24 06:58:24
背景 最近项目中需要做一些大数据的全文检索功能,以前项目中都是基于 Lucene 进行的开发。而随着互联网技术架构的发展,近几年搜索引擎技术发展迅速,其中ElasticSearch进行技术的预演。 的热度一直都在搜索引擎排在前面,它的实时搜索、稳定、分布式、REST API 封装都是它的特点。结合网上其他资料对比,这个项目也打算使用 ElasticSearch 进行技术的预演。 预演步骤 既然技术选型已经确定,接下来就是围绕这个目标进行一步一步的任务细化。而且因为时间线不能拉太长,所以目前是先能够和业务集成,对应一些底层的集群、分片等原理性的内容,放到最后再去深入了解。 了解 ElasticSearch 基本概念,基本原理 了解 ElasticSearch 基本使用方法,如何安装、创建索引、检索,分布式等。 和实际业务结合,开发集成 ElasticSearch 。 了解 ElasticSearch 更多细节的东西,优化,扩展等。 本文主要介绍一些 ElasticSearch 基本概念,以及和 Apache solr 的一些对比。 基本概念 什么是elasticsearch? ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的

MySQL索引 索引分类 最左前缀原则 覆盖索引 索引下推 联合索引顺序

时光总嘲笑我的痴心妄想 提交于 2020-10-23 08:35:24
MySQL索引 索引分类 最左前缀原则 覆盖索引 索引下推 联合索引顺序 What's Index ? 索引就是帮助RDBMS高效获取数据的数据结构。 索引可以让我们避免一行一行进行全表扫描。它的价值就是可以帮助你对数据进行快速定位。 索引分类 按照 功能逻辑 来分 普通索引 INDEX(col_name) 或者 key index_name(col_name) 没有任何约束,一张表可以有多个普通索引 唯一索引 UNIQUE INDEX index_name(col_name) 在不同索引上增加了唯一约束,允许多个ull值 主键索引 PRIMARY KEY (col_name) 主键约束=UNIQUE+NOT NULL,一张表只能有一个主键索引---该性质由主键索引的物理实现方式决定---数据在文件中只能按照一种顺序进行存储 外键索引 CONSTRAINT foreign_key_name FOREIGN KEY(col_name) REFREENCES table_name(col2_name) 全文索引 FULLTEXT INDEX index_name(col_name)...)ENGINE=MyISAM; MySQL自带的全文索引仅支持英文,一般我们使用专门的全文搜索引擎Elasticsearch或者solr。 按照 物理实现 方式来分(也是按照叶子结点的内容来分)

MySQL性能调优【一】

帅比萌擦擦* 提交于 2020-10-22 10:35:59
目录 前言 使用explain 分析你SQL的计划 关键字的慎用 避免判断 null 值 避免使用 or 逻辑 慎用 in 和 not in 逻辑 Inner join 、left join、right join,优先使用Inner join,如果是left join,左边表结果尽量小 exists的合理使用 慎用distinct关键字 尽量用 union all 替换 union 查询优化 GROUP BY关键字优化 查询SQL尽量不要使用select *,而是select具体字段 优化limit分页 知道查询结果为一条记录,建议使用limit 1 注意模糊查询 避免查询条件中字段计算 避免查询条件中对字段进行函数操作 避免不等值判断 对查询进行优化,应考虑在 where 及 order by 涉及的列上建立索引,尽量避免全表扫描。 where子句中考虑使用默认值代替null。 where子句 “= ” 左边注意点 不要定义无意义的查询 索引优化 在适当的时候,使用覆盖索引。 索引无关优化 索引也可能失效 组合索引使用 索引优化总结 其它注意事项 表格字段类型选择 如果插入数据过多,考虑批量插入 count(*) 和 count(1)和count(列名)区别 前言 sql语句性能达不到你的要求,执行效率让你忍无可忍,一般会时下面几种情况。 网速不给力,不稳定。 服务器内存不够