范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

MongoDB5。0新特性概览

  MongoDB 5.0标志着一个新的发布周期的到来,以更快地交付新特性给到用户。版本化API与在线重新分片相结合,使用户不必担心未来的数据库升级以及业务变化问题;本地原生时间序列数据平台也使MongoDB能支持更广泛的工作负载和业务场景;新的MongoDB Shell能够提升用户体验等均为MongoDB 5.0的功能。本文主要介绍MongoDB 5.0的新特性。  原生时间序列平台
  MongoDB 5.0通过原生支持整个时间序列数据的生命周期(从采集、存储、查询、实时分析和可视化,到在线归档或随着数据老化自动失效),使构建和运行时间序列应用程序的速度更快、成本更低。随着MongoDB 5.0的发布,MongoDB扩展了通用的应用数据平台,使开发能够更容易地处理时间序列数据,进一步扩展其在物联网、金融分析、物流等方面的应用场景。
  MongoDB的时间序列集合以高度优化和压缩的格式自动存储时间序列数据,减少了存储大小和I/O,以实现更好的性能和更大的规模。同时也缩短了开发周期,使您能够快速建立一个针对时间序列应用的性能和分析需求而调优的模型。
  创建时间序列数据集合的命令示例:  db.createCollection("collection_name",{ timeseries: { timeField: "timestamp" } } )
  MongoDB可以无缝地调整采集频率,并根据动态生成的时间分区自动处理无序的测量值。最新发布的MongoDB Connector for Apache Kafka实现了在本地支持时间序列,您可以直接从Kafka主题消息中自动创建时间序列集合,使您在收集数据的同时根据需要对数据进行处理和聚合,然后写入到MongoDB的时间序列集合。
  时间序列集合自动创建一个按时间排序的数据聚集索引,降低查询数据的延迟。MongoDB查询API还扩展了窗口函数,您可以运行分析性查询(例如移动平均数和累积总和)。在关系型数据库系统中,这些通常被称为SQL分析函数,并支持以行为单位定义的窗口(即三行移动平均线)。MongoDB更进一步,还增加了指数移动平均线、导数和积分等强大的时间序列函数,支持您以时间为单位定义窗口(例如15分钟的移动平均线)。窗口函数可用于查询MongoDB的时间序列和常规集合,为多种应用类型提供了新的分析方式。另外,MongoDB 5.0也提供了新的时间运算符,包括$dateAdd、$dateSubstract、$dateDiff和$dateTrunc,使您可以通过自定义的时间窗口对数据进行汇总和查询。
  您可以将MongoDB的时间序列数据与企业的其他数据相结合。时间序列集合可以与同一个数据库中的常规MongoDB集合放在一起,您不必选择一个专门的时间序列数据库(它不能为任何其他类型的应用提供服务),也不需要复杂的集成来混合时间序列和其他数据。MongoDB通过提供一个统一的平台,让您建立高性能和高效的时间序列应用的同时,也为其他用例或工作负载提供支持,从而消除了整合和运行多个不同数据库的成本和复杂性。  在线数据重新分片
  数据库版本
  特点
  实现方法
  MongoDB 5.0以前
  重新分片过程复杂且需要手动分片。方法一:先dump整个集合,然后用新的分片键把数据库重新加载到一个新的集合中。由于这是一个需要离线处理的过程,因此您的应用程序在重新加载完成之前需要中断停服较长时间。例如:在一个三分片的集群上dump和重新加载一个10 TB以上的集合可能需要几天时间。  方法二:新建一个分片集群并重新设定集合的分片键,然后通过定制迁移方式,将旧分片集群中需要重新分片的集合,按新的分片键写入到新的分片集群中。  该过程中需要您自行处理查询路由和迁移逻辑、不断检查迁移进度,以确保所有数据迁移成功。  定制迁移是高度复杂的、劳动密集型的、有风险的任务,而且耗时很长。例如:某个MongoDB用户花了三个月才完成100亿个document的迁移。
  MongoDB 5.0开始运行 reshardCollection 命令即可启动重新分片。  重新分片的过程高效。并不是简单地重新平衡数据,而是在后台将所有当前集合的数据复制并重新写入新集合,同时与应用程序新的写入保持同步。  重新分片是完全自动化的。将重新分片花费的时间从几周或几个月压缩到几分钟或几小时,避免了冗长繁杂的手动数据迁移。  通过使用在线重新分片,可以方便地在开发或测试环境中评估不同分片键的效果,也可以在您需要时修改分片键。  您可以在业务运行(数据不断增长)的情况下,按需改变集合的分片键(Shard key),而不需要数据库停机或在数据集合中进行复杂的迁移。您只需要在MongoDB Shell中运行reshardCollection命令,选择您需要重新分片的数据库和集合,指定新的分片键即可。
  reshardCollection: ".", key: 
  说明  :需要重新分片的数据库名称。  :需要重新分片的集合名称。  :分片键的名称。  当您调用 reshardCollection 命令时,MongoDB会克隆现有集合,然后将现有集合中所有oplog应用到新集合中,当所有oplog被使用后,MongoDB会自动切换到新集合,并在后台删除旧集合。  版本化API应用程序兼容性从MongoDB 5.0开始,版本化API定义了应用程序最常用的一组命令和参数(无论是数据库在年度重大发布还是季度快速发布期间,这些命令均不会改变)。通过将应用程序生命周期和数据库生命周期解耦,您可以将驱动程序固定在MongoDB API的特定版本上,即使数据库发生升级和改进,您的应用程序将可以继续运行数年而不需要修改代码。  灵活地添加新功能和改进内容版本化API支持MongoDB灵活地在每个版本中为数据库添加新的功能和改进内容(以新版本兼容早期版本的方式)。当您需要改变API时,可以增加新版本的API,并与现有版本化的API在同一台服务器上同时运行。随着MongoDB版本发布的加速,版本化API能够使您更快、更轻松地使用到MongoDB最新版本的功能特性。  Write Concern默认Majority级别
  从MongoDB 5.0开始, Write Concern 默认级别为majority,仅当写入操作被应用到Primary节点(主节点)且被持久化到大多数副本节点的日志中的时候,才会提交并返回成功,"开箱即用"地提供了更强的数据可靠性保障。
  说明   Write Concern 是完全可调的,您可以自定义配置 Write Concern ,以平衡应用程序对数据库性能和数据持久性的要求。  连接管理优化
  默认情况下,一个客户端连接对应后端MongoDB服务器上的一个线程( net.serviceExecutor 配置为synchronous)。创建、切换和销毁线程都是消耗较大的操作,当连接数过多时,线程会占用MongoDB服务器较多的资源。
  连接数较多或创建连接失控的情况称为"连接风暴",产生该情况的原因可能是多方面的,且经常是在服务已经受到影响的情况下发生。
  针对这些情况,MongoDB 5.0采取了以下措施:  限制在任何时候驱动程序尝试创建的连接数量,以简单有效的方式防止数据库服务器过载。  减少驱动程序监控连接池时的检查频率,给无响应或过载的服务器节点一个缓冲和恢复的机会。  驱动程序将工作负载导向具有最健康连接池的更快的服务器,而不是从可用的服务器中随机选择。
  以上措施,加上之前版本在mongos查询路由层的改进,进一步提升了MongoDB承受高并发负载的能力。  长时间运行的快照查询
  长时间运行的快照查询(Long-Running Snapshot Queries)增加了应用程序的通用性和弹性。您可以通过该功能运行默认时间为5分钟的查询(或将其调整为自定义持续时间),同时保持与实时事务性数据库一致的快照隔离,也可以在Secondary节点(从节点)上进行快照查询,从而在单个集群中运行不同的工作负载,并将其扩展到不同的分片上。
  MongoDB通过底层存储引擎中一个名为Durable history的项目实现了长期运行的快照查询,该项目早在MongoDB 4.4中就已实现。Durable history将存储自查询开始以来所有变化的字段值的快照。通过使用Durable history,查询可以保持快照隔离,即使在数据发生变化的情况下,Durable history也有助于降低存储引擎的缓存压力,使得业务可以在高写入负载的场景下实现更高的查询吞吐量。  新版MongoDB Shell
  为了提供更好的用户体验,MongoDB 5.0从头开始重新设计了MongoDB Shell(mongosh),以提供一个更现代化的命令行体验,以及增强可用性的功能和强大的脚本环境。新版MongoDB Shell已经成为MongoDB平台的默认shell。新版MongoDB Shell引入了语法高亮、智能自动完成、上下文帮助和有用的错误信息,为您创造一个直观、互动的体验。  增强的用户体验  更容易编写查询和聚合,更容易阅读结果。新版MongoDB Shell支持语法高亮功能,方便您区分字段、值和数据类型,以避免语法错误。如果仍然发生错误,新版MongoDB Shell也可以指出问题点并告诉您解决方法。  更快输入查询和命令。新版MongoDB Shell支持智能自动完成功能,即新版MongoDB Shell可以根据您连接的MongoDB的版本,为方法、命令、MQL表达式等给出自动完成选项的提示。
  示例:当您不记得某个命令的语法时,您可以直接从MongoDB Shell中快速查找该命令的语法。  高级脚本环境新版MongoDB Shell的脚本环境建立在Node.js REPL(交互式解释器)之上,您在脚本中可以使用所有的Node.js API和NPM的任何模块。您也可以从文件系统中加载和运行脚本(和旧版MongoDB Shell一样,您可以继续使用Load和Eval执行脚本)。  扩展性和插件新版MongoDB Shell具有易扩展性,使您能够使用MongoDB的所有功能以提高生产力。
  在新版MongoDB Shell中,允许安装Snippets插件。Snippets可以自动加载至MongoDB Shell中,且Snippets可以使用所有的Node.js API和NPM包。MongoDB也维护了一个Snippets仓库,提供了一些有趣的功能(例如分析指定集合模式的插件),您也可以自由地配置MongoDB Shell使用您选择的插件。
  说明  插件当前仅为MongoDB Shell的一个实验性功能。  PyMongoArrow与数据科学
  随着新的PyMongoArrow API的发布,您可以在MongoDB上使用Python运行复杂的分析和机器学习。PyMongoArrow可以快速将简单的MongoDB查询结果转换为流行的数据格式(例如Pandas数据框架和NumPy数组),帮助您简化数据科学工作流程。  Schema验证改进
  Schema验证(模式验证)是对MongoDB进行数据应用管理控制的一种方式。MongoDB 5.0中,模式验证变得更加简单和友好,当操作验证失败时都会产生描述性的错误信息,帮助您了解不符合集合验证器的验证规则的文档及原因,以快速识别和纠正影响验证规则的错误代码。  可恢复的索引创建任务
  MongoDB 5.0支持将正在进行中的索引创建任务在节点重新启动后自动会恢复至原来的位置,减少计划中维护动作对业务的影响。例如:重新启动或升级数据库节点时,您不需要担心当前正在进行的大集合索引创建任务失效。  版本发布调整
  由于MongoDB支持很多版本和平台,每个发布版本都需在20多个MongoDB支持的平台上进行验证,验证工作量大,降低了MongoDB新功能的交付速度,所以从MongoDB 5.0开始,MongoDB发布的版本将分为Marjor Release(大版本)和Rapid Releases(快速发布版本),其中Rapid Releases作为开发版本提供下载和测试体验,但不建议用在生产环境。

现如今5G需要靠国内运营商保命,局面已经快速恶化自从5G基站开始建设以来,国内的4G网络已经出现大范围的降速和信号不良等问题。对于此问题,国内运营商否认故意降速4G网络,声称是用户使用量太大,而导致的。之后,一位国内运营商的内部硬气!苹果寻找国内供应商,被两大中企果断拒绝苹果手机拥有着大量的果粉,即使是在国内的销量也是非常的惊人。因此很多的供应商花大价钱购进低价卖出,也要加入苹果手机产业链当中。这样一来,苹果手机的业务量是如日中天,可是就有两大中企永久免费!亚马逊运营必备的关键词工具你使用了吗?亚马逊作为全球最大的购物类网站,大部分人会选择在该平台购物。据调查显示,有74的消费者在购物时会先在亚马逊平台搜索关键词,浏览商品。而80的订单都来自搜索排名Top3的产品,可以看亚马逊卖家把关键词做到首页,只需要做好这几步把关键词优化到亚马逊首页,是很多亚马逊卖家都想做的事情。我们都知道消费者在亚马逊平台购物,大部分是通过关键词搜索到商品页面。据数据调查显示,有74的消费者是通过关键词搜索,且80的反查关键词对比助力亚马逊卖家抢位关键词反超排名反查关键词是指反向侦察竞争对手的关键词,优秀的竞品永远是最好的学习对象。研究对手关键词本质上还是为我所用,制定运营策略,进行关键词抢位。反查竞品关键词,不仅能够让亚马逊卖家一目了然亚马逊评论直接影响用户购买?做好评论分析100提升销量据小数了解,超过80的亚马逊买家在购买产品之前都会阅读评论,最终购买行为会受评论影响。因此,对于卖家而言,买家的评论是至关重要的。我们都知道亚马逊是一个以买家为中心的购物平台,商品罕见,美军侦察船再现东沙,美军频繁测绘南海地形到底意欲何为?根据南海态势感知报道,10月2526日,美海军玛丽西尔斯号海洋测量船前往东沙群岛东南海域进行了一次快速测绘作业,27日已经驶离至巴士海峡附近。看到这则消息,明显是美军再次对南海地形英国罕见服软,美国承认落后,19日的消息让全世界看到中国的崛起随着英国媒体金融时报10月16日报道,中国在8月试射的一枚可携带核弹头的高超音速武器,不但具备环绕地球飞行的能力,还可以重返大气层后凭借极高速度突破反导系统的拦截,攻击地面目标。这理想即将与小鹏香港见,蔚小理赴港上市二缺一继小鹏汽车回港上市后后,理想汽车登陆港股进程也在加速。7月26日,理想汽车通过港交所上市聆讯。如一切顺利,理想汽车预计将于8月正式在港交所挂牌上市。早在今年3月,市场就有消息称,造你们知道1896年2020年历届奥运会金牌长什么样子吗?第一届雅典夏季奥运会奖牌冠军被授予银质奖牌橄榄枝花环和一张奖状,亚军被授予铜质奖牌月桂花冠和一张奖状。奖牌正面是希腊神话中的主神宙斯的头像。宙斯的手上托着一个地球,球上立着希腊胜利罕见放映镜头kollmorgen转接中画幅胶片相机拍摄样片kollmorgenopticalcorpnorthamptonb300F1。5放映镜头资料及样片kollmorgenopticalcorp是一家成立于1916年的美国公司,这个公
京东到家程序员删库跑路!讲一讲MySQL数据备份杀手锏binlog网上也经常看到一些段子,某公司程序员对工作不满,删库跑路,老板损失惨重,欲哭无泪。这不最近又爆出一例,京东到家程序员离职当天删库跑路!那么有没有什么解决方案?即使数据库真的被删了,钛晨报滴滴被曝裁员20,几乎波及全线业务徐梦桃夺得自由式滑雪空中技巧决赛金牌携程宣布在国内率先开启混合办公钛媒体综合据晚点LatePost消息,近日,滴滴旗下网约车两轮车货运等各条出行业务都收到了裁员通知,总体裁员比例约为20。国际化部门尚未受影响,还在持续招人中。知情人士认为,滴滴国招商局创投领衔轻橙时代超额完成preA轮融资本报记者黄琳赵毅深圳报道新能源汽车热度居高不下,新势力赛道仍在继续添员,而资本也乐于倾囊相助。近期,造车新势力轻橙时代宣布完成PreA轮融资。天眼查数据显示,轻橙时代该轮融资由招商兑现承诺!马斯克捐赠逾500万股股票解决全球饥饿问题中新经纬2月15日电据华尔街日报中文网报道,特斯拉首席执行官马斯克去年11月捐赠了500多万股特斯拉股票。就在他捐赠股票的几天之前,联合国世界粮食计划署提出了一项使用全球首富60亿刚刚,苹果提前报备多款新品熟悉苹果产品发布计划的小伙伴都知道,每次苹果新品发布之前,都需要在欧亚经济委员会(EEC)的数据库中注册新产品。苹果通常会在新品发布前的13个月进行新产品注册。在每年年初,以及每年左手光伏风电,右手新能源车,法拉电子业绩潜力大?新能源汽车与传统燃油车的根本区别之处在于电动化,而电动化正是薄膜电容器发挥作用的产业舞台。电容器位列三大被动电子元件(电阻电容器电感器),属于基础元器件。那什么是电容器?简而言之,年轻人的第一部ampampquot奔驰ampampquot?小米新机官宣联动奔驰三千块就能拿下这几年手机厂商的创新能力是越来越弱,手机外观和功能陷入停滞不前的状态。其实这也不能怪厂商,毕竟手机进化到现在这个地步想要再有大突破的确非常难,不过有原因归有原因,消费者可不会买账,5000万像素四摄旗舰价格下滑,2K曲面屏65W,价格新低手机市场今年的国内手机市场厂商发展中啊,有一个非常奇特的市场发展情况,厂商对处理器产品的应用可以说是有些混乱。国内的手机市场厂商现阶段在市场上的产品开始规模不小的应用起来了骁龙77华为Mate40Pro最新售价确认,全平台都在降价,5G版本也跌至新低国内高端手机市场中,唯一能和苹果手机正面较量的只有华为,不仅是因为国内消费者们已经认可了华为高端手机的价值,还和华为旗舰自身确实优秀有关,曾经的华为旗舰不仅有自己的麒麟处理器,还支雷军再失猛将,小米12号创始员工李伟星离职,曾一起喝粥创立小米英特尔54亿美元收购Tower半导体极客头条CSDN的读者朋友们早上好哇,极客头条来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。整理梦依丹出品CSDN(IDCSDNnews)一分钟速览新闻点!小米12号创始员工李伟小米MIX4为什么沦落了?前置不行老实说就是那帮米黑故意夸大的。请问国产全面屏有哪家做的比小米mix4好?请问国产全面屏前置有哪家比mix4做的好?再请问,华为荣耀ov不是很牛吗?为什么没去做款真正的全面屏