okapi

CentOS7.2部署postgresql9.6

对着背影说爱祢 提交于 2020-08-06 15:35:21
1 基础信息 1.1 基础设施 数据库服务器推荐配置 CPU 双核 2.5GHz ,内存 32G 以上 数据库服务器操作系统 CentOS Linux release 7.2.1511 (Core) 数据库服务器版本 Postgresql9.6 1.2 PostgreSQL简介 1.2.1 Postmistress是什么 PostgreSQL 是一个免费的对象-关系数据库服务器(ORDBMS),在灵活的BSD许可证下发行。 PostgreSQL 开发者把它念作 post-gress-Q-L。 PostgreSQL 的 Slogan 是 "世界上最先进的开源关系型数据库"。 1.2.2 ORDBMS 术语 在我们开始学习 PostgreSQL 数据库前,让我们先了解下 ORDBMS 的一些术语: 数据库 : 数据库是一些关联表的集合。 数据表 : 表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。 列 : 一列(数据元素) 包含了相同的数据, 例如邮政编码的数据。 行:一行( =元组,或记录)是一组相关的数据,例如一条用户订阅的数据。 冗余:存储两倍数据,冗余降低了性能,但提高了数据的安全性。 主键:主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据。 外键:外键用于关联两个表。 复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引。 索引

Elasticsearch系列---相关性评分算法及正排索引

倾然丶 夕夏残阳落幕 提交于 2020-08-05 21:20:06
概要 上一篇中多次提到了按相关性评分,本篇我们就来简单了解一下相关性评分的算法,以及正排索引排序的优势。 评分算法 Elasticsearch进行全文搜索时,Boolean Model是匹配的基础,先用boolean model将匹配的文档挑选出来,然后再运用评分函数计算相关度,参与的函数如我们提到的TF/IDF、Length Norm等,再加上一些控制权重的参数设置,得到最后的评分。 Boolean Model 作为全文搜索的基础,Boolean Model的结果决定文档是否要进行下一步的评分操作,使用AND、OR、NOT这种逻辑操作符来判断查找的文档,整个过程不评分,非常快速地将匹配的文档筛选出来。 由于Elastisearch各个版本相关度评分算法有异同,我们以6.3.1版本的BM25算法为准。 TFNORM/IDF 由Boolean Model之后得到的文档,我们开始计算文档的评分,每个文档的评分取决于每个关键词在文档中的权重,权重我们会从以下几个方面考虑: TFNORM 即词频长度(Term Frequency Norm),单个term在文档中出现的频率,并结合字段长度,出现次数越高,字段长度越低,分越高,计算公式: tfNorm(t in d) = (freq * (k1 + 1)) / (freq + k1 * (1 - b + b * fieldLength /