首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在mongodb中散列分片键是如何工作的?

在mongodb中散列分片键是如何工作的?
EN

Stack Overflow用户
提问于 2013-08-26 09:02:30
回答 1查看 930关注 0票数 0

我想知道mongodb中哈希分片键的内部结构是什么。例如,如果我的字段是一个时间戳,那么mongodb选择散列的常量是多少?

我猜关键字将是时间戳%N;N是什么?

如果这就是设计,我猜N不会随着时间而改变。如果N太小,我如何确定如果我有大量数据,那么在1个分片中不会有太多冲突?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2013-08-26 18:52:02

散列键使用文档中的数据和标准散列函数(MD5)来生成文档的散列值。例如,假设您的索引在{name: 'hashed'}上,并且您有以下文档:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{name: 'John', height: 73}
{name: 'Zardosht', height: 68}

MongoDB将通过MD5散列函数运行'John''Zardosht',并获得随机形式的字节序列。然后,它将使用这些字节序列作为索引中使用的实际B树关键字。当您想要查询{name: 'John'}时,它会再次执行MD5散列,获得与之前相同的字节序列,然后实际对该值执行索引查找。

您可以尝试使用mongo shell,并实际查看这些值是什么:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 % mongodb-linux-x86_64-2.2.5/bin/mongo                 
MongoDB shell version: 2.2.5
connecting to: test
> db.runCommand({_hashBSONElement: {name: "John"}})
{
    "key" : {
        "name" : "John"
    },
    "seed" : 0,
    "out" : NumberLong("5553133884637223031"),
    "ok" : 1
}
> db.runCommand({_hashBSONElement: {name: "Zardosht"}})
{
    "key" : {
        "name" : "Zardosht"
    },
    "seed" : 0,
    "out" : NumberLong("8641066842148283865"),
    "ok" : 1
}

请注意,在我描述的任何内容中都没有N,所以您不必担心这样的限制。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18440399

复制
相关文章
iOS推送APNs
APNs,即 Apple Push Notification Service,依托一个或几个系统常驻进程运作,是全局的(接管所有应用的消息推送),可看作是独立于应用之外,设备与苹果的服务器之间维持一个长连接进行消息传递。
Helloted
2022/06/08
3.6K0
iOS推送APNs
iOS开发——APNs推送
访问 苹果开发者账户,进入帐号首页,选择Certificates, Identifiers & Profiles
羊羽shine
2019/05/29
1.4K0
Swift Perfect - iOS消息推送(APNs)之获取 APNs 授权码
image.png 引言 Perfect 是一个完整和强大的工具箱,框架和应用程序服务器为Linux,iOS和MacOS(OS X)。它提供了Swift工程师为开发面向客户端和服务器端应用程序的Swift编程语言开发轻量级,可维护,可扩展的应用程序和其他REST服务所需的一切。 接下来几篇我对 Perfect 框架进行记录。感兴趣的可以看: Swift Perfect - Ubuntu 服务器部署 Swift Perfect - 七牛上传文件 Swift Perfect - iOS消息推送(APN
LeeCen
2018/10/11
1.6K0
Swift Perfect - iOS消息推送(APNs)之获取 APNs 授权码
APNs推送
即时通讯中需要对离线消息进行接收,此时就需要离线推送即当应用没有退出登录的情况下,被系统或者用户杀掉进程仍然能收到IMSDK消息提醒。云通讯iOS客户端采用的是APNs推送服务,以下提供整个处理流程及参考代码。
腾讯视频云-Zachary
2019/09/07
2.2K0
APNs推送
APNS推送原理
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/48493363
用户1451823
2018/09/12
1.7K0
苹果APNS推送服务
项目地址:https://github.com/SuLingGG/OpenWrt-Buildbot
Qicloud-W
2023/03/07
1.3K0
推送-iOS本地通知
从 iOS 10 新增的 UserNotifications Framework 可以发现,Apple 整合了原有散乱的 API,并且增加了许多强大的功能。以 Apple 官方的角度来看,也必然是相当重视推送服务对 App 的影响、以及对 Apple iOS 生态圈长远发展的影响。
進无尽
2018/09/12
7.4K1
推送-iOS本地通知
iOS推送调试工具Easy APNs Provider的使用
MelonTeam
2018/01/04
3.1K0
iOS推送调试工具Easy APNs Provider的使用
Mac上自己推送iOS通知到设备
打开“终端(terminal)”,然后(注意,sudo需要的密码就是系统的root帐号密码)运行“sudo apachectl start”
用户6094182
2019/08/23
1.5K0
Mac上自己推送iOS通知到设备
给iOS模拟器推送远程通知
苹果刚刚发布了具有大量功能的Xcode 11.4 beta。值得注意的功能之一是在模拟器中模拟远程推送通知,这意味着现在可以在模拟器中触发远程通知。
韦弦zhy
2020/03/20
2.6K0
给iOS模拟器推送远程通知
苹果APNS推送效率研究总结
年底这段时间一直在研究苹果的APNS(英文全称:Apple Push Notification Service)服务,进行了很多尝试,积累了一些经验。写出来总结一下,有不对的地方欢迎指正。
魏杰
2022/12/23
8910
【IOS开发进阶系列】远程消息推送专题
        Provider是指某个iPhone软件的Push服务器,APNS是Apple Push Notification Service的缩写,是苹果的服务器。
江中散人_Jun
2023/10/16
8370
【IOS开发进阶系列】远程消息推送专题
推送-远程通知推送教程
本文翻译自:raywenderlich.com,原文作者:Jack Wu,译者:JMStack
進无尽
2018/09/12
4K0
推送-远程通知推送教程
iOS 推送手机消息背后的技术
作者:allenzzhao,腾讯  IEG运营开发工程师 消息推送我们几乎每天都会用到,但你知道iOS中的消息推送是如何实现的吗?本文将从推送权限申请,到本地和远程消息推送,再到App对推送消息的处理等多个步骤,详细介绍iOS中消息推送的工作流程。 1、概述 消息推送是一种App向用户传递信息的重要方式,无论App是否正在运行,只要用户打开了通知权限就能够收到推送消息。开发者通过调用iOS系统方法就可以发起本地消息推送,例如我们最常见的闹钟应用,App能够根据本地存储的闹钟信息直接发起本地通知,因此即
腾讯技术工程官方号
2020/10/27
4K1
关于JPush(极光推送)那些事
可以看出,JPush iOS Push 包括 2 个部分,APNs 推送(代理)与 JPush 应用内消息。 红色部分是 APNs 推送,JPush 代理开发者的应用(需要基于开发者提供的应用证书),向苹果 APNs 服务器推送。由 APNs Server 推送到 iOS 设备上。 蓝色部分是 JPush 应用内推送部分,即 App 启动时,内嵌的 JPush SDK 会开启长连接到 JPush Server,从而 JPush Server 可以推送消息到 App 里
CC老师
2023/03/23
1.5K0
关于JPush(极光推送)那些事
iOS开发之远程推送
  说到远程推送,应该用的也挺多的,今天就基于SEA的云推送服务,做一个推送的小demo,来了解一下iOS中的远程推送是怎么一回事儿,首先你得有苹果的开发者账号,好咸蛋也差不多了,主要内容走起。   一、准备阶段     1.在苹果开发官网上申请推送证书之前需要一个名字叫做certSigningRequest文件。该文件在MAC系统中生成,用于在Apple网站上申请推送证书文件,下面是利用钥匙串生成该文件的步骤:       (1).打开Mac下的钥匙串-》钥匙串访问-》证书助理-》从证书颁发机构请求证书,
lizelu
2018/01/11
1.5K0
iOS开发之远程推送
基于APNs最新HTTP/2接口实现iOS的高性能消息推送(服务端篇)
本文原作者:liuyan731,原文地址:liuyan731.github.io/2017/12/05/How-To-Use-APNs-Pushy,内容有改动。
JackJiang
2018/08/29
5.2K1
点击加载更多

相似问题

iOS APNS缺少推送通知

14

iOS APNS世博会推送通知

10

php推送通知APNS沙箱

13

APNS PHP推送通知问题

14

APNS -通知推送ios:由对等PHP重置连接

23
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文