nosql

MongoDB select distinct and where

心不动则不痛 提交于 2021-02-20 10:17:23
问题 So I'm doing a select distinct which works, but I also want to add another key. $data = $this->db->command(array("distinct" => "scores","key"=>"target_user")); I need something like this: SELECT DISTINCT target_user FROM scores where seen = 1 Can it be done in mongo? 回答1: You can do it as follows by using distinct query : db.scores.distinct("target_user", {"seen":1}) Running distinct query using Aggregate Framework is shown below. Inserted following records into MongoDB. db.scores.insert(

MongoDB select distinct and where

旧城冷巷雨未停 提交于 2021-02-20 10:16:56
问题 So I'm doing a select distinct which works, but I also want to add another key. $data = $this->db->command(array("distinct" => "scores","key"=>"target_user")); I need something like this: SELECT DISTINCT target_user FROM scores where seen = 1 Can it be done in mongo? 回答1: You can do it as follows by using distinct query : db.scores.distinct("target_user", {"seen":1}) Running distinct query using Aggregate Framework is shown below. Inserted following records into MongoDB. db.scores.insert(

Feed流系统设计-总纲

微笑、不失礼 提交于 2021-02-17 07:20:15
https://mp.weixin.qq.com/s/ccxM2thPbzg5vDWgGVJ5vQ 作者:少强 简介 差不多十年前,随着功能机的淘汰和智能机的普及,互联网开始进入移动互联网时代,最具代表性的产品就是微博、微信,以及后来的今日头条、快手等。这些移动化联网时代的新产品在过去几年间借着智能手机的风高速成长。 这些产品都是Feed流类型产品,由于Feed流一般是按照时间“从上往下流动”,非常适合在移动设备端浏览,最终这一类应用就脱颖而出,迅速抢占了上一代产品的市场空间。 Feed流是Feed + 流,Feed的本意是饲料,Feed流的本意就是有人一直在往一个地方投递新鲜的饲料,如果需要饲料,只需要盯着投递点就可以了,这样就能源源不断获取到新鲜的饲料。在信息学里面,Feed其实是一个信息单元,比如一条朋友圈状态、一条微博、一条咨询或一条短视频等,所以Feed流就是不停更新的信息单元,只要关注某些发布者就能获取到源源不断的新鲜信息,我们的用户也就可以在移动设备上逐条去浏览这些信息单元。 当前最流行的Feed流产品有微博、微信朋友圈、头条的资讯推荐、快手抖音的视频推荐等,还有一些变种,比如私信、通知等,这些系统都是Feed流系统,接下来我们会介绍如何设计一个Feed流系统架构。 Feed流系统特点 Feed流本质上是一个数据流,是将 “N个发布者的信息单元” 通过 “关注关系”

Feed流系统设计

六眼飞鱼酱① 提交于 2021-02-17 06:56:58
点击上方蓝色“ 肉眼品世界 ”,选择“设为星标” 来源 :r6d.cn/E8pb 差不多十年前,随着功能机的淘汰和智能机的普及,互联网开始进入移动互联网时代,最具代表性的产品就是微博、微信,以及后来的今日头条、快手等。这些移动化联网时代的新产品在过去几年间借着智能手机的风高速成长。 简介 差不多十年前,随着功能机的淘汰和智能机的普及,互联网开始进入移动互联网时代,最具代表性的产品就是微博、微信,以及后来的今日头条、快手等。这些移动化联网时代的新产品在过去几年间借着智能手机的风高速成长。 这些产品都是Feed流类型产品,由于Feed流一般是按照时间“从上往下流动”,非常适合在移动设备端浏览,最终这一类应用就脱颖而出,迅速抢占了上一代产品的市场空间。 Feed流是Feed + 流,Feed的本意是饲料,Feed流的本意就是有人一直在往一个地方投递新鲜的饲料,如果需要饲料,只需要盯着投递点就可以了,这样就能源源不断获取到新鲜的饲料。在信息学里面,Feed其实是一个信息单元,比如一条朋友圈状态、一条微博、一条咨询或一条短视频等,所以Feed流就是不停更新的信息单元,只要关注某些发布者就能获取到源源不断的新鲜信息,我们的用户也就可以在移动设备上逐条去浏览这些信息单元。 当前最流行的Feed流产品有微博、微信朋友圈、头条的资讯推荐、快手抖音的视频推荐等,还有一些变种,比如私信、通知等

C++中tuple类型

烂漫一生 提交于 2021-02-16 05:36:39
tuple是C++11新标准里的类型。它是一个类似pair类型的模板。pair类型是每个成员变量各自可以是任意类型,但是只能有俩个成员,而tuple与pair不同的是它可以有任意数量的成员。但是每个确定的tuple类型的成员数目是固定的。 1.tuple的简单使用 当我们希望将一些不同类型的数据和成单一对象时,可能大家会想到结构体(类),tuple是一种比结构体来的更加方便的类型 tuple的简单使用实例: #include<iostream> //定义在此头文件下 #include<tuple> using namespace std; int main(void) { tuple<int,int,float> tp(1,2,3.1); cout<<"第一个元素为:"<<get<0>(tp)<<endl; cout<<"第二个元素为:"<<get<1>(tp)<<endl; cout<<"第三个元素为:"<<get<2>(tp)<<endl; return 0; } 2.tuple所支持的操作 操作 说明 make_tuple(v1,v2,v3,v4…vn) 返回一个给定初始值初始化的tuple,类型从初始值推断 t1 == t2 当俩个tuple具有相同数量的成员且成员对应相等时 t1 != t2 与上一个相反 get (t) 返回t的第i个数据成员 tuple_size:

MongoDB in PHP - How do I insert items into an array in a collection?

假装没事ソ 提交于 2021-02-15 11:58:13
问题 This has to be easy, but i can't seem to figure it out... Let say i had a collection users and this is the first item in the collection: { "_id" : ObjectId("4d8653c027d02a6437bc89ca"), "name" : "Oscar Godson", "email" : "oscargodson@xxx.com", "password" : "xxxxxx", "tasks" : [ { "task" : "pick up stuff", "comment" : "the one stuff over there" }, { "task" : "do more stuff", "comment" : "lots and lots of stuff" } ] } How with the PHP driver for MongoDB would I then go and add another "task" to

MongoDB in PHP - How do I insert items into an array in a collection?

别说谁变了你拦得住时间么 提交于 2021-02-15 11:57:38
问题 This has to be easy, but i can't seem to figure it out... Let say i had a collection users and this is the first item in the collection: { "_id" : ObjectId("4d8653c027d02a6437bc89ca"), "name" : "Oscar Godson", "email" : "oscargodson@xxx.com", "password" : "xxxxxx", "tasks" : [ { "task" : "pick up stuff", "comment" : "the one stuff over there" }, { "task" : "do more stuff", "comment" : "lots and lots of stuff" } ] } How with the PHP driver for MongoDB would I then go and add another "task" to

写给Web前端开发的后端指南

空扰寡人 提交于 2021-02-14 18:51:39
前言 在若干次前的一场面试,面试官看我做过 python 爬虫/后端 的工作,顺带问了我些后端相关的问题: 你觉得什么是后端? 送命题 。当时脑瓦特了,答曰: 逻辑处理和数据增删改查。。。 当场被怼得体无完肤,羞愧难当。事后再反思这问题,结合资料总结了一下。发现自己学过的 Redis 、 Elasticsearch 和 DNS 等其实都属于后端知识体系范畴。 在本文中,我将尝试 总结前端须知的后端体系入门 。 无论你的动机是什么,这个体系里都有你想要了解或学习的东西: 存储和服务如何结合在一起? 什么时候(或为什么)我需要用到这个? 全栈之路该怎么走? 各技术的主流框架选择 本文目录 : 1. Web / Application Servers 2. 负载均衡器: Load Balancer 3. 域名解析系统,DNS 4. HTTPS / SSL证书 5. 数据库,Database 6. Blob / 文件存储 7. 内容分发网络(CDN) 8. 缓存服务:Caching Service 9. 消息队列:Message queue 1. Web / Application Servers Web Servers 服务器:Web服务器,使用 http 协议向Web提供内容。 Application Servers :应用程序服务器,托管并公开业务逻辑和进程。 1.1 服务器端语言

基于 ThinkJS 的云开发体验

眉间皱痕 提交于 2021-02-14 14:21:09
ThinkJS 是一款企业级的 Node.js Web 开发框架,致力于集成项目最佳实践,规范项目让企业级团队开发变得更加简单,更加高效。 它基于 Koa 2.0 开发,兼容 Koa 的所有 Middleware。 内核小巧,支持 Adapter, Extend 等多种插件扩展方式,框架内的大部分功能也是通过这些方式进行扩展的。 性能优异,支持 TypeScript。 云开发 CloudBase 是云原生一体化应用研发平台为开发者提供高可用、自动弹性扩缩的后端云服务,包含计算、存储、托管等能力,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用、Flutter 客户端等),帮助开发者统一构建和管理后端服务和云资源,避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。 其实在云开发中使用 ThinkJS 和我们日常使用大同小异,除了启动文件需要按照云开发的要求修改一下以外,内部的业务逻辑基本不需要改动。 我们可以使用云开发的 CLI 工具 快速的初始化一个适配云开发的 ThinkJS 项目。 其中 thinkjs-app 是你的项目文件夹名称。 tcb new thinkjs-app thinkjs-starter 初始化完毕进入项目目录后执行 npm install 安装好依赖,就可以通过 npm start 启动开发环境了

阿里云ECS服务器安装配置MongoDB

独自空忆成欢 提交于 2021-02-14 10:45:24
环境 本人阿里云ECS服务器安装的操作系统为CentOS 7.3 64位。需要安装MongoDB,因为网上的教程大多比较老了,所以自己结合各种教程总结了一下,亲测可用。 不熟悉linux命令的小伙伴可自行搜索。 安装 下载 下载目录可任意选择,本人下载至~/software curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.9.tgz 解压 tar zxvf mongodb-linux-x86_64-3.2.9.tgz 移动 将解压后的文件夹移动至指定目录 mv mongodb-linux-x86_64-3.2.9/ /usr/local/mongodb 创建数据文件夹、日志文件和mongo配置文件 mkdir -p /usr/local/mongodb/data touch /usr/local/mongodb/mongod.log touch /usr/local/mongodb/mongodb.conf 修改配置文件 通过参数启动的方法较为麻烦,本文不赘述,仅提供通过配置文件启动的方法。 vim /usr/local/mongodb/mongodb.conf 在配置文件中加入如下代码: dbpath=/usr/local/mongodb/data logpath=/usr/local