03-关系和非关系型数据库对比

关系和非关系型数据库对比

关系型数据库(RDBMS):MySQL、Oracl、DB2、SQLServer
非关系型数据库(NoSql):Redis、Mongo DB、MemCached

在这里插入图片描述

插入数据结构的区别

传统关系型数据库是结构化数据,向表中插入数据时都需要严格的约束信息(如字段名,字段数据类型,字段约束等信息)

在这里插入图片描述

非关系型数据库对插入的数据格式没有严格约束,可以是键值型,文档型(如MongoDB),图格式(如Neo4j),列类型(如HBase)

在这里插入图片描述

多表关联的区别

传统数据库的表与表之间往往存在关联(如外键)

  • 传统数据库在维护用户商品的关系会新建一个订单表,存储用户和商品的对应关系
  • 在业务逻辑代码中存储数据时需要将商品的信息存储到用户的订单属性中,但是这样做会导致数据冗余

在这里插入图片描述

{id: 1,name: "张三",orders: [{id: 1,item: {id: 10, title: "荣耀6", price: 4999}},{id: 2,item: {id: 20, title: "小米11", price: 3999}}]
}

非关系型数据库的表与表之间不存在关联关系,维护关系只能靠代码中的业务逻辑或数据之间的耦合

查询方式的区别

传统关系型数据库会基于Sql语句做查询(语法有统一标准),非关系数据库查询语法各种各样差异极大

在这里插入图片描述

事务的区别

传统关系型数据库能满足事务ACID的原则(原子性、一致性、独立性及持久性)

非关系型数据库往往不支持事务,或者不能严格保证ACID的特性,只能实现基本的一致性

存储方式磁盘和内存的区别

  • 关系型数据库基于磁盘进行存储, 会有大量的磁盘IO所以对性能有一定影响
  • 非关系型数据库的基于内存来存储, 内存的读写速度会非常快所以性能较高

扩展性水平扩展和垂直扩展的区别

  • 垂直扩展: 关系型数据库集群模式一般是主从, 主从数据一致可以起到数据备份的作用
  • 水平扩展: 非关系型数据库可以将数据拆分存储在不同机器上,可以保存海量数据解决内存大小有限的问题
  • 关系型数据库因为表之间存在关联关系, 如果做水平扩展会给数据查询带来很多麻烦

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/194065.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【装包拆包----泛型】

文章目录 装箱和拆箱泛型创建一个泛型数组泛型的上界泛型方法 装箱和拆箱 装箱: 把基本数据类型给到引用数据类型 public static void main(String[] args) {//自动装包//第一种装包Integer c 12;//第二种装包int a 7;Integer b a;//显示装包Integer aa Intege…

课程32:.Net Core Web API部署IIS

这里写目录标题 🚀前言前言一、服务器环境配置1.1 安装 ASP.NET Core模块/托管捆绑包1.2 检查是否安装成功 二、项目发布2.1 选择发布方式2.2 发布配置2.3 发布 三、服务器部署3.1 IIS添加网站3.2 数据库链接配置3.3 让IIS支持.NET Web Api3.4 验证 四、最后 &#…

idea中git 移除对某个文件的跟踪

应用场景如下 某个log 文件,被同事用git 提交到了服务器,本地拉去之后我们的跟踪也会受影响 取消跟踪的方法如下: 删除本地缓存 git rm --cached "logs/test.log" 提交无效的log git commit -m "ignore log" 再将lo…

Postman接口Mock Servier服务器

近期在复习Postman的基础知识,在小破站上跟着百里老师系统复习了一遍,也做了一些笔记,希望可以给大家一点点启发。 应用场景:后端的接口还没有开发完成,前端的业务需要调用后端的接口,可以使用mock模拟。 一…

Linux_虚拟机常用目录汇总

根目录(cd /):/ 表示根目录,cd和 / 之间有个空格! 用户目录(cd ~):~ 表示用户目录,也称为家目录。cd 和 ~ 之间有个空格! 当前路径:执行 pwd 指令…

微信加好友操作频繁了,怎么办?

近来,微信的风控是越来越严重,因为本身微信是作为一个社交软件,但流量大适合用来做私域营销。在日常使用微信中,我们也要了解下微信加好友的规则。 目前微信加人的规则是: 1、通过附近人功能加人上限15人/天&#xf…

【Linux系统编程十八】:(基础IO5)--动静态库共享/动静态加载问题(涉及地址空间)

【Linux系统编程十八】:动静态库共享/动静态加载问题(涉及地址空间) 一.可执行程序如何被加载的1.加载之前2.加载之后①如何执行第一条命令②缺页中断/与地址空间建立联系 二.动态库如何加载的三.动态库如何实现多进程间共享的 一.可执行程序如何被加载的…

dewarp:数据变换

一. 效果 输入图片:test.jpg 前向场:test.npy 输出图片:dewarp_img.jpg 二. 代码 import os import cv2 import numpy as npdef align_flow(image, flow):"""flow: -1~1, 非文本区域是nanbm_flow: 对齐的bm,可以直接对图…

突发!奥特曼宣布暂停ChatGPT Plus新用户注册!

大新闻!就在刚刚! OpenAI的CEO Sam Altman宣布暂停ChatGPT Plus 新用户注册! Sam Altman对此解释道: 由于OpenAI开发日后ChatGPT使用量的激增超出了我们的承受能力,我们希望确保每个人都有良好的体验。 您仍然可以在a…

HTML易忽略的角落【目录】

目前已有文章 **** 篇 本专栏是汇集了一些HTML常常被遗忘的知识,这里算是温故而知新,往往这些零碎的知识点,在你开发中能起到炸惊效果。我们每个人都没有过目不忘,过久不忘的本事,就让这一点点知识慢慢渗透你的脑海。 …

好用且强大——JNPF永远的神

一款开源且强大的工具 风流数年,只看今朝,Linux 让我们看到了开源驱动下的生产力,其实低代码和它一样,都是提高效率、降低成本的工具。 近 10 年间,JNPF 低代码平台如火如荼的发展起来,堪称黑马也不为过。这…

CNVD-2021-09650:锐捷NBR路由器(guestIsUp.php)RCE漏洞复现 [附POC]

文章目录 锐捷NBR路由器guestIsUp.php远程命令执行漏洞(CNVD-2021-09650)复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 锐捷NBR路由器guestIsUp.php远程命令执行漏洞(CNVD-2021-09650)复现 [附POC] 0x01 前言 免…

京东数据挖掘(京东运营数据分析):2023年宠物行业数据分析报告

随着社会经济的发展,人均收入水平逐渐提高,使得宠物成为越来越多家庭的成员,宠物数量不断增长。伴随养宠人群的增多,宠物相关产业的发展也不断升温,宠物经济规模持续增长。 根据鲸参谋平台的数据显示,在宠物…

由于找不到d3dx9_43.dll,无法继续执行代码,需要如何修复?

d3dx9_43.dll是一个重要的动态链接库(DLL)文件,它属于DirectX组件,主要负责处理游戏和多媒体应用程序中的图形和音频渲染。在本文中,我们将讨论四个解决方案来解决d3dx9_43.dll问题,以及d3dx9_43.dll的作用…

0基础学习VR全景平台篇第121篇:认识视频剪辑软件Premiere

上课!全体起立~ 大家好,欢迎观看蛙色官方系列全景摄影课程! 大家好,这节课是带领大家认识认识我们的剪辑软件Premiere,一般简称是PR。 (PR界面) 我们首先打开PR,第一步就是要创建…

npm install导致的OOM解决方案

文章目录 问题记录解决方法Linux重启排查方法 如何排查Linux自动重启的原因 问题记录 我在华为云服务器配置npm开发环境的时候, SSH远程连接一直掉线,无奈提了工单,被告知是NPM install导致的OOM问题。无语了,破NPM还有这个问题呢…

视频号视频怎么保存?教你三种方法

现在随着视频号的兴起,很多用户都喜欢在视频号上分享自己的生活、工作和兴趣爱好。但是很多人都遇到了一个问题,就是视频号上看到了喜欢的视频,想要保存下来,却不知道怎么做。今天我们就来教大家三种方法,让你轻松保存…

前端性能优化的方式

文章目录 前言DNS 预解析存储使用 HTTP / 2.0预加载预渲染懒执行与懒加载文件优化webpack优化如何根据chrome的timing优化移动端优化后言 前言 hello world欢迎来到前端的新世界 😜当前文章系列专栏:前端系列文章 🐱‍👓博主在前端…

2023数维杯国际赛数学建模竞赛选题建议及D题思路讲解

大家好呀,2023年第九届数维杯国际大学生数学建模挑战赛今天早上开赛啦,在这里先带来初步的选题建议及思路。 目前团队正在写B题和D题完整论文,后续还会持续更新哈,大家三连关注一下防止迷路。 注意,本文只是比较简略…

Databend 源码阅读: Storage 概况和 Read Partitions

作者:zhyass | Databend Labs 成员,数据库研发工程师 ❤️ 友情提示:代码演进较快,请注意文档的时效性哦! 引言 Databend 将存储引擎抽象成一个名为 Table 的接口,源码位于 query/catalog/src/table.rs。…