3 Mr_慕白

尚未进行身份认证

此用户不懒

等级
TA的排名 6w+

MongoDB 集合(Collection)对应的物理文件

dbpath下是清一色的collection-n-***与index-n-***开头的物理文件,如何知道某一个集合与其对应与其对应的物理文件?db.collection_name.stats()返回的结果包含集合数据对应的物理文件db.collection_name.stats({indexDetails:true})返回的结果包含集合数据和索引对应的物理文件官方有db.collection.stats用法的详细信息:https://docs.mongodb.com/manual/referenc

2020-05-25 11:11:11

mongodb数据存储原理

https://blog.csdn.net/ZH01234565/article/details/82886897

2020-05-25 10:08:54

ES Fielddata

一、简介在ES中,text类型的字段使用一种叫做fielddata的查询时内存数据结构。当字段被排序,聚合或者通过脚本访问时这种数据结构会被创建。它是通过从磁盘读取每个段的整个反向索引来构建的,然后存存储在java的堆内存中。fileddata默认是不开启的。Fielddata可能会消耗大量的堆空间,尤其是在加载高基数文本字段时。一旦fielddata已加载到堆中,它将在该段的生命周期内保留。此外,加载fielddata是一个昂贵的过程,可能会导致用户遇到延迟命中。这就是默认情况下禁用fielddata

2020-05-22 11:11:54

ES基于completion suggest实现搜索提示

下面说说在es中的种实现搜索提示的功能,基于completion suggest 进行实现,其在实际应用中搜索性能更加高效。假如文档库里有一堆关于大话西游的,比如,“大话西游电影”,“大话西游小说”,"大话西游舞台剧"等,这里我们需要搜索以"大话西游"开头的文档。1、自定义index,及字段分词属性,这里用IK中文分词器:PUT /news_website{ "mappings": { "news" : { "properties" : { "title" .

2020-05-21 13:50:55

ES5.x中文文档

http://doc.codingdict.com/elasticsearch/101/

2020-05-21 11:35:42

Elasticsearch安全认证功能

https://www.cnblogs.com/jclty/p/12913996.htmlhttps://blog.csdn.net/laoyang360/article/details/90554761?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog

2020-05-20 16:38:21

ES嵌套对象和父子文档

1.join 简介在 ES 中有一种特殊的数据类型『join』,被形象地称为父子文档。它是一种可以在同一索引中存放两种有关系数据的数据类型,类似于关系数据库中让两张表发生关系的外键 FOREIGN KEY 。在官方文档中这样介绍:join 数据类型的字段是一个特殊字段,它可以在同一个索引的文档中创建 父子关系 。通过参数 relations 定义可能存在关系的一组文档,这个关系的参数由 父名 和 子名 构成。2.定义我们需要在设置 mapping 时将其关系定义好,如下示例:PUT 索引名称{

2020-05-19 20:50:36

MongoDB单机集群搭建

一、单机副本集部署方案:单台物理机,一个主节点,一个副本节点,一个仲裁节点。二、部署步骤1、在mongodb目录下新建config目录(目录及位置可随意指定,在此按照config目录搭建),在config目录中新建主节点配置文件primary.conf (文件名可随意指定):[root@Thor config]# cat primary.conf port = 51077 #主节点端口号directoryperdb = true #设置每个数据库将被保存在一个单独的目录shardsvr =

2020-05-18 21:34:13

MongoDB副本集与分片

一、MongoDB 副本集1.1、MongoDB复制在mongodb学习阶段,一般功德都是单台服务器,一个mongod服务进程。如果仅仅作为学习开发是可以的,但是如果用到生产环境,风险会很高,例如服务器崩溃、硬件出现问题,最坏的情况是磁盘或网络出问题可能会导致数损坏或数据不可访问。MongoDB复制是将数据同步在多个服务器的过程。复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的安全性。1.2、副本集副本集是一组维护相同数据集的mongod实例。副本

2020-05-18 16:55:32

ES索引存储原理

ES索引存储原理不变性写到磁盘的倒序索引是不变的:自从写到磁盘就再也不变。这会有很多好处:不需要添加锁。不存在写操作,因此不存在多线程更改数据。提高读性能。一旦索引被内核的文件系统做了Cache,绝大多数的读操作会直接从内存而不需要经过磁盘。提升其他缓存(例如fiter cache)的性能。其他的缓存在该索引的生命周期内保持有效,减少磁盘I/O和计算消耗。当然,索引的不变性也有缺点。如果你想让新修改过的文档可以被搜索到,你必须重新构建整个索引。这在一个index可以容纳的数据量和一个索引可

2020-05-14 15:57:07

深度分页问题

深度分页es为了性能,限制了我们分页的深度,es目前支持的最大的 max_result_window = 10000;也就是说我们不能分页到10000条数据以上。from + size 这种方式不适用于深度分页场景,下面介绍其它两种分页方式:• Search After• Scroll Apifrom + size的分页方式虽然是最灵活的分页方式,但是当分页深度达到一定程度将会产生深度分页的问题。scroll如果一次性要查出来比如10万条数据,那么性能会很差,此时一般会采取用scoll滚动查询

2020-05-13 15:59:04

bouncing results问题

一、bouncing results成因及解决方案bouncing results问题,两个document排序,field值相同;不同的shard上,可能排序不同;每次请求轮询路由到不同的replica shard上;每次页面上看到的搜索结果的排序都不一样。这就是bouncing result的问题,这个问题出现最多的地方就是timestamp进行排序比如当你使用一个timestamp字段对结果进行排序,因为es中时间格式为%Y-%m-%d,那么同样时间的数据会有很多。es如果不做任何设置,将会按ro

2020-05-13 15:45:32

正排索引(doc values)

doc values搜索的时候,要依靠倒排索引;排序的时候,需要依靠正排索引,看到每个document的每个field,然后进行排序,所谓的正排索引,其实就是doc values。在建立索引的时候,一方面会建立倒排索引,以供搜索用;一方面会建立正排索引,也就是doc values,以供排序,聚合,过滤等操作使用doc values是被保存在磁盘上的,此时如果内存足够,os会自动将其缓存在内存中,性能还是会很高;如果内存不足够,os会将其写入磁盘上倒排:doc1: hello world you a

2020-05-13 14:55:49

图解Elasticsearch中的_source、_all、store和index属性

https://blog.csdn.net/napoay/article/details/62233031

2020-05-12 20:21:08

Elasticsearch存储深入详解

https://blog.csdn.net/laoyang360/article/details/82559729

2020-05-11 16:12:57

进程管理

进程是UNIX系统中仅次于文件的基本抽象概念。当代目标代码执行时,正在运行的不仅仅是汇编代码,而是由数据、资源、状态和虚拟的计算机组成。一、程序、进程和线程程序(program)是指编译过的、可执行的二进制代码,保存在存储介质,如磁盘上。规模很大的二进制程序集可以称为应用。/bin/ls和/usr/bin/X11都属于二进制程序。进程(process)是指正在运行的程序,是分配资源的基本单位...

2020-05-08 14:46:15

ES多种搜索方式总结

本节使用的是ES低版本,包含type。分类query string searchquery DSLquery filterfull-text searchphrase searchhighlight search1、query string search搜索全部商品:GET /ecommerce/product/_searchtook:耗费了几毫秒timed_out:...

2020-04-29 11:01:39

Delete/Update by query

一、引言之前介绍的文档删除与更新(ES的更新是重建->删除->重新索引)只能通过_id,但这不符合我们的使用场景,我们更希望能够像数据库那样通过条件进行删除/更新。通过Delete/Update by query这两个API可以做到这点,对指定查询匹配的文档进行删除/更新。之前在 2.X版本里 这个功能被去掉了 因为官方认为会引发一些错误 如需使用 需要自己安装插件。那么在5.x...

2020-04-28 15:32:16

干货 | Elasticsearch开发人员最佳实战指南

https://hiddenpps.blog.csdn.net/article/details/105424222

2020-04-28 10:17:23

精确值 VS 全文

精确值 VS 全文当摆弄索引里面的数据时,我们发现一些奇怪的事情。一些事情看起来被打乱了:在我们的索引中有12条推文,其中只有一条包含日期 2014-09-15 ,但是看一看下面查询命中的 总数 (total):GET /_search?q=2014 # 12 resultsGET /_search?q=2014-09-15 # 12 results ...

2020-04-27 18:09:55

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。