首页 > 其他分享 >zone区域

zone区域

时间:2024-07-08 12:10:35浏览次数:7  
标签:zone zipcode sh 区域 分片 NYC 范围

管理分片区域

在分片集群中,您可以创建代表一组分片的区域,并将一个或多个分片键值范围与该区域关联。MongoDB 只会将属于区域范围内的读取和写入路由到区域内的分片。

 

当连接到mongos实例时,使用sh.addShardToZone()方法将Zone与特定的shard相关联。单个碎片可能具有多个区域,多个碎片也可能具有相同的区域。

以下示例将区域NYC添加到两个碎片,将区域SFO和NRT添加到第三个碎片:
sh.addShardToZone("shard0000", "NYC")
sh.addShardToZone("shard0001", "NYC")
sh.addShardToZone("shard0002", "SFO")
sh.addShardToZone("shard0002", "NRT")

当连接到mongos实例时,您可以使用sh.removeShardFromZone()方法从特定碎片中删除区域,如以下示例所示,该示例从碎片中删除NRT区域:

sh.removeShardFromZone("shard0002", "NRT")

要定义区域的分片键范围,请在连接到mongos实例时使用该sh.updateZoneKeyRange() 方法。任何给定的分片键范围只能有一个指定区域。您不能重叠定义的范围。

 

在记录数据库中给定一个名为users的集合,由zipcode字段进行分片。以下操作分配:
曼哈顿和布鲁克林的两个邮政编码NYC区域 旧金山的一个邮政编码SFO区域

sh.updateZoneKeyRange("records.users", { zipcode: "10001" }, { zipcode: "10281" }, "NYC")
sh.updateZoneKeyRange("records.users", { zipcode: "11201" }, { zipcode: "11240" }, "NYC")
sh.updateZoneKeyRange("records.users", { zipcode: "94102" }, { zipcode: "94135" }, "SFO")

区域范围始终包括下边界但不包括上边界。

删除集合会删除其关联的区域/标签范围。

使用 shell 辅助方法sh.removeRangeFromZone()从区域中删除范围。

sh.removeRangeFromZone("records.user", {zipcode: "10001"}, {zipcode: "10281"})

删除集合会删除其关联的区域/标签范围。

使用sh.status()列出与集群中每个碎片关联的区域。您还可以通过查询配置数据库中的碎片集合来查看碎片区域。

以下示例使用该find()方法返回该NYC区域的所有分片。

use config
db.shards.find({ tags: "NYC" })

您可以在配置数据库的标记集合中找到所有命名空间的区域范围。sh.status()的输出还显示所有区域范围。

下面的示例使用该find()方法返回与NYC区域相关的任何范围。

use config
db.tags.find({ tag: "NYC" })

更新现有分片区域

1停止平衡器
sh.stopBalancer()
sh.removeRangeFromZone("records.user", { zipcode: "10001" }, { zipcode: "10281" } )
sh.updateZoneKeyRange("records.users", { zipcode: "11201" }, { zipcode: "11240" }, "NYC" )
sh.startBalancer()

按块划分数据

MongoDB 使用与集合关联的分片键将数据划分为特定分片所拥有的区块。区块由一系列分片数据组成。范围可以是区块的一部分或整个区块。平衡器在分片之间迁移数据。每个区块都有基于分片键的包含下限和排除上限。

 

 

标签:zone,zipcode,sh,区域,分片,NYC,范围
From: https://www.cnblogs.com/wonchaofan/p/18289664

相关文章

  • ArcPy|使用ArcPy实现区域统(ZonalStatisticsAsTable)计并将统计结果添加到原有要素的属
    ArcPy|使用ArcPy实现按区域统计并将统计结果添加到原有要素的属性表​ 使用ArcPy快速实现按区域统计,并将统计结果添加到原有属性表,因为ArcPy的接口中并没有直接添加这一选项,这里是选择输出了一个中间dbf文件,再将中间dbf文件与原有要素连接来实现。#-*-coding:utf-8-*-"""P......
  • linux timezone
      packages/tzlocal/unix.py",line56,in_get_localzonewithopen(tzpath,'rb')astzfile:IsADirectoryError:[Errno21]Isadirectory:'/etc/timezone   检查/etc/timezone:确保/etc/timezone是一个文件,而不是一个目录。 ls-l/etc/tim......
  • nodejs 安装使用ip2region - 实时精准的IP地址到区域运营商查询
    ip2region简介ip2region是一个高性能且高准确度的离线IP地址定位库和IP定位数据管理框架。它能够根据IP地址解析出对应的位置信息,包括国家、地区、省份、城市以及互联网服务提供商(ISP)。以下是ip2region的一些关键特性:高准确率:它声称有99.9%的准确率,这使得它......
  • 智能分析网关V4人员区域徘徊AI检测:算法原理介绍及技术应用场景
    一、引言在现代社会,随着科技的不断发展,视频监控系统已广泛应用于各个领域,如公共安全、商业管理、交通监控等。其中,区域徘徊检测算法作为一种重要的视频分析技术,能够有效地识别出特定区域内人员的徘徊行为,为安全管理和事件预防提供了有力支持。本文将以TSINGSEE青犀AI智能分析网关......
  • 阿里云-同区域下不同VPC互访
    阿里云-同区域下不同VPC互访。一是通过对等连接实现,二是通过云企业网实现对等连接:需要手动配置路由,同区域下VPC访问是免费的云企业网:自动识别路由,不分区域TR路由是收到的。一、通过对等连接实现1、在同区域下不同VPC下面各建立两台ECS。 2、建立对等连接 同地域VPC对等......
  • 面试官:JVM调优,主要针对是哪一个区域?JVM内存结构是怎样的?
    作为一个Java程序员,在日常的开发中,不必像C/C++程序员那样,为每一个内存的分配而操心,JVM会替我们进行自动的内存分配和回收,方便我们开发。但是一旦发生内存泄漏或者内存溢出,如果对Java内存结构不清楚,那将会是一件非常麻烦的事情!本文笔者将为大家详解Java内存结构。面试tips聊聊......
  • timezone包的用法
    文章目录1.概念介绍2.使用方法2.1获取所有时区2.2转换时区时间3.示例代码4.内容总结我们在上一章回中介绍了"分享一些好的Flutter站点"相关的内容,本章回中将介绍timezone包.闲话休提,让我们一起TalkFlutter吧。1.概念介绍我们在前面章回中介绍了获取当前......
  • Prism 7.0+ Region(区域)
    创建区域模块:MainWindow.xaml调用区域模块:<Grid><Grid.RowDefinitions><RowDefinitionHeight="28"/><RowDefinitionHeight="*"/><RowDefinitionHeight="28"/></Grid.Row......
  • 这些机器人声群可以静音房间的不同区域
    原文链接:https://www.therobotreport.com/these-robotic-acoustic-swarms-that-can-mute-different-areas-of-a-room/ Ateamofresearchersatthe UniversityofWashington hasdevelopedrobotic,shape-changingsmartspeakersthatcandeploythemselvestodivide......
  • PCL 基于点云RGB颜色的区域生长算法
    RGB颜色的区域生长算法一、概述1.1算法定义1.2算法特点1.3算法实现二、代码示例三、运行结果......