自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(116)
  • 收藏
  • 关注

原创 Maven使用${env.}调用环境变量

最近开始接手做一些老项目,老到什么程度,回到十几年前,大学刚毕业, 使用 java servlet 的时候。第一个想法 ,到本地机器找找,记得以前安装过 weblogic 了, 看看在 weblogic 安装路径下,确实有这个 jar 包存在,直接把${env.AS_HOME}这里改成绝对路径。项目中有一个引用,也是让我研究了半天,不是一小会的那个半天,而是从中午到下午,到第二天早上才解决的那种。回头想想,一方面存在技术债,没有留意这些实现细节,另外自己思考的问题,没有注意 env.开头是个环境变量。

2024-08-15 10:14:44 585

原创 Mysql按照范围区间创建分区表

每一个分区仅包含在指定范围内的数据列。这样的分区方式就是范围分区。在Mysql的范围分区表定义中,分区范围需要连续并且不会有覆盖。定义范围分区表时,使用VALUES LESS THAN操作符。在PARTITION BY RANGE语法中,建立分区表指定分区时,每一个分区都是按顺序定义。使用时类似C语言和java中的if...elseif...表达式。

2024-07-31 16:59:43 547

原创 Mysql 分区表类型

最近因为工作需要,需要使用Mysql的分区表。因此写几篇关于mysq分区表的文章。Mysql的官方文档 ,与Mongodb的文档相比,稍显晦涩难懂,需要想清楚怎样内容表达清楚。

2024-07-31 15:48:13 333

原创 Mongodb通配符文本索引

用户可以为集合中多个文本字段创建一个文本索引。这种集合多个字段的索引,就是通配符文本索引。通配符文本索引支持未知字段,可变字段和动态生成字段的文本查询。使用通配标识符$**和索引类型text来构建通配符文本索引。通配符索引和通配符文本索引,是不同的索引。通配符文本索引支持使用$text操作符的查询, 而通配符索引不支持使用该操作符查询。当用户在集合中添加通配符文本索引后,向集合中插入数据或者数据更新时,在通配符文本索引中的数据都会更新。因此,通配符文本索引对数据插入和更新有负面的影响。

2024-07-26 11:24:14 523

原创 Mongodb文档和数组的通配符索引

Mongodb的通配符索引,为灵活可变的Mongodb数据结构提供了高效的查询方法。本文结合Mongodb官方文档,详细介绍在嵌入式文档和数组上,通配符索引的结构。当为文档对象建立通配符索引时,Mongodb会扫描文档对象的每一个字段,将文档的每一个字段都加入到该通配符索引中。如果该字段值也是文档对象,则继续向下扫描,将该文档类型的字段添加到通配符索引。当为数组对象建立通配符索引时, Mongodb会扫描数组中的每一个元素,将每一个元素的内容添加到通配符索引。

2024-07-25 12:00:38 546

原创 Mongodb通配符索引签名和使用限制

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第98篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。威赞文章都是结合官方文档,翻译整理而来,并对每个知识点的描述都认真思考和实践,对难以理解的地方,使用简单容易理解的方式进行阐述。Mongodb的通配符索引,为灵活的数据结构,提供了便利,但使用上有哪些限制?本文结合Mongodb的官方文档,总结了Mongodb通配符索引的使用和限制。

2024-07-25 11:59:48 862

原创 Mongodb的复合通配符索引

威赞文章都是结合官方文档,翻译整理而来,并对每个知识点的描述都认真思考和实践,对难以理解的地方,使用简单容易理解的方式进行阐述。但很不幸的是,如果用户为属性列表当中的每一个属性来添加索引,付出的代价是非常高昂的。这个场景当中,使用通配符索引,为属性列表添加一个通配符索引,可以完美的解决属性列表查询的问题。替换成复合通配符索引,添加起来很方便,又方便维护,又不会突破Mongodb集合64个索引的限制。复合通配符索引,是包含一个通配符和一个其他索引键而定义的索引。

2024-07-23 16:30:01 500

原创 Mongodb的通配符索引

创建Mongodb索引时,使用通配符$**来创建通配符索引为嵌入式文档添加索引只有当用户在不确定字段未来是否会变化,或不清楚需要创建索引的字段时,才使用通配符来创建索引。通配符索引和普通的确定字段索引的行为不一样。如果集合中因为随意的字段名称导致不能够创建索引,Mongodb官方建议首先统一字段名称。而不是创建通配符索引来代替普通索引。通配符索引,适用于下面几个场景系统应用查询的集合中文档字段不同,为该集合添加通配符索引,包含所有需要查询的字段。

2024-07-23 15:56:47 1168

原创 Mongodb文本索引

文本索引,能够支持保存字符串字段的文本查询。文本索引,提高了基于单个词语或短语的查询性能。一个集合中,只能有一个文本索引,但该文本索引可以包含多个字段。使用下面的语法来向集合中添加文本索引...文本索引,支持使用$text操作符,查询用户自己搭建的Mongodb服务器。但用户在使用$text时,必须添加文本索引。

2024-07-17 16:12:32 1454

原创 Mongodb多键索引中索引边界的混合

索引边界定义了索引值的区间段。Mongodb在查询时,用这个区间段来查询索引中的数据。当用户针对索引字段指定多个查询条件时,mongdb尝试合并这些查询条件的区间范围来计算出更小的范围区间,来获得更快的查询速度并减少资源利用。

2024-07-16 17:21:37 1264

原创 Mongodb数组字段索引之多键索引

多键索引,包含并排序了字段中的数组数据。多键索引,能够改善数组字段的查询性能。用户不需要显示的定义多键索引类型。当Mongodb构建索引时,看到该字段是数组字段,就会自动的创建多键索引。Mongodb可以为普通类型数据数组(如字符串数组,数字数组)和嵌入式文档数据来构建多键索引。如果一个数组包含相同值的多个元素,则Mongodb只会选择这些元素中的一个来放入索引当中。下面的图中描述了多键索引的结构。有一个collection集合,字段addr是文档类型的数组。现在为addr数组中的zip字段建立索引。

2024-07-16 14:06:24 834

原创 Mongodb使用复合索引对查询结果排序

Mongodb的复合索引,给多字段查询带来了极大的好处,提高了多字段查询的性能。那么,对于查询后结果的排序,Mongodb复合索引是否能够有同样的优势呢?考虑下面的场景,一款移动游戏页面上展示了积分领先榜,包含了积分排序,活动每个积分的用户和用户积分更新时间。但是,建立的复合索引,如果不符合查询条件指定的顺序或者反向排序时,该索引不能够支持到该查询和排序。除此之外,排序时指定的字段顺序与索引顺序不一致时,也不能使用索引进行排序。该索引能够提高查询排序效率,索引指定的字段和排序,与查询条件相同。

2024-07-15 17:16:31 347 2

原创 Mongodb复合索引

复合索引是使用集合当中文档两个或多个字段构成的索引。索引中收集和排序了用户指定的字段,按照用户指定的顺序,依次分组排序。下图展示了一个复合索引的结构。用户使用userid正序和分数倒序建立的复合索引。在mongodb索引当中,先按照userid字母表顺序正序排列,然后在每一个userid下面,分数按照倒序来排列。在通用的查询字段上添加索引,能够增加索引覆盖查询的机会。索引覆盖查询是只能够完全使用索引来执行的查询,不需要扫描文档数据来返回结果。

2024-07-15 17:15:54 820

原创 记录一次数据库连接失败的事件

好吧,又一段时间,DBA回复说, OEM占用了数据库连接,而且他已经打不开OEM了,再问,他说正在杀session。找DBA, DBA给的第一个原因,是防火墙挡住了。发邮件找防火墙团队,开防火墙,但防火墙开通后,还是报同样的问题。半个小时后,DBA说删完了,但还有另外一个问题,一个账号建立了几百个数据库连接,数据库连接数被占满了。OracleDB有很多日志产生,数据库mountpoint满了,DBA正在删日志。数据库连接被占满了。删完了,应用可以连上数据库了,OEM也可以正常使用了。所以,是数据库的问题。

2024-07-12 14:53:54 401 2

原创 Mongodb单字段索引详解

单字段索引,是使用集合中文档的一个字段来建立的索引。mongodb默认为_id字段建立了索引。用户可以按照实际业务需求,添加建立新的单字段索引来提高查询效率。mongodb支持在文档中的任何一个字段建立单字段索引,包括文档的顶级字段,针对嵌入式文档建立索引或者针对嵌入式文档的某个字段建立索引。当用户对嵌入式文档字段建立索引时,用户查询条件当中用来过滤的文档,需要与集合索引中的文档严格相等时,才能使用索引。包括在查询条件中输入文档的字段顺序。

2024-07-11 08:35:29 824

原创 Mongodb索引类型简介

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第88篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。索引能够提高查询效率,本文结合官方文档,简单介绍索引的类型。不同类型的索引,能够支持不通过类型的数据和查询。

2024-07-11 08:34:16 637

原创 Mongodb索引的删除

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第87篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。Mongodb的索引,大多时间都会提高集合的数据查询效率。但针对查询字段的多个索引,可能会使Mongodb选择错误的索引,而对查询效率产生负面影响。同时,数据库管理人员也需要定期查看索引的使用情况 ,需要将不使用的索引清理掉。减少对数据插入和更新产生的影响。而在索引的构建输入错误的名称,或者重新命名索引时,也需要删除索引。

2024-07-08 10:37:49 974

原创 Mongodb索引的创建与命名

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第86篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。MongoDB支持用户添加索引,来提高针对某些字段重复查询的效率。本文通过整理官方文档,介绍Mongodb索引的创建和命名。

2024-07-08 09:54:35 662

原创 AI让大龄程序员重新焕发活力

大龄程序员。

2024-07-07 07:03:23 534

原创 Mongodb索引使用限制

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第85篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。通过在Mongodb添加索引,能够提高Mongodb查询效率。但在索引在使用当中也会有一些限制。本文结合官方文档,介绍Mongodb索引使用上的一些限制。

2024-07-05 17:22:00 970

原创 Mongodb索引简介

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第84篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。在Mongodb当中,为集合添加索引能够提高查询效率。如果没有索引,Mongodb必须扫描集合中的每一个文档数据来返回查询结果。如果集合当中包含查询合适的索引,Mongodb就可以使用该索引限制扫描文档的数量。尽管索引能够提高查询效率,但为集合添加索引会对Mongodb数据写入性能产生负面的影响。

2024-07-05 16:41:59 530

原创 影响Mongodb数据写入性能的因素

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第83篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。本文结合Mongodb的官方文档,探讨影响Mongodb写入操作的几个因素。

2024-07-03 16:41:38 739

原创 Mongodb性能优化方法

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第82篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。Mongodb与其他数据库类似,当面临大量数据查询时,会出现各种各样的性能问题。本文结合Mongodb的官方文档,整理几个优化Mongodb查询的技巧。

2024-07-03 14:55:19 909

原创 Mongodb集群中的分布式读写

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第81篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。本文简单介绍Mongodb的分布式操作。mongodb支持复制集和分片集合,本文结合官方文档,整理介绍复制集和分片结合的数据读取。

2024-07-01 11:26:15 928

原创 志愿填报,地域高校优先,选大平台,任你飞驰

但有时候“鱼与熊掌不可兼得”,在分数受限的条件下,是选择一个心仪的专业还是选择一个知名度更高的学校?无论你是倾向于专业优先,还是学校优先,或是有其他独到的见解,我们都期待你的分享!擅长学习的人,必定不会固定在某一个专业领域,其自身学习知识的方法,可以复制到各个行业当中,无惧专业限制。所以,坚持学校,城市优先,对学生的成长空间会更加广阔。名校学生有很多实习比赛的机会,无论是校内比赛,还是校际间,国家级乃至国际比赛。而名校注重学生综合能力发展,让学生不只获得专业能力,更获得学习的本领,解决事情的方法。

2024-06-30 11:12:58 402

原创 Mongodb使用索引进行查询优化

为集合建立合适的索引,能够有效的减少查询操作时扫描数据的数量 ,从而提高查询效率,简化了mongodb内部查询工作。如原来的某个查询需要进行全表扫描。当集合中有1000条数据时,可能需要逐一扫描这1000条数据,才可以返回查询结果。而当为查询字段添加索引后,通过索引,直接定位到查询结果,可能会极大的减少扫描文档数据的数量。

2024-06-28 10:04:35 965

原创 一个Mongodb案例-使用地理信息查询酒店

mongodb的地理信息索引能够方便快速的让用户查询包含地理信息的集合。包括查询地理信息位置,地理信息覆盖范围查询和计算等。为了展现mongodb在地理信息处理的能力和地理信息不同的处理方法,本文向你介绍了一个编写简单地图应用查询的过程。本文简单介绍了地理信息索引的概念,然后演示了使用方法$geoWithin, $geoIntersects和$nearSphere查询地理信息。假设你现在正在研发一个小的地图应用,来帮助客户查找纽约的酒店。使用$geoIntersects确认用户当前街区的地理位置信息。

2024-06-26 15:35:34 1091

原创 Mongodb地理信息数据查询

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第78篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。通过阅读文档,了解Mongodb除了支持文档查询外,还支持地理信息坐标及临近查询。本文就对Mongodb对地理信息查询的支持进行介绍。

2024-06-26 11:41:53 1255

原创 Mongodb中的基本地理信息元素

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第77篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。Mongodb支持地理位置信息查询。借助Mongodb地理信息查询,用户可以完成简单的地理信息计算,包括计算欧式距离,确定临近点等。本文介绍Mongodb支持的地理信息对象类型。Mongodb的地理信息查询,依赖于WGS84坐标系。

2024-06-24 11:28:40 600 1

原创 Mongodb批量写入操作bulkWrite()

Mongodb提供了针对单一集合写操作批量执行的方法。在批量写操作当中,Mongodb也允许用户自由定义数据提交的方式。通过db.collection.bulkWrite()方法,用户能够对单一集合进行数据插入,更新和删除操作。当然, 方法db.collection.insertMany()也是一种批量写入操作。

2024-06-24 09:13:29 1016

原创 Mongodb在UPDATE中使用二进制运算更新字段

bit操作符,对指定字段进行二进制更新。该操作符支持二进制与运算,或运算和异或运算。按照下面的形式,使用$bit操作符。$bit操作符,只能应用在整型数值类型字段的更新。更新嵌入式文档或嵌入式数组是,需要使用点操作符。行为自mongodb5.0开始,UPDATE操作按照字段名称的字典顺序更新字段。当字段中包含数字时,按照数字顺序依次更新字段。当然,对一个文档的多个字段操作,是原子性的。mongodb 5.0版本以后,向$bit传入空表达式({ })时,mongodb不再抛出错误。

2024-06-19 08:27:04 919

原创 Mongodb UPDATE使用$sort将数组重新排序

sort方法在$push操作过程中,修改数组元素的排序。$sort方法,必须和$each共同使用。mongodb允许用户传递一个空的数组给$each方法,保证用户无须向数组中插入元素也可以将数组进行排序。$sort方法,按照下面的形式来使用。$push: {: {对于sort specification, 当对非文档数组进行排序,或对整个文档作为整体进行排序时,正序可以指定1, 倒序可以指定为-1.当对文档字段进行排序时,指定要排序的字段和排列顺序。不需要添加数组字段的字段名称。

2024-06-18 08:27:44 782

原创 Mongodb UPDATE使用$slice限制更新后数组长度

slice操作符限制了在$push操作完成后,数组元素的数量。在投射操作当中,$slice指定了在一次读操作中返回数组元素的数量。$slice操作符,必须和$each操作符一起使用。当没有向数组字段插入新元素的需求时,用户可以向$each传递一个空数组保证$slice能够正常使用。语法如下$push: {<field>: {其中, <num>可以是0,表示将数组所有元素删掉。可以是负数,表示保留数组后面的指定元素。可以是正数,表示保留数组排在前面的几个元素。

2024-06-18 08:26:57 582

原创 Mongodb UPDATE, 使用$position指定向数组中插入新元素的位置

position操作符,指定了数组更新使用$push时,插入元素的位置。当用户向数组元素插入数据,不指定位置时,默认将元素插入到数组结尾。$position操作符,一定要和$each操作符搭配使用,按照下面的形式。$push: {<field>: {其中<num>指定了数组中的位置,从0开始的位置索引。当<num>为0或正数时,表示从数组第一个元素开始。当<num>大于数组当前元素数量时,将新元素插入数组的最后一个元素之后。当<num>为负数时,表示从数组的最后一个元素开始向前指定某个位置。

2024-06-17 09:58:01 668

原创 Mongodb中使用$each向数组字段插入多个元素

each操作符应用在UPDATE操作中的$addToSet和$push操作符当中。与$addToSet搭配使用时,将数组中的多个值插入到数组字段当中。当指定插入的元素不存在时,数据才插入目标数组。按照下面的形式与$addToSet搭配使用。与$push操作符搭配使用,将指定数组中的所有元素插入到目标数组。当然,$push与$each操作符混合使用时,还可以搭配$position, $slice, $sort等操作符。$push与$each搭配使用时,按照下面的形式。

2024-06-17 09:11:08 551

原创 MongoDB中UPDATE操作$pullAll

与$pull有所不同,$pull操作通过指定一个查询条件或单个值来删除数组中的元素。而$pullAll删除所有在指定列表中的数组元素。按照UPDATE操作中按照下面的形式,使用$pullAll.删除嵌套文档或数组中的元素,使用点操作符。

2024-06-14 07:08:10 1172

原创 Mongodb在UPDATE操作中使用$push向数组中插入数据

在update操作中,使用$push操作符向数组中插入新的元素。按照下面的语法,使用$push操作符当向嵌入式文档或数组中的数组字段插入元素时,使用点操作符。

2024-06-14 07:07:30 665

原创 Mongodb在UPDATE操作中使用$pull操作

在UPDATE中使用$pull操作符,删除数组中的指定元素或删除符合条件的数组元素。

2024-06-13 09:05:47 1095

原创 Mongodb使用$pop删除数组中的元素

pop操作符删除数组当中的第一个元素或最后一个元素。向指定数组字段传入参数-1,表示删除第一个元素。而向指定数组字段传入参数1,表示删除最后一个元素。按照下面的形式,使用$pop操作符当删除嵌套文档或数组中数组元素时,使用点操作符。向集合中插入数据。其中scores是数组字段,包含两个元素。构建查询语句,删除scores数组字段的最后一个元素10查询数据更新结果。

2024-06-13 09:04:44 775

原创 MongoDB使用$addToSet向数组中添加元素

使用方法$addToSet, 向数组中添加不存在的元素。如果元素已经存在于目标数组当中,则使用$addToSet不会更新当前文档。

2024-06-12 14:01:03 909

Mongodb地理信息查询案例数据集

mongodb官网给出了一个地理信息查询案例,通过介绍一个基于地图的酒店查询系统,展示了mongodb对地理信息查询的支持。但因为网络原因,导致该数据集无法下载。因此下载下来供各位研究学习使用。 原资源链接: https://raw.githubusercontent.com/mongodb/docs-assets/geospatial/neighborhoods.json https://raw.githubusercontent.com/mongodb/docs-assets/geospatial/restaurants.json 用户可以直接点击本资源下载

2024-06-26

一键生成10以内加减法

一键生成10以内加减法 一个三胎程序员奶爸为了解决奶妈幼小衔接问题中10以内加减法的应用 双击即可运行,绿色,免费

2024-06-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除