nosql

NoSQL最新现状和趋势:云NoSQL数据库将成重要增长引擎

≯℡__Kan透↙ 提交于 2021-01-06 12:54:12
NoSQL最早起源于1998年,但从2009年开始,NoSQL真正开始逐渐兴起和发展。回望历史应该说NoSQL数据库的兴起,完全是十年来伴随互联网技术,大数据数据的兴起和发展,NoSQL在面临大数据场景下相对于关系型数据库运用,这一概念无疑是一种全新思维的注入。 接下来本文重点梳理下NoSQL领域最新发展趋势以及阿里云NoSQL最新现状,以飨读者。 云NoSQL数据库成为数据库领域重要增长引擎 云化趋势不可避免,根据Gartner的报告,2017年超过73%的DBMS增长来自云厂商,Gartner象限里面AWS在领导者象限上升趋势明确,老牌厂商下滑严重。在2018年Gartner报告中,阿里云数据库更是中国唯一首次入围远见者象限。而在众多云厂商里面增长最快的又是NoSQL数据库,云NoSQL成为数据库领域重要增长引擎。 阿里云覆盖了主流的NoSQL引擎 阿里云集团是国内最早提出数据战略,本身也拥有最大体量的数据,是最早投入NoSQL数据库技术研发,目前也拥有国内最大的专家团队。在持续十年技术加持下,阿里云NoSQL目前覆盖了所有主流的NoSQL数据库,如Redis/mongodb/HBase/图等等。下表是目前阿里云目前覆盖的主流的NoSQL数据库。 NoSQL数据库存储类型典型场景Redis/MemcacheKey/Value缓存,搭配所有数据库使用;直播、视频等各种在线场景

MongoDB aggregation $or with $elemMatch, $expr inside $lookup pipeline

橙三吉。 提交于 2021-01-05 11:50:20
问题 I have 2 collections : Users collection : { _id: ObjectId } Toto Collection : { _id: ObjectId fieldA: {_id: ObjectId} fieldB: [{_id: ObjectId}, {_id: ObjectId}] } And I'm trying to join the element of A collection which fieldA's id OR one of fieldB's id is matching with user's id with following aggregation : db.users.aggregate([ { $lookup: { from: "Toto", let: { "user_id": "$_id" }, as: "fcollection", pipeline: [ { $match: {$or:[ {"fieldB": {$elemMatch: {"_id": "$$user_id"}}}, {$expr: {$eq :[

MongoDB aggregation $or with $elemMatch, $expr inside $lookup pipeline

人盡茶涼 提交于 2021-01-05 11:49:25
问题 I have 2 collections : Users collection : { _id: ObjectId } Toto Collection : { _id: ObjectId fieldA: {_id: ObjectId} fieldB: [{_id: ObjectId}, {_id: ObjectId}] } And I'm trying to join the element of A collection which fieldA's id OR one of fieldB's id is matching with user's id with following aggregation : db.users.aggregate([ { $lookup: { from: "Toto", let: { "user_id": "$_id" }, as: "fcollection", pipeline: [ { $match: {$or:[ {"fieldB": {$elemMatch: {"_id": "$$user_id"}}}, {$expr: {$eq :[

用太极拳讲分布式理论,真舒服!

∥☆過路亽.° 提交于 2021-01-04 02:57:37
边看边听真舒服,人生短短几个秋... 倚天屠龙记中 赵敏 郡主携带一帮高手围攻武当,武当派掌门 张三丰 被暗算,传了一套武功给 张无忌 用来对付赵敏的手下。这套武功就是 太极拳 。 ❝ 张三丰 :无忌,我教你的还记得多少? 张无忌 :我全忘了! 张三丰 :很好,你只要记住把玄冥二老打趴下就可以了。 上篇 用 三国杀 讲分布式中的拜占庭将军问题,还挺有意思的,这次我们用 倚天屠龙记 中的 太极拳 来聊下剩下的 三大理论 : CAP 理论 ACID 理论 BASE 理论 ❝ 太极拳的精髓:以柔克刚,刚柔并进,四两拨千斤,无招胜有招。 我把 CAP 理论称作 太极 ,ACID 理论称为 阳 或 刚 ,BASE 理论称为 阴 或 柔 。ACID 理论追求一致性,BASE 理论本来就叫做柔性事务,追求的是可用性。那张无忌为什么会全忘了还打败了玄冥二老呢?因为太极拳的精髓是拳意,无招胜有招。 1、太极的两面 CAP 理论是对分布式系统的特性做了一个高度的抽象,变成了三大指标: 一致性(Consistency) 可用性(Availability) 分区容错性(Partition Tolerance) 分布式中的一致性,我们可以理解为客户端的每次 读操作 ,不管访问的是哪个几点,要么读到的都是同一份最新写入的数据,要么读取失败。这就很刚了,不能说这种 刚 不好,在很多场景中

阿里云数据库李飞飞:云计算推动数据库向云原生快速演进

試著忘記壹切 提交于 2020-12-31 03:58:55
12月30日,阿里云云原生数据库PolarDB举行年度发布。过去的一年是阿里云数据库硕果累累的一年。11月,Gartner公布阿里云进入全球数据库领导者象限,是国产数据库几十年积累的重大突破;12月,中国电子学会公布PolarDB获得科学技术奖一等奖。阿里云数据库深耕11年,至今已服务客户10万余。 阿里巴巴集团副总裁、阿里云智能数据库事业部总裁李飞飞表示,云计算正在推动数据库向云原生快速演进,阿里云数据库已全面布局云原生。 关键词:深耕11年10万余客户 2020年11月,“完美日记“上市了。迅速崛起的“完美日记”,从2017年的全新品牌,到如今的 “国货之光”,成为今年创投圈的现象级案例。 快速的业务发展背后,是高压力的系统挑战。“完美日记”找到了阿里云数据库。阿里云服务天猫“双11”多个年头,已具备丰富的应对大流量经验。 2020年4月,“完美日记”三周年大促,最后一天压测,订单系统下单速度达到1万笔/每秒,对应PolarDB数据库的写入速度10万TPS,比半年前的系统吞吐提升了50倍。在4月14日活动当天,抢购开始瞬间系统涌进了几百万用户。每秒成交的订单数创历史新高,订单峰值比历史最高峰值再次提高了几倍,高峰业务流量比半年前提高了50倍。 “完美日记”只是阿里云数据库的一个案例,是阿里云数据库11年以来,服务的10万多客户中的其中一个。 阿里云数据库始于2009年。

京东城市时空数据引擎JUST亮相中国数据库技术大会

点点圈 提交于 2020-12-30 16:59:04
受疫情影响,第十一届中国数据库技术大会(DTCC 2020)从原定的5月份,推迟到了8月份,再推迟到了12月份。尽管如此,依然没有减退国人对数据库技术的热情。2020年12月21日-12月23日,北京国际会议中心人头攒动,各大厂商争奇斗艳。在NoSQL技术专场,京东智能城市研究院的李瑞远博士给大家带来了《京东城市时空数据引擎JUST的架构设计与应用实践》的主题报告,受到了大家的广泛关注。 李瑞远博士的个人简介:李瑞远,博士,京东城市时空数据组负责人,京东智能城市研究院研究员,京东智能城市事业部数据科学家,负责时空数据平台架构设计、时空索引与分布式相结合研究、时空数据产品的研发、以及时空数据挖掘在城市场景的落地等工作。加入京东之前,在微软亚洲研究院城市计算组实习/工作4年。研究兴趣包括:时空数据管理与挖掘、分布式计算和城市计算。在国内外高水平期刊和国际会议上发表论文20余篇,包括:KDD、Artificial Intelligence、ICDE、AAAI、TKDE、WWW、UbiComp、软件学报等。申请专利20余项。现为中国计算机学会(CCF)会员、CCF数据库专委会通讯委员、IEEE会员。先后担任多个国内外顶级会议或期刊的论文审稿人。 JUST简介:时空数据蕴含着丰富的信息,能够应用于各种城市应用。但时空数据更新频率高、数据体量大、结构复杂,难以被高效存储、管理和分析

How do I query an array of dictionaries in MongoDB?

耗尽温柔 提交于 2020-12-30 07:46:25
问题 I have an array of dictionaries on which I have to make queries. The queries will be like when "name" is "a" then "value" should be "2". { "t": "m", "y": "n", "A":[ { "name": "x", "value": "1" }, { "name": "y", "value": "2" }, { "name": "z", "value": "1" } ] } In the above, I want to know what are the records whose "value" is "1" when "name" is x. I also need to make queries like, where "name" is "x" then value should be "2" and "name" is "y" then "value" should be "1" 回答1: You have to use

mongodb 基础

狂风中的少年 提交于 2020-12-29 11:57:44
一、首先安装mongodb 1.下载地址:http://www.mongodb.org/downloads 2.解压缩到自己想要安装的目录,比如d:\mongodb 3.创建文件夹d:\mongodb\data\db、d:\mongodb\data\log,分别用来安装db和日志文件,在log文件夹下创建一个日志文件MongoDB.log,即d:\mongodb\data\log\MongoDB.log 4.运行cmd.exe进入dos命令界面,执行下列命令   > cd d:\mongodb\bin   > d:\mongodb\bin>mongod -dbpath "d:\mongodb\data\db"  看到类似的信息,则说明启动成功,默认MongoDB监听的端口是27017,mysql的是3306 5.测试连接  新开一个cmd窗口,进入mongodb的bin目录,输入mongo或者mongo.exe,出现如下信息说明测试通过,此时我们已经进入了test这个数据库,如何进入其他数据库下面会说。   输入exit或者ctrl+C可退出。 6.当mongod.exe被关闭时,mongo.exe 就无法连接到数据库了,因此每次想使用mongodb数据库都要开启mongod.exe程序,所以比较麻烦,此时我们可以将MongoDB安装为windows服务  还是运行cmd

微服务如何拆分

a 夏天 提交于 2020-12-29 11:03:24
一、微服务如何拆分 1、先明白起点和终点 2、需要考虑的因素和坚持的原则 二、起点和终点 1、起点 既有架构的形态 2、终点   好的架构不是设计出来的,而是进化而来的。   一直在演进 三、不适合上微服务的 1、系统中包含很多很多 强事务 场景的 2、业务相对稳定,迭代周期长 3、访问压力不大,可用性要求不高 四、如何拆功能 1、单一职责,松耦合,高内聚 2、关注点分离   按职责   按通用性   按粒度级别 六、服务拆分方法 服务和数据的关系   先考虑业务功能,再考虑数据 无状态服务(一个数据被多个服务共享) 七、如何拆分“数据” 1、每个微服务都有单独的数据存储 2、依据服务特点选择不同结构的数据库类型   依据服务的功能特点,选择合适的数据库。 1)有些前置服务使用node开发,主要是展示类型的数据,对事务要求不高。那这个服务可以考虑NoSql的MongoDB 2)比如服务是做搜索类型的,我们可以优先考虑elasticsearch。 3) 对事务要求高的,优先考虑支持事务的关系型数据库,如MySql 3、难点在确定边界。 4、针对边界设计API 5、依据边界权衡数据冗余 来源: oschina 链接: https://my.oschina.net/u/4256075/blog/3750220

Linux运维岗位有哪些?具体工作是什么?

微笑、不失礼 提交于 2020-12-29 07:33:51
  Linux是操作系统之一,也是现在大多数企业都比较喜欢使用的系统,可以从事的岗位有很多,为就业者提供广阔的发展空间。那么Linux相关岗位有哪些?具体工作内容是什么?   1、Linux运维工程师   一般从企业入门到中级Linux运维工程师的工作大致有:挑选IDC机房及带宽、购买物理服务器或云服务、购买及使用CDN服务、搭建部署程序开发及用户的访问系统环境、对数据进行备份及恢复、处理网站运行中的各种故障、对网站的故障进行监控、解决网站运行的潜在安全问题、开发自动化脚本程序提高工作效率、规划网站架构、程序发布流程和规范,制定运维工作制度和规范、配合开发人员部署及调试产品研发需要的测试环境、代码发布等工作需求,公司如果较小可能还会兼职网管、网络工程师、数据库管理员、安全工程师、技术支持等职责。   2、Linux运维架构师   1)自动化代码上线(SVN/GIT+Jenkins+MVN)解决方案;2)云计算部署架构及Docker微服务架构方案;3)服务自动化扩容方案(KVM/OpenStack/Docker+Ansible+Zabbix);4)10万并发的网站架构、秒杀系统的架构及解决发你个案;5)多IDC机房互联方案、全网数据备份解决方案、账号统一认证方案;6)数据库、存储及各重要服务节点的集群和高可用方案;7)各网络服务的极端优化方案、服务解耦/拆分;8)运维流程、制度