如何在MongoDB中为用户存储大量的消息
How to store large amount of messages for users in MongoDB?
我需要运行我的cron脚本来为每个用户更新/插入(upsert)线程(电子邮件)。我有一个结构如下的集合:
{
"id" : ObjectId("57d7fc5fd34228c47059"),
"id" : "userid",
"primaryEmail" : "user@mail.com",
"threads_list" : [
]
},
{
"_id" : ObjectId("57d7346a73d128c47059"),
"id" : "uderid",
"primaryEmail" : "user2@mail.com",
"threads_list" : [
]
}
...
我想把线程存储到threads_list
。但是,如果它们已经存在,我也想更新它们,或者如果自上次更新以来没有更改,就跳过它,就像我为每个用户创建集合并使用具有{upsert:true}
参数的updateOne
方法更新存储在里面的电子邮件一样。
如果需要,我不介意将threads_list
属性更改为对象类型。
如何正确地完成?
试试这个代码
db.collection('users').update(
{ _id:user.id,
$set: {'primaryEmail': newEmail}
},
{ $addToSet: { 'threads_list': { $each: resp.labels } } }
);
相关文章:
- Ajax聊天消息重复而不仅仅是更新
- 将作用域存储在JSON中
- 使用javascript存储变量的最安全方式
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 如果localstorage为空,则显示欢迎消息
- 如何在chrome扩展中存储数据/结果,以及如何使用setTimeout使其只被调用一次
- 如何有效地将游戏数据存储在URL查询字符串中
- Ember.js-接口状态应该存储在哪里
- 绑定时将Parsley minlength消息作为选项传递时,未对其进行自定义
- 离开页面时弹出消息
- 如何解雇“;铁局部存储负载”;事件
- 关于确定数组中存储的最大值的不同方法的一些问题(加上输出消息问题)
- ExtJS 6 访问消息属性在存储同步的回调
- RXJS 会冷 OBS 存储所有消息
- Twilio API -从传入的文本消息中存储回复
- 节点聊天室,存储消息在数组或只是redis
- 如何在java脚本函数的Spring消息标记中存储var的值
- Firefox 40+:“找到高熵的本地存储”是怎么回事?消息的意思
- 如何在MongoDB中为用户存储大量的消息
- 如何使用nodejs将聊天消息临时存储在文件中