MongoDB和Mysql区别与各自优缺点

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

数据库 mysql mongoDB
介绍 - 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
相关推荐
·醉挽清风·19 分钟前
学习笔记—MySQL—库表操作
笔记·学习·mysql
灵犀学长25 分钟前
基于 Spring ThreadPoolTaskScheduler + CronTrigger 实现的动态定时任务调度系统
java·数据库·spring
北秋,1 小时前
PostgreSQL(Postgres)数据库基础用法 + 数字型 + 字符型 完整联合注入实战
数据库·postgresql·开源
m0_596749091 小时前
JavaScript中手动实现一个new操作符的底层逻辑
jvm·数据库·python
多加点辣也没关系2 小时前
Redis 的安装(详细教程)
数据库·redis·缓存
数据库小学妹2 小时前
数据库连接池避坑指南:告别“连接超时”与“资源耗尽”,让系统跑得更快!
数据库·redis·sql·mysql·缓存·dba
dishugj2 小时前
HANA 数据库备份与恢复
数据库·oracle
前进的李工2 小时前
EXPLAIN输出格式全解析:JSON、TREE与可视化
开发语言·数据库·mysql·性能优化·explain
达梦产品与服务2 小时前
稳扎稳打,持续迭代 | SQLark V3.10 更新,30+ 项优化与修复
mysql·oracle·达梦数据库·pg·sqlark百灵连接
難釋懷3 小时前
Redis网络模型-IO多路复用模型-poll模式
网络·数据库·redis