摘要:
相关度评分背后的理论 Lucene(或 Elasticsearch)使用 布尔模型(Boolean model) 查找匹配文档,并用一个名为 实用评分函数(practical scoring function) 的公式来计算相关度。这个公式借鉴了 词频/逆向文档频率(term frequency/i 阅读全文
摘要:
全文搜索 所有查询会或多或少的执行相关度计算,但不是所有查询都有分析阶段。和一些特殊的完全不会对文本进行操作的查询(如 bool 或 function_score )不同,文本查询可以划分成两大家族: 基于词项的查询 如 term 或 fuzzy 这样的底层查询不需要分析阶段,它们对单个词项进行操作 阅读全文
摘要:
组合查询 组合多查询现实的查询需求从来都没有那么简单;它们需要在多个字段上查询多种多样的文本,并且根据一系列的标准来过滤。为了构建类似的高级查询,你需要一种能够将多查询组合成单一查询的查询方法。 你可以用 bool 查询来实现你的需求。这种查询将多查询组合在一起,成为用户自己想要的布尔查询。它接收以 阅读全文
摘要:
创建索引和文档 注意:在7.x以后去掉了type的概念 过期的用法: PUT /megacorp/employee/1 提示types过期:Specifying types in document index requests is deprecated, use the typeless endp 阅读全文
摘要:
主题: 1、kafka是写磁盘还是写内存? 2、kafka究竟是由 consumer 从 broker 那里拉数据,还是由 broker 将数据推到 consumer? 3、如何区分已消费(consumed)的记录? 4、kafka用什么方法保障持久化的低延迟和高效率? 5、kafka的消息保证有几 阅读全文
摘要:
复制是基于操作日志oplog,相当于MySQL中的二进制日志,只记录发生改变的记录,复制是将主节点的oplog日志同步并应用到其他从节点的过程。 首先要理解两个概念:1、复制:提供冗余和高可用性;2、拆分分片:提供水平扩容; 复制提供冗余并增加数据可用性。通过在不同数据库服务器上提供多个数据副本,复 阅读全文
摘要:
索引分类: 默认索引 单一索引 复合索引 多键索引(数组索引) 全文检索索引 2dsphere 索引 2D索引 ...... 索引属性: 到期TTL 唯一索引 部分索引 稀疏索引 索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件 阅读全文
摘要:
文档关联模型通常有3种方式: 嵌入式(一对一、一对多) 后期手动统一ID处理(一对多、多对多) References引用(一对一、一对多) 文档树模型通常有3种方式: 父引用(Parent References) 子引用(Child References) 祖先数组(Array of Ancesto 阅读全文
摘要:
正确建模 开发人员在构建Cassandra数据库时犯的另一个主要错误是分区键的选择不佳。cassandra是分布式的。这意味着您需要有一种方法来跨节点分布数据。Cassandra通过散列每个表的主键(称为分区键)的一部分并将散列值token分配给集群中的特定节点来完成此操作。选择分区键时,请务必考虑 阅读全文