首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL8.0实战(二) - 数据库选型

本文主要内容就是来比较一下常见的两种数据存储系统关系型数据库和非关系型数据库的主要特点,以及他们各自适用的场景,让我们在做出选择时不再迷茫。...1 SQL VS NoSQL 2 关系型数据库的特点和适用场景 2.1 关系数据库的特点 2.1.1 数据结构化存储在二维表中 2.1.2 支持事务的原子性A,-致性C,隔离性I,持久性D 特性 2.1.3...3.1 非关系型数据库的特点 3.1.1 存储结构灵活,没有固定的结构 3.1.2 对事务的支持比较弱,但对数据的并发处理性能高 3.1.3 大多不使用SQL语言操作数据 3.2 非关系型数据库的适用场景...3.2.1 数据结构不固定的场景 3.2.2 对事务要求不高,但读写并发比较大的场景 3.2.3 对数据的处理操作比较简单的场景 4 关系统型数据库选型步骤 数据库使用的广泛性 数据库的可扩展性 数据库的安全性和稳定性...数据库所支持的系统 数据库的使用成本 5 为项目选择适合的数据库 5.1 数据库使用的广泛性 5.2 MySQL数据库的可扩展性 ◆ 支持基于二进制日志的逻辑复制 ◆ 存在多种第三方数据库中间层,

40910
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    extremedb同步mysql_数据库选型之内存数据库eXtremeDB

    刘勇 Email:lyssym@sina.com 简介 鉴于内存数据库访问速率快的特点,本文分别从单线程、多线程(并发访问)和多线程读/写混合访问角度对eXtremeDB数据库读写速率展开测试...经过上述测试,该数据库适合于嵌入式系统设计,对于有存储需求的实时系统来说,可以采用内存与硬盘混合方式 ,但是该策略必然会衰减其性能。...然后从多线程读/写混合访问eXtremeDB角度,以100K和600K条数据为基础数据库,针对不同读取线程和写入线程个数展开测试。...小结 从表-1和表-2可知:1)从写入速率角度来看,批处理相对单条处理而言,并没有优势,主要原因在于,eXtremeDB为内存数据库,批处理在内存中还多了一份批量累积过程;2)从整体而言, 相对之前对MySQL...总结 从上述2种场景测试结果来看,eXtremeDB的读写速率大约在10w条/s,相对一般的数据库(非内存数据库,即使在固态硬盘上)其速率也是比较快的。

    1.2K20

    NoSQL 数据库如何选型

    作者 | Arslan Ahmad 译者 | 平川 策划 | Tina 什么是 NoSQL 数据库? 通常,“NoSQL 数据库”是指非关系型数据库。...高性能:与关系型数据库相比,NoSQL 数据库针对特定的数据模型和访问模式做了优化,进一步提升了性能。...以下是一些知名的 NoSQL 数据库类 键值数据库 键值数据库成对存储数据,每个记录包含一个唯一 id 和一个值。这类数据库提供了灵活的存储结构,因为值中可以存储任意数量的非结构化数据。...内存键值数据库 不同于基于磁盘的数据库,这类数据库的数据主要保存在内存中。通过减少磁盘访问实现最小响应时间。由于所有数据都存储在内存中,在进程或服务器出现故障时,内存数据库有丢失数据的风险。...分类账数据库 分类账数据库以日志为基础,日志中记录了与数据值相关的事件。这类数据库存储用于验证数据完整性的数据更改操作。

    1.8K20

    谈谈数据库选型

    在开发游戏服务器程序的过程中,好像大家都默认使用Mysql, 如果有性能问题,大不了再加个Memcached, 或者干脆使用Redis来做数据库。...这是我最近在看《MySql是怎样运行的》,突然想到的问题。 我挑了三款存储模式完全不同的数据库, 来对比一下它们的特点。 Mysql: 一款关系型数据库。...这保证了,即使在数据库存有超大规模数据时,其合并过程依然是可控的。 总的来讲,MySql适合查询场景复杂, 而且查询多于写入的场景。Redis适合单进程数据量不大,并且对查询和写入都要求极高的场景。...这意味着,我们必须在开服期间,就要从数据库加载所有游戏数据到游戏进程。之后只需要操作进程内数据即可。 在不考虑数据安全的情况下,甚至我们都不需要数据库。...从安全性上来讲,Mysql, LevelDB, Redis的AOF都满足要求。 就写入速度而言,显然MySql落选了,因为他是为查询设计的数据库系统。

    72030

    数据库漫谈(十)----数据库选型

    为了不辜负老朋友的信任,我决定写一期关于数据库选型的文章。 先说一下这个问题的背景。放在20年前,选一个数据库似乎不是啥难题,因为可选项太少了。...基本原则就是有钱任性的用ORACLE/DB2,口袋拮据的用Mysql,剩下的选SqlServer/Sybase。 可是在20年后的今天,选一个合适的数据库就变得不那么容易了,因为啥呢?可选项太多了。...不算外国的数据库产品,光是国产数据库就有上百种之多,怎能不叫人乱花渐欲迷人眼呢。 下面是2021年5月最新的数据库排名,先不用关注分数和排名,只看参与排名的数据库数量是不是就有点眼花缭乱了。...◆数据库位置 ●是否和应用服务器放在一起 ●是否有灾备架构 ●是否采用公有云 ◆迁移难度 ●从正在使用中的数据库类型,位置迁移到其他数据库类型,位置的难度。...技术文档是否全面公开,社区论坛是否完善,既存客户数量,既存技术者数量等) ●扩展能力( Share Everything、Share Storage、Share Nothing 等) 以上只是简单的列出了在数据库选型时需要考虑的几个点

    90110

    内存数据库及技术选型

    本白皮书阐述了内存数据库的概念,梳理了内存数据库的发展历史和核心属性,分析了在电商、直播和电信行业的典型应用场景,并对主流的内存数据库进行了介绍和对比,从技术和管理两个角度提出了产品选型和硬件选型建议,...事务支持方面,大部分的关系型内存数据库称可以支持 ACID,但都需要在性能上作出妥协。 - 内存数据库选型建议 - 技术服务于业务,内存数据库选型应首先遵循业务场景的需求。...在做内存数据库选型前,建议先梳理业务需求并进行量化;再将核心数据应用特性映射成数据库技术要求;最后按筛选出的技术要求进行选型。...1).技术因素 按照技术要求进行内存数据库选型时,可主要考察业务的性能、一致性要求和 SQL 兼容性三个因素。 业务是否有很高的性能要求?...如果业务对数据的可靠性和一致性要求较高、需要 ACID 级别的事务支持,则建议使用 MySQL 等传统的关系型数据库

    95610

    MySQL高可用方案选型参考

    可选MySQL高可用方案 MySQL的各种高可用方案,大多是基于以下几种基础来部署的: 基于主从复制; 基于Galera协议; 基于NDB引擎; 基于中间件/proxy; 基于共享存储; 基于主机高可用...图解:MySQL双节点(单向/双向主从复制),采用keepalived实现高可用架构。 多节点主从+MHA/MMM 多节点主从,可以采用一主多从,或者双主多从的模式。...这种模式下,可以采用MHA或MMM来管理整个集群,目前MHA应用的最多,优先推荐MHA,最新的MHA也已支持MySQL 5.6的GTID模式了,是个好消息。...多节点主从+etcd/zookeeper 在大规模节点环境下,采用keepalived或者MHA作为MySQL的高可用管理还是有些复杂或麻烦。...基于Galera协议的高可用方案 Galera是Codership提供的多主数据同步复制机制,可以实现多个节点间的数据同步复制以及读写,并且可保障数据库的服务高可用及数据一致性。

    1.1K10

    内存数据库及技术选型

    本白皮书阐述了内存数据库的概念,梳理了内存数据库的发展历史和核心属性,分析了在电商、直播和电信行业的典型应用场景,并对主流的内存数据库进行了介绍和对比,从技术和管理两个角度提出了产品选型和硬件选型建议,...事务支持方面,大部分的关系型内存数据库称可以支持 ACID,但都需要在性能上作出妥协。 7.内存数据库选型建议 技术服务于业务,内存数据库选型应首先遵循业务场景的需求。...在做内存数据库选型前,建议先梳理业务需求并进行量化;再将核心数据应用特性映射成数据库技术要求;最后按筛选出的技术要求进行选型。...1).技术因素 按照技术要求进行内存数据库选型时,可主要考察业务的性能、一致性要求和 SQL 兼容性三个因素。 业务是否有很高的性能要求?...如果业务对数据的可靠性和一致性要求较高、需要 ACID 级别的事务支持,则建议使用 MySQL 等传统的关系型数据库

    4.8K31

    key value 数据库选型

    来源:keakon的涂鸦馆 , www.keakon.net/2018/07/13/key%20/%20value%20数据库选型 引言 一直以来在我的观念中,key/value 数据库就三种选项:...我一想 TiKV 和 Pika 等很多 key/value 数据库都选用了 RocksDB,应该是比较靠谱的,于是就选它了。 接着就发现这东西的编译依赖有点多。...传统的关系型数据库大多是使用 B+ 树,这种数据结构可以很快地进行顺序读写,也能以 O(log(N)) 的时间复杂度来进行随机读,但不适合随机写(会导致 B+ 树重新调整平衡,造成写放大)。...RocksDB 还提供了一个 Column Family 的功能,设计上就和 MySQL 的分表差不多,就是人为地将数据分散到多个 Column Families 中(例如按 key 的首字节或 hash...虽然空间占用比 RocksDB 要高一些(大概 10%),但是打开数据库的速度却要快几倍,也许是只需要加载 key 的原因。

    2.8K30

    大数据数据库选型:NoSQL数据库入门

    在数据存储阶段,对数据库选型是非常重要的一项工作。今天的大数据数据库培训分享,我们就来聊聊NoSQL数据库入门。...与之相对的是关系型数据库,NoSQL数据库弥补了关系数据库在大数据存储当中的局限性。 NoSQL是什么?...NoSQL数据库,是对所有非关系型数据库的统称,采用非传统关系数据库的数据模型来存储数据,比如说键/值、列族、文档等等数据存储模型。...NoSQL数据库应用场景 NoSQL数据库本身适用于大数据下的各种场景,尤其是在需要简单的数据模型、灵活性的IT系统、较高的数据库性能和较低的数据库一致性时,NoSQL数据库能够极好地满足相关需求。...关于大数据数据库选型,NoSQL数据库入门,以上就为大家做了简单的介绍了。大数据存储是大数据处理当中的重要一步,数据库选型也是开发者们需要具备的一项基本技能。

    1.2K40

    架构设计之数据库选型

    做架构选型的时候通常涉及数据库选型,一般会从业务场景(时效性、数据量、成本、数据schema等)、数据库的成熟度、数据库的社区活跃度(可参考网站:https://db-engines.com/en/ranking...但是隔离也分级别,隔离级别越严格,并发效率越低,具体可了解MySQL事务隔离级别 持久性(Durability) 持久性是指一旦事务成功提交后,只要修改的数据都会进行持久化(通常是指数据成功保存到磁盘)...数据库的持久化机制各样,可了解MySQL的redo log + binlog及habse的Hlog持久化。...例如MYSQL OLAP(online analytical processing在线分析处理):实时性要求没有OLTP要求高,重分析。用于复杂的 ETL、数据挖掘等延时要求不高的场景。...数据库分类 下面根据业务使用场景对常用数据库进行通用分类, 关系型数据库 产品:Mysql、Oracle、PostgreSQL为代表,均是结构化的关系型数据库,主要基于SQL进行操作; MYSQL 文档数据库

    50320

    如何进行数据库选型

    导语:随着云上应用的迅速发展,DT时代的到来,面对数智化、多场景情况下,我们如何做好数据库选型?...如何进行数据库选型进行数据库选型,主要需要考虑两个方面:业务侧的应用功能需求、运维侧的架构需求业务侧的思考业务多场景化,比如:电商、金融、游戏等用户行业,存储的商品及订单信息、交易数据、游戏储值数据等信息...5大类:关系型数据库:以Mysql、Oracle、PostgreSQL作为代表,均是结构化的关系型数据库,主要基于SQL进行操作文档数据库:以MongoDB、Elasticsearch作为代表,支持灵活的半结构化数据结构...,通常我们会同时使用多种数据库,比如:可能会在将一些热点数据存储在Redis中,将业务数据拆解成行列二维表存储在Mysql中,将一些全文搜索的数据放在ES中,将一些日志数据或者文档数据放在MongoDB...实际上,关系型数据库与非关系型数据库都有明显的优缺点,我们进行选型时可以从业务数据模型、访问方式、数据量等考量,结合具体的应用场景权衡取舍。

    3K20

    大型Electron应用本地数据库技术选型

    开发一个大型Electron的应用,或许需要在客户端存储大量的数据,比如聊天应用或邮件客户端 可选的客户端数据库方案看似很多,但一一对比下来,最优解只有一个 接下来我们就一起来经历一下这个技术选型的过程...无奈这个技术已经被W3C委员会否决了,不知道哪天Electron也不支持了,到时就傻眼了 分析 现在可选的成熟方案几乎只剩下SQLite和IndexedDB了, SQLite是一个轻型的、嵌入式的SQL 数据库引擎...它是在世界上最广泛部署的 SQL 数据库引擎。...IndexedDB是Chromium内置的一个基于JavaScript的面向对象的数据库,在Electron应用内它存储的容量限制与用户的磁盘容量有关,是用户磁盘大小的1/3 市面上选这两个方案的商业产品各都有很多...target=9.0.0 --dist-url=https://atom.io/download/electron 注意:--target后面的内容与你使用的Electron的版本要一致 SQLite的数据库表结构

    6.3K40

    MySQL高可用架构选型,言简意赅全是要点

    MySQL InnoDB Cluster是MySQL的一体化产品解决方案,具有高可用性和可伸缩性的特点,组件包括MySQL Server、MySQL Shell、MySQL Router和MySQL Group...MySQL Group Replication MySQL Group Replication是分布式高可用MySQL数据库,具有容错、自动故障转移、多节点更新、自动成员管理、冲突检测/解决以及防止数据丢失功能...它是复制数据库状态机理论的实现,能够保证整体写入顺序,保证一致性。集群范围内最终一致,如果使用8.0.14之后的MySQL可以实现会话和全局范围的读写强一致性。...Router 透明访问数据库的架构,在应用程序和后端的MySQL数据库之间提供透明的路由连接。...Shell 提供一个数据库管理接口,可以执行MySQL相关的全部任务。

    1.1K10

    实时分析型数据库选型:Doris

    最近有一个项目,需要给一家证券公司做用户画像系统,但是因为数据量很大,传统数据库难以承担,而且传统数据库也不擅长做分析(都需要在业务代码里实现,会造成开发量很大,而且维护很困难)。...重新评估 ---- 我们不能不重新考虑ClickHouse是否适合我们了,如果要重新选择,那我们是选择ES,还是Mysql,还是其他,例如TiDB?...Mysql如果不是没有选择,显然是不会选择的,这会给开发造成很大的工作量。...TiDB这个数据库也是早有耳闻,近几年崛起得很快,只是没有用过,据说是NewSQL型数据库,能兼顾传统SQL和NoSQL的需求,分析的性能也不错,相对于传统数据库有数量级的提升,网上很多测评数据也可以支持这个观点...在网上搜索相关信息过程中,还发现了一个Apache Doris的数据库,美团的技术团队有过一个对比: 来源:https://tech.meituan.com/2020/04/09/doris-in-meituan-waimai.html

    3.2K20

    是什么影响了数据库索引选型

    上一篇文章我们介绍了索引背后的数据结构,这篇文章我们来介绍影响索引数据结构选型的因素——存储器存取。 主存存取原理 主存的构成 主存储器(简称主存或内存)包括存取体、各种逻辑部件及控制电路等。...数据库为什么选用B-/+Tree索引 之前提到过,SQL优化的一个重要原则是减少磁盘I/O次数,磁盘I/O次数也是评价索引结构的优劣的指标之一。...数据库系统的设计者巧妙利用了磁盘预读原理,将一个节点的大小设为等于一个页,这样每个节点只需要一次I/O就可以完全载入。...这也是为什么数据库不选用红黑树作为索引(数据结构)的原因,一是因为红黑树的高度h要大的多;二是红黑树节点在物理上可能是单独存储的,无法利用局部性原理。复杂度为O(h),效率明显比B-Tree差的多。

    34021

    10款常见MySQL高可用方案选型解读

    一、概述 我们在考虑MySQL数据库的高可用架构时,主要考虑如下几方面: 如果数据库发生了宕机或者意外中断等故障,能尽快恢复数据库的可用性,尽可能的减少停机时间,保证业务不会因为数据库的故障而中断。...当业务发生数据库切换时,切换前后的数据库内容应当一致,不会因为数据缺失或者数据不一致而影响业务。 关于对高可用的分级我们暂不做详细的讨论,这里只讨论常用高可用方案的优缺点以及选型。...共享存储 共享存储实现了数据库服务器和存储设备的解耦,不同数据库之间的数据同步不再依赖于MySQL的原生复制功能,而是通过磁盘数据同步的手段,来保证数据的一致性。...比较常见的方案如下: MySQL Cluster MySQL Cluster是官方集群的部署方案,通过使用NDB存储引擎实时备份冗余数据,实现数据库的高可用性和数据一致性。...而使用分布式算法用来解决MySQL数据库数据一致性问题的方法,也越来越被人们所接受,一系列成熟的产品如PhxSQL、MariaDB Galera Cluster、Percona XtraDB Cluster

    6.2K100
    领券