Facebook user_id 作为 MongoDB BSON ObjectId?

2024-01-08

我正在重建脸书上的恋人 http://www.facebook.com/loversapp与 Sinatra 和 Redis 一起。我喜欢 Redis,因为它没有很长的(12 字节)BSON 对象 ID http://www.mongodb.org/display/DOCS/Object+IDs#ObjectIDs-TheBSONObjectIdDatatype我正在为每个用户存储 Facebook user_ids 集。这些集合是 requests_sent、requests_received 和关系,它们都包含 Facebook 用户 ID。

我正在考虑切换到 MongoDB,因为我想使用它的地理空间索引。如果这样做,我想使用 FB 用户 id 作为 _id 字段,因为我希望集合较小,并且希望 JSON 响应较小。但是,BSON ObjectId 是否比整数(fb user_id)更好用(对于 MongoDB 更有效)?


据我所知,没有重大的效率差异except在某些情况下,例如按日期排序(因为 ObjectId 中包含日期时间等)

例如,您将无法简单地按_id您也会失去以下福利分片和分配 http://www.mongodb.org/display/DOCS/Object+IDs#ObjectIDs-SequenceNumbers。除此之外,虽然我个人仍然会使用 ObjectId...只要int是独一无二的(当然)......你应该没问题。

自从_id总是在查询中“返回”我想你会节省一点时间和数据传输(一点点。)

你甚至可以让你的_id如果你想要的话,可以是一个数组,它的所有索引都会很好地看到这一点answer https://stackoverflow.com/questions/4591397/effect-mongodb-id-generation-on-indexing/4591619#4591619(并不是说大多数时候我一定会推荐这样做。)

另请参阅:优化对象 ID http://www.mongodb.org/display/DOCS/Optimizing+Object+IDs

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Facebook user_id 作为 MongoDB BSON ObjectId? 的相关文章

  • 在 MongoDB 中查找 7 天前的记录

    我有一个包含对象的集合 如下所示 1 id ObjectId 551c6605e4c6ac495c923aab sender id ObjectId 551c6605e4c6ac495c923aac rep sender id 38 sen
  • 如何减少嵌套文档聚合管道中的展开阶段?

    我是 mongodb 新手 正在尝试使用嵌套文档 我有一个查询如下 db EndpointData aggregate group id EndpointId RequestCount sum 1 FirstActivity min Dat
  • Facebook 墙写应用

    我想知道我是否可以编写一个应用程序 它可以是我所有朋友的列表 只需在我选择的朋友的墙上发布一条消息即可 不是消息 而是墙上的帖子 所以看来我去了他们的墙并写了一条消息 他们不知道有一个应用程序正在向他们推送消息 也可以用 python 编写
  • Mongodb upsert 嵌入文档

    我每天每米有一份文件 如果它不存在 如何在数据数组中添加另一个子文档并创建整个文档 key 20120418 123456789 data Meter 123456789 Dt ISODate 2011 12 29T16 00 00 0Z
  • Mongoose 查询:删除“_id”属性,在结果中保留虚拟属性“id”

    我正在运行 Express js 应用程序 并且有以下设置 模型 js var schemaOptions toJSON virtuals true toObject virtuals true var modelSchema new mo
  • Mongoose嵌入式文档更新

    我在嵌入式文档更新方面遇到问题 我定义的架构 var Talk new Schema title type String required true content type String required true date type D
  • 在 Ruby/Sinatra 中解码 Facebook 的签名请求

    由于 Facebook 不赞成使用新的 FBML 我正在寻找一种新方法来创建 显示 选项卡 向粉丝显示一个版本 向非粉丝显示另一个版本的页面选项卡 Facebook 已将数据添加到signed request 中 当用户在应用程序中选择您的
  • Pandas:多索引列标题

    我有时间序列数据框df看起来像这样 time A B C D E 2011 01 04 15 55 00 0 003452 0 005303 0 016632 0 009611 0 000726 2011 01 04 15 56 00 0
  • 为什么我必须在 pybson (=bson, GitHub:py-bson) 之后安装 pymongo 才能成功导入 pybson?

    编辑 将问题放在网上很长时间后 我注意到这是一个衍生产品无法使用 pymongo 2 2 连接到 MongoDB 2 0 5 数据库 https stackoverflow com questions 10603754 cant conne
  • MongoDB 复合键:InvalidOperationException:{document}.Identity 不受支持

    我在水合由复合 ID 组成的类时遇到问题 该复合 ID 又具有基类 我收到一条错误消息InvalidOperationException document Identity is not supported 我试图写入数据库的类如下 pub
  • Mongodb 聚合嵌套组以及最近更新的文档

    我已经在我的集合中指定了人员 状态 如下所示 ASSIGN ID 583f84bce58725f76b322398 SPEC ID 58411771 STATUS 1 UPDATE DATE ISODate 2016 12 21T04 10
  • 如何验证 ObjectID

    使用 Joi 模式验证 是否可以针对 MongoDB ObjectID 进行验证 像这样的事情可能很棒 id Joi ObjectId required error errorParser 我发现如果我这样做 Joi object id J
  • Mongodb 数据库上的 SASL 身份验证失败

    我在尝试使用 PHP Mongodb 驱动程序连接到 Mongodb 时遇到问题 实际上我有一个名为 LRS 的数据库 它有一个名为 juano 的用户 在我的设置文件中带有密码 12345 我确信我编写了正确的配置 但是当我在 Larav
  • Apache Cassandra 中的复合索引

    我正在尝试设置一个 cassandra 列族 其中一些列上有二级索引 在读回数据时我需要进行过滤 在我最初的测试中 当我一起使用多个索引时 速度会变慢 这是我当前的配置方式 通过 cassandra cli update column fa
  • Mongodb 聚合数组中的子文档

    我正在使用 mongodb 作为后端实现一个小型应用程序 在此应用程序中 我有一个数据结构 其中文档将包含一个包含子文档数组的字段 我使用以下用例作为基础 http docs mongodb org manual use cases inv
  • 获取对象数组中每个嵌套对象的虚拟属性?

    所以我知道如何获取单个虚拟属性 如 Mongoose 文档中所述 PersonSchema virtual name full get function return this name first this name last 但如果我的
  • 自定义 Facebook FOSFacebookBundle 登录按钮

    有人知道如何自定义 更改 FosFacebook 登录按钮的图像吗 facebook login button autologoutlink true 并在整页 Facebook 登录上重定向 而不是在弹出窗口上重定向 这使用了 twig
  • 通过 facebook graph API 检索 facebook 用户的邮政编码

    我正在尝试使用 facebook graph API 检索用户的邮政编码 我正在使用以下代码 代码在php ini中 facebook new Facebook array appId gt APP ID secret gt APP SEC
  • 使用 facebook api 获取好友列表

    我有以下命令 它允许我在登录用户的 Facebook 墙上发布消息 facebook gt api uid feed POST array message gt Hello I m using the FB Graph API 即使用网址h
  • Mongoose 独特的验证不起作用。保存重复条目

    我正在开发一个 NodeJS 应用程序 其中express是框架 MongoDB是数据库 我正在使用猫鼬插件 我有一个父母模型 我已经添加了独特 真实到场 mobile 但是每当我添加相同的手机号码时 唯一性验证就会失败 除了保存重复的文档

随机推荐

  • Python:在满足特定条件时跳过代码块(计算)而不使用“if”语句

    我有一小段代码 我正在尝试以更好的方式编写它 因为它有一堆 if 语句 这是一些大项目的小代码 问题是这样的 当代码运行时 函数 f g 或 和 k 可以返回 None 或数值数据 每当返回 None 值时 就必须跳过其余的计算 因为无法完
  • 使用c#从存储过程中读取参数时出现问题

    我刚刚遇到一个奇怪的问题 我无法检索 sql 存储过程输出参数值 我被这个问题困扰了近2个小时 代码很简单 using var con new SqlConnection connectionString con Open SqlComma
  • Web 应用程序中的 HttpContext.Current 是否为 Null?

    Web 应用程序中的 HttpContext Current 是否为 null 假设未使用线程 更具体地说 它会在以下情况中为空吗 void Application OnError object sender EventArgs e see
  • 如何在一个 LINQ 请求中使用两个不同的数据上下文?

    任何人都可以帮助我解决下一个问题 如何在一个 LINQ 请求中使用两个不同的数据上下文 using var db new DataMapDataContext Connection using var dbAdd new DataMapDa
  • 将两个选择语句合并在两列中?

    我有两个选择语句 1 select Start Date from table1 where Start Date not in select End Date from table1 2 select End Date from tabl
  • ValueError: Tensor Tensor(...) 不是该图的元素。使用全局变量keras模型时

    我正在使用 Flask 运行一个 Web 服务器 当我尝试使用 vgg16 这是 keras 预训练的 VGG16 模型的全局变量 时 会出现错误 我不知道为什么会出现这个错误 也不知道它是否与 Tensorflow 后端有关 这是我的代码
  • 从文件中提取两个模式之间的行[重复]

    这个问题在这里已经有答案了 我需要从一个巨大的文件中提取两个匹配模式之间的特定行 比方说pattern1 在文件中唯一 匹配特定的line n and pattern2 文件中不唯一 匹配line m之后的下一个紧接着的比赛line n 然
  • 单击按钮打开模式

    下一个代码使用 Modal React 组件 export class AddWorkLogEditor extends React Component constructor props super props this addWorkL
  • 如何理解EXC_BAC_ACCESS (SIGSEGV) KERN_INVALID_ADDRESS日志?

    我正在用 Titanium 为 Android 和 IOS 开发一个应用程序 当我在应用程序中进行大量导航时 我会遇到随机异常并且应用程序崩溃 我怎样才能知道问题出在哪里 该应用程序解释起来有点复杂 它有两个窗口 第一个窗口用于 主 视图
  • 如何在不指定宽度的情况下并排浮动两个 div?

    我有两个 div 第一个内容不多 第二个内容很多 我希望它们并排浮动 以便第一个 div 仅与文本一样宽 第二个 div 填充剩余的水平空间 而且 我不想指定固定宽度 这是使用表格所需的外观 http jsfiddle net enRkR
  • 获取笔记本中 Bokeh 的选择

    我想选择绘图上的一些点 例如来自box select or lasso select 并在 Jupyter 笔记本中检索它们以进行进一步的数据探索 我怎样才能做到这一点 例如 在下面的代码中 如何将 Bokeh 中的选区导出到笔记本 如果我
  • 如何将 Vue VNode 渲染为字符串

    我正在尝试在我的 Vue 组件中使用 CSS 掩码 我需要完成实施toSvg下面的函数 这将渲染来自的 Vue VNodethis slots default到 SVG 字符串
  • 使用 Spark 和 scala 编写 CSV 文件 - 空引号而不是 Null 值

    我正在使用 Spark 2 4 1 和 scala 并尝试将 DF 写入 csv 文件 似乎在空值的情况下 csv 包含 是否可以删除那些空引号 val data Seq Row 1 a Row 5 z Row 5 null val sch
  • php数据库的最佳选择[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • ember.js:如何基于assets/vendor-*.js进行调试

    这是一个更普遍的问题 但我想其他人也遇到过这个问题 例如参见这个SO问题 Ember js 如何分析vendor js中的错误 https stackoverflow com questions 31273979 ember js how
  • 安卓FTP服务器

    我正在使用以下code http code google com p simpleftp source browse trunk src com googlecode simpleftp FTPServer java r 4使 Androi
  • Mongoose findOne 带有“非此即彼”查询[重复]

    这个问题在这里已经有答案了 我有一个 Mongo 用户数据库 正在使用 Mongoose 查询 我想做 findOne 来确定用户是否已经存在 我希望它首先搜索用户是否已存在带有电子邮件的用户 如果不存在 则应该搜索是否存在带有电话的用户
  • 使用 powershell 部署到 azure 函数

    有什么办法可以使用 powershell 脚本部署到 azure 函数吗 CI 不适用于我们 因为我们使用 octopus 部署来部署到我们所有的生产服务 因此 如果有一种方法可以使用 powershell 脚本进行部署 那将是有益的 Th
  • 不支持实时更新include_values

    我想更新 callback url https graph facebook com subscriptions 但问题是我无法添加 include values 这是一个非常大的问题 因为我的整个程序都与 错误 message 不支持 1
  • Facebook user_id 作为 MongoDB BSON ObjectId?

    我正在重建脸书上的恋人 http www facebook com loversapp与 Sinatra 和 Redis 一起 我喜欢 Redis 因为它没有很长的 12 字节 BSON 对象 ID http www mongodb org