oracle与mongodb的区别

1. 从概念上

Oracle中的许多概念与MongoDB中的类似。下表概述了Oracle和MongoDB中的常见概念。

Oracle mongodb
ACID Transactions ACID Transactions
Table Collection
Row Document
Column Field
Secondary Index Secondary Index
JOINs Embedded documents, $lookup & $graphLookup
GROUP_BY Aggregation Pipeline

2. 从功能和特性上

与Oracle一样,MongoDB提供了一组丰富的特性和功能,远远超出了简单NoSQL数据存储所提供的特性和功能。MongoDB拥有丰富的查询语言、功能强大的二级索引(包括文本搜索和地理空间)、强大的数据分析、分面搜索、图形处理等聚合框架。使用MongoDB,您还可以跨比关系数据库更多样化的数据类型使用这些特性,并且可以大规模地使用它们。

特性 Oracle MongoDB NoSQL Data Store
ACID Transactions
Flexible, rich data model · Partial: schema flexibility but support for only simple data structures
Schema governance ·
Expressive joins, faceted search, graphs queries, powerful aggregations ·
Idiomatic, native language drivers · ·
Horizontal scale-out with data locality controls · · Partial: no controls over data locality
Analytics and BI ready ·
Enterprise grade security and mature management tools ·
Database as a service on all major clouds Partial: AWS and Oracle cloud ·

3. 从查询语言上

Oracle mongodb
INSERT INTO users (user_id, age, status) VALUES (‘bcd001’, 45, ‘A’) db.users.insert({ user_id: ‘bcd001’, age: 45, status: ‘A’ })
SELECT * FROM users db.users.find()
UPDATE users SET status = ‘C’ WHERE age > 25 db.users.update( { age: { $gt: 25 } }, { $set: { status: ‘C’ } }, { multi: true } )
db.start_transaction() cursor.execute(orderInsert, orderData) cursor.execute(stockUpdate, stockData) db.commit() s.starttransaction() orders.insertone(order, session=s) stock.updateone(item, stockUpdate, session=s) s.committransaction()

Oracle与mongodb的区别相关推荐

  1. Nosql简介 Redis,Memchche,MongoDb的区别

    Nosql介绍 Nosql的全称是Not Only Sql,这个概念早起就有人提出,在09年的时候比较火.Nosql指的是非关系型数据库,而我们常用的都是关系型数据库.就像我们常用的mysql,sql ...

  2. 第一篇 Nosql讲解之Redis,Memchche,MongoDb的区别

    第一篇 Nosql讲解之Redis,Memchche,MongoDb的区别 本篇文章主要介绍Nosql的一些东西,以及Nosql中比较火的三个数据库Redis.Memchache.MongoDb和他们 ...

  3. 关系型数据库和非关系型数据库区别、oracle与mysql的区别

    一.关系型数据库 关系型数据库,是指采用了关系模型来组织数据的数据库.     关系模型是在1970年由IBM的研究员E.F.Codd博士首先提出的,在之后的几十年中,关系模型的概念得到了充分的发展并 ...

  4. Redis、Memcache和MongoDB的区别

    >>Memcached Memcached的优点: Memcached可以利用多核优势,单实例吞吐量极高,可以达到几十万QPS(取决于key.value的字节大小以及服务器硬件性能,日常环 ...

  5. Oracle RESETLOGS 和 NORESETLOGS 区别说明

    Oracle RESETLOGS 和 NORESETLOGS 区别说明 一.创建控制文件时:Resetlogs和Noresetlogs > > & >             ...

  6. redis.mecmcached和mongoDB的区别

    转载自  https://blog.csdn.net/cleble/article/details/78325527 https://segmentfault.com/q/10100000025880 ...

  7. Oracle primary,unique,foreign 区别,Hibernate 关联映射

    Oracle primary,unique,foreign 区别 转:http://www.cnblogs.com/henw/archive/2012/08/15/2639510.html NOT N ...

  8. ORACLE与PostgreSql的区别

    http://blog.itpub.net/post/2316/10994 ORACLE与PostgreSql的区别 本文档主要从数据库开发角度来对比二者的区别,有一些二者相同之处,这里不再专门提出. ...

  9. Redis和MongoDB的区别

    Redis和MongoDB的区别(面试受用) 项目中用的是MongoDB,但是为什么用其实当时选型的时候也没有太多考虑,只是认为数据量比较大,所以采用MongoDB. 最近又想起为什么用MongoDB ...

最新文章

  1. L1-025 正整数A+B
  2. 异步使用委托delegate --- BeginInvoke和EndInvoke方法
  3. EMQ学习 ---集群
  4. 以回调形式使用startActivityForResult方法,并解决Activity被回收的问题
  5. win10 uwp 使用 Matrix3DProjection 进行 3d 投影
  6. 看到了一个 蒙特卡洛方法 随机数得出 圆周率的c++ 源码
  7. CF1547F Array Stabilization (GCD version) st表 + 尺取/二分
  8. 如何在黄瓜中进行后端测试
  9. 为什么不能使用 BigDecimal 的 equals 方法做等值比较
  10. sql 全角转半角_每天10分钟带你学会MySQL(二)SQL语句的基本书写规则
  11. 爬虫开发python工具包介绍 (4)
  12. linux 安装tomcat8和 treeNMS部署
  13. UE4 云渲染环境搭建
  14. 5V升压8.4V,5V转8.4芯片电路图
  15. 罗技Logitech Options下载地址
  16. 区块链技术在银行业的应用
  17. 程序员面试金典--疯狂刷
  18. AddressBook 相关操作小计
  19. m基于matlab的无线光通信CDMA闭环链路功率控制算法仿真,对比了OOK,2PPM,4PPM,8PPM,16PPM
  20. pip install 快速下载和安装包的方法

热门文章

  1. ubuntu php 支持mysql_在ubuntu16.04上安装php7 mysql5.7 nginx1.10并支持http2
  2. 2019年湘潭大学程序设计竞赛(重现赛)补题:H.Chat(分组背包)
  3. 问题 D: 巧求和(思维)
  4. 基于行为树的新手引导设计
  5. 一种基于游戏引擎的AR模式探讨(下)
  6. docker概念很乱?俺来替你理一下!
  7. PMP每日三题(2022年2月14日)
  8. Java扑克牌(洗牌Collections.shuffle)
  9. 使用 Authid Current_User 为调用者授权
  10. linux覆盖和追加