MongoDB和Mysql区别与各自优缺点

最近使用数据库来做大模型Chat记录和后续的数据处理,对比mysql和mongodb,整理如下:

数据库mysqlmongoDB
介绍
- MySQL 是一款安全、跨平台、高效的,并与 PHP、Java 等主流编程语言紧密结合的数据库系统。该数据库系统是由瑞典的 MySQL
AB 公司开发、发布并支持,由 MySQL 的初始开发人员 David Axmark 和 Michael Monty Widenius 于1995 年建立的。
- 功能强大
- 支持跨平台
- 运行速度快
- 支持面向对象
- 安全性高
- 成本低
- 支持各种开发语言
- 数据库存储容量大
- 支持强大的内置函数

- MongoDB 是一个基于分布式文件存储的数据库。
- 由 C++ 语言编写,是一个开源数据库系统。
- 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
- MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
- MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。
- MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
- 在高负载的情况下,添加更多的节点,可以保证服务器性能。
- 它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
- MongoDB服务端可运行在Linux、Windows平台,支持32位和64位应用,默认端口为27017。
推荐运行在64位平台,因为MongoDB在32位模式运行时支持的最大文件尺寸为2GB。
官网https://www.mysql.com/https://www.mongodb.com/
特性
- 关系型数据库是指采用了关系模型来组织数据的数据库;
- 关系型数据库的最大特点就是事务的一致性
- 简单来说,关系模型指的就是二维表格模型,关系型数据库就是由二维表及其之间的关联组成的数据组织

- 使用键值对存储数据
- 分布式
- 不支持ACID特性
- 非关系型数据库严格上来说,不算是一种数据库,应该是一种数据结构化存储方法的集合
优点
- 容易理解;
- 使用方便;
- 易于维护;
- 支持SQL,可用于复杂的查询

- 无需经过sql层的解析,读写性能高;
- 基于键值对,数据没有耦合性,容易扩展;
- 存储数据的格式,nosql使用key:val的形式,文档的形式,图片形式等等,而关系型数据库则只支持基础类型
缺点
- 为了维护一执行需要消耗大量的性能,
- 影响读写
- 固定的表结构
- 高并发读写需求
- 海量数据的高效率读写

- 不提供sql支持,学习成本高
- 无事务处理,附加功能和报表支持也不好
场景我需求的场景是大模型Chat聊天记录,操作简单,数据结构灵活。有图片和文档。所有选择MongoDB

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

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

相关文章

ubuntu18.04编译OpenCV-3.4.19+OpenCV_contrib-3.4.19

首先确保安装了cmake工具 安装opencv依赖文件 sudo apt-get install build-essential sudo apt-get install git libgtk-3-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev sudo apt-get install python3-dev python3-numpy libtbb2 libtbb-dev libjpeg-dev li…

树莓派(Raspberry Pi)常见的各种引脚介绍

本文将为您详细讲解树莓派(Raspberry Pi)常见的各种引脚,以及它们的特点、区别和优势。树莓派是一款非常受欢迎的单板计算机,它拥有多个 GPIO(通用输入输出)引脚,这些引脚可以用于各种电子项目和…

Java中的基本数据类型有哪些

在Java编程语言中,基本数据类型(Primitive Types)是预定义的数据类型,它们不是由用户定义的类创建的,而是由语言本身提供的。这些基本数据类型是构成Java程序的基础,用于存储不同类型的值,如整数…

【C++】C++模板基础知识篇

个人主页 : zxctscl 文章封面来自:艺术家–贤海林 如有转载请先通知 文章目录 1. 泛型编程2. 函数模板2.1 函数模板概念2.2 函数模板格式2.3 函数模板的原理2.4 函数模板的实例化2.5 模板参数的匹配原则 3. 类模板3.1 类模板的定义格式3.2 类模板的实例化…

LeetCode刷题--- 单词拆分

个人主页:元清加油_【C】,【C语言】,【数据结构与算法】-CSDN博客 个人专栏 力扣递归题 http://t.csdnimg.cn/yUl2I 【C】 ​​​​​​http://t.csdnimg.cn/6AbpV 数据结构 ​​​http://t.csdnimg.cn/hKh2l 前言:这个专栏主要讲述动态规划算法…

金智维售前总监屈文浩,将出席“ISIG-RPA超级自动化产业发展峰会”

3月16日,第四届「ISIG中国产业智能大会」将在上海中庚聚龙酒店拉开序幕。本届大会由苏州市金融科技协会指导,企智未来科技(RPA中国、AIGC开放社区、LowCode低码时代)主办。大会旨在聚合每一位产业成员的力量,深入探索R…

mysql笔记:5. 运算符

文章目录 算术运算符比较运算符等于运算符安全等于运算符NULL值判断LIKE运算符 逻辑运算符位运算符运算符的优先级 在MySQL中,运算符是指在执行特定算术或逻辑操作时用到的符号。常用的运算符有算术运算符、比较运算符、逻辑运算符、位运算符等。 算术运算符 算术运…

配置类 + @Bean定义第三方组件

1. 问题描述 我们可以通过注解Component、Controller、Service、Repository将自己的创建的类添加到IOC容器中,交由IOC管理。但第三方jar包的类,无法使用Component等相关注解添加到IOC容器中,因为源码jar包内容为只读模式,我们不可…

问题:前端获取long型数值精度丢失,后面几位都为0

文章目录 问题分析解决 问题 通过接口获取到的数据和 Postman 获取到的数据不一样,仔细看 data 的第17位之后 分析 该字段类型是long类型问题:前端接收到数据后,发现精度丢失,当返回的结果超过17位的时候,后面的全…

磁性材料的基本特性

1. 磁性材料的磁化曲线 磁性材料是由铁磁性物质或亚铁磁性物质组成的,在外加磁场H 作用下,必有相应的磁化强度M 或磁感应强度B,它们随磁场强度H 的变化曲线称为磁化曲线(M~H或B~H曲线)。磁化曲…

通知:T3学员领取资料391-395

各位T3学员∶本周VBA技术资料增加391-395讲,看到通知后联络我(微:VBA6337)免费领取资料。成果来之不易,您更新后请说声谢谢,感恩我的成果。 MF391:选择同颜色的单元格 MF392:连接范…

图文并茂的讲清楚Linux零拷贝技术

今天我们来聊一聊Linux零拷贝技术,今天我们以一个比较有代表性的技术sendfile系统调用为切入点,详细介绍一下零拷贝技术的原理。 1.零拷贝技术简介 Linux零拷贝技术是一种优化数据传输的技术,它可以减少数据在内核态和用户态之间的拷贝次数&…

Ubuntu 22.04 server 安装GNOME/XFCE/KDE桌面环境

在Ubuntu Server上安装桌面环境可以通过以下步骤完成: 安装前请确保您已经在/etc/apt/sources.list 文件中启用了Universe和Multiverse软件库。 首先,通过SSH或物理访问方式登录到Ubuntu Server。 确保系统处于最新状态,运行以下命令进行更…

图论入门题题解

✨欢迎来到脑子不好的小菜鸟的文章✨ 🎈创作不易,麻烦点点赞哦🎈 所属专栏:刷题_脑子不好的小菜鸟的博客-CSDN博客 我的主页:脑子不好的小菜鸟 文章特点:关键点和步骤讲解放在 代码相应位置 拓扑排序 / 家谱…

蓝桥杯(3.8)

调试 System.exit(0);1205. 买不到的数目 import java.util.Scanner; public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int n sc.nextInt();int m sc.nextInt();System.out.println((n-1)*(m-1)-1);} }1211. 蚂蚁感冒 im…

寄存器(CPU工作原理)

文章目录 寄存器(CPU工作原理)1. 通用寄存器2. 字在寄存器中的存储3. 几条汇编指令4. 物理地址5. 16位结构的CPU6. 8086CPU给出物理地址的方法7. 段的概念8. 段寄存器9 . CS和IP10. 修改CS、IP的指令11. 代码段 寄存器(CPU工作原理) 一个典型的CPU由运算器、控制器、寄存器等器…

【好书推荐-第十期】《AI绘画教程:Midjourney使用方法与技巧从入门到精通》

😎 作者介绍:我是程序员洲洲,一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主、前后端开发、人工智能研究生。公众号:洲与AI。 🎈 本文专栏:本文收录…

安装elasticsearch、kibana、IK分词器(内附安装包,安装文档)

安装elasticsearch、kibana、IK分词器 关于elasticsearch和kibana的安装包如下:由于占用的内存较大,建议先下载,然后再上传到Linux中。 百度网盘链接:https://pan.baidu.com/s/1b6Ntk_TMsnOTYzOplOQydA?pwde1fw 提取码&#xf…

VUE2升级#总结1

为什么选择vue3 更强的性能,更好的 tree shaking Composition API setup 更好地支持 TypeScript 其composition API很好的解决了逻辑复用的问题,同时解决mixin的短板。 v-deep 替换deep() Vue.prototype替换为app.config.globalProperties slot 调整为…

005-事件捕获、冒泡事件委托

事件捕获、冒泡&事件委托 1、事件捕获与冒泡2、事件冒泡示例3、阻止事件冒泡4、阻止事件默认行为5、事件委托6、事件委托优点 1、事件捕获与冒泡 2、事件冒泡示例 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /…