likes
comments
collection
share

走出 《MySQL》 来看看这些数据库

作者站长头像
站长
· 阅读数 71

从数据库的种类来介绍目前比较流行的一些数据库,适合拓宽一些基础认知。 会着重介绍一下一些关系型数据库。

现在的数据库可以分为以下几种:

  1. 关系型数据库(RDBMS):采用关系模型来存储数据,常见的关系型数据库有 MySQL、Oracle、Microsoft SQL Server、PostgreSQL 等。
  2. 非关系型数据库(NoSQL):不使用关系模型来存储数据,而是使用文档、键值对、图形等方式来组织数据。常见的非关系型数据库有 MongoDB、Redis、Cassandra、Couchbase 等。
  3. 新SQL数据库:结合了关系型数据库和非关系型数据库的优点,具有传统关系型数据库的可靠性和 ACID 特性,又能支持分布式部署和处理大规模数据的能力。常见的新SQL数据库有 TiDB、CockroachDB、Spanner 等。
  4. 数据仓库:专门用于处理大规模数据的数据库系统,具有高度可扩展性和并行处理能力,能够支持复杂的分析查询。常见的数据仓库有 Amazon Redshift、Snowflake、Azure Synapse Analytics 等。
  5. 内存数据库:将数据存储在内存中,具有非常高的读写性能和低延迟,适用于高并发的事务处理和实时查询。常见的内存数据库有 Redis、Memcached、VoltDB 等。
  6. 图数据库:专门用于处理图形数据的数据库系统,能够高效地管理和查询大规模的关系网络,常见的图数据库有 Neo4j、ArangoDB、OrientDB 等。
  7. 混合型数据库:结合了多种不同类型数据库的优点,能够灵活地应对不同的数据处理需求。常见的混合型数据库有 Oracle Database Appliance、SQL Server Big Data Clusters 等。

对于不同类型的数据库的部分例举(注意:这里笔者只例举了部分出名的,实际上有很多):

数据库类型数据库名称
关系型数据库Oracle
MySQL
Microsoft SQL Server
PostgreSQL
IBM DB2
SAP Sybase ASE
Teradata
Informix
Amazon Aurora
SQLite
非关系型数据库MongoDB
Cassandra
Redis
Couchbase
HBase
Neo4j
Apache Druid
列存储数据库HBase
Apache Cassandra
Vertica
Google Bigtable
ScyllaDB
文档数据库MongoDB
Couchbase
Apache CouchDB
RethinkDB
图数据库Neo4j
ArangoDB
OrientDB
JanusGraph
Amazon Neptune
时序数据库InfluxDB
TimescaleDB
OpenTSDB
KairosDB
Amazon Timestream
数据仓库Teradata
Amazon Redshift
Snowflake
Google BigQuery
Microsoft Azure Synapse Analytics
Oracle Exadata
Vertica
IBM Netezza
图形数据库Neo4j
ArangoDB
OrientDB
JanusGraph
Amazon Neptune
搜索引擎Elasticsearch
Solr
Amazon CloudSearch
Azure Search
Google Cloud Search
新SQL数据库CockroachDB
TiDB
NuoDB
MemSQL
Google Cloud Spanner
Amazon Aurora
YugabyteDB
FaunaDB
FoundationDB
Azure SQL Database

国内目前比较流行的关系型数据库:

数据库应用场景特点
PolarDB大型互联网应用、金融、物流、电商等高可用、高扩展性、强一致性、支持存储过程、高性能、自动化运维
达梦数据库政务、金融、电信、制造等领域支持多种数据类型、多版本并发控制、强数据完整性、高可用性、自动化管理
OceanBase大型互联网应用、金融、电商、物流等分布式架构、高性能、高可用性、扩展性好、支持 OLAP、多语言支持
MySQL适用于中小型网站、小型企业开源、免费、高可用性、易学易用、社区活跃、支持多种语言
Oracle适用于企业级应用、大型网站等高可用性、安全、性能优秀、稳定可靠、功能全面、适合海量数据处理
DB2适用于企业级应用、大型机构等高可用性、高性能、稳定性强、支持多种数据类型和应用、易于管理

国内目前比较流行的关系型数据库优缺点和性能对比:

数据库实现上的特点性能上的特点优点缺点
PolarDB基于共享存储架构,支持主从架构和多副本同步技术;使用 Paxos 算法保证强一致性具有较高的性能和吞吐量,能够满足高并发场景下的需求;支持在线扩容和自动负载均衡高可用性、高扩展性、强一致性、支持存储过程、高性能、自动化运维价格相对较高,不适合中小型企业使用;一些高级功能需要额外付费
达梦数据库采用自主研发的 VSD 引擎,实现了多版本并发控制、事务管理、数据完整性等核心功能;支持多种分布式架构性能稳定,支持多种数据类型和应用,可以处理海量数据多版本并发控制、强数据完整性、高可用性、自动化管理安全性需要加强,功能相对其他数据库产品略逊一筹
OceanBase采用分布式架构,使用 SQL 语言,支持 OLAP 等多种应用场景;自主研发了分布式事务引擎和 SQL 执行引擎具有较高的性能和扩展性,支持在线扩容和自动负载均衡;支持海量数据处理分布式架构、高性能、高可用性、扩展性好、支持 OLAP、多语言支持部署和配置相对复杂,对硬件环境有一定的要求,不适合中小型企业使用
MySQL使用了多种存储引擎,如 InnoDB、MyISAM 等;采用了分布式架构,支持主从架构和多副本同步技术性能稳定,支持多种语言,适合中小型网站和小型企业使用;开源免费开源、免费、高可用性、易学易用、社区活跃、支持多种语言不支持分布式事务,对于高并发和大数据量的处理有一定限制
Oracle采用了多种技术,如分区表、数据泵、高可用性、在线重组等;支持多种分布式架构性能优秀,能够处理海量数据;稳定可靠支持高可用性、安全性、扩展性,功能强大、支持多种语言、有大量的学习资料和社区支持价格相对较高,需要一定的技术水平才能使用和维护
DB2支持多种分布式架构和存储引擎,如 Q Replication 和 SQL Replication;采用分区表和分片等技术,支持海量数据存储和处理高可用性,高性能,支持事务处理和分布式环境下的数据管理支持高可用性、海量数据存储和处理、多语言支持、易学易用、可靠稳定价格较高,需要一定的技术水平才能使用和维护

目前信创过程中,金融行业使用达梦做替换的比较多。

MariaDB和MySQL

最后,笔者简单介绍下MariaDB。MariaDB是一种开源的关系型数据库管理系统,它是由MySQL的原始开发者之一创建的,旨在保持与MySQL兼容并提供更好的性能和功能。

MariaDB数据库的一些特点和优势:

  1. 高性能:MariaDB具有优化的存储引擎,包括Aria、MyISAM、XtraDB、InnoDB等。其中,InnoDB引擎提供了高级事务支持和行级锁定,可以提供更高的性能和可靠性。
  2. 兼容性:MariaDB被设计为与MySQL兼容,因此可以使用与MySQL相同的SQL语法和API,同时支持MySQL的协议和驱动程序,使得迁移到MariaDB更加容易。
  3. 安全性:MariaDB提供了各种安全功能,例如数据加密、访问控制、SSL/TLS支持等,使得数据更加安全可靠。
  4. 可扩展性:MariaDB具有分布式性能,可以在多个服务器之间水平扩展,同时支持垂直扩展,可以在单个服务器上增加硬件资源。
  5. 开放源代码:MariaDB是开放源代码的数据库系统,用户可以自由修改和分发它,因此可以为用户带来更高的自由度和可定制性。
  6. 社区支持:MariaDB有一个庞大的社区,它提供了大量的文档、工具和支持,可以为用户提供帮助和支持。

MariaDB是一种高性能、兼容性好、安全可靠、可扩展的开源关系型数据库管理系统,可以广泛应用于Web应用程序、企业级数据管理系统等领域。

MariaDB和MySQL的一些优缺点的比较:

优点MariaDBMySQL
性能
兼容性
安全性
可扩展性
开放源代码
社区支持
具有列存储引擎×
具有JSON数据类型×
具有虚拟列×
具有多源复制×
性能优化插件×
缺点MariaDBMySQL
市场份额×
生态系统×
历史问题×
主流支持×

从上表可以看出,MariaDB和MySQL在大多数方面都具有相似的优点和特点,例如性能、兼容性、安全性、可扩展性、开放源代码和社区支持等。然而,MariaDB具有一些MySQL没有的优点,例如列存储引擎、JSON数据类型、虚拟列和多源复制等功能。另外,MariaDB还提供了性能优化插件,可以帮助用户进一步提高性能。但是,相比MySQL,MariaDB的市场份额和生态系统相对较小,同时,由于MariaDB是相对较新的数据库系统,因此可能存在一些历史问题。此外,由于MySQL是主流数据库系统之一,因此在主流支持方面,MySQL具有一定的优势。

转载自:https://juejin.cn/post/7220042622526029880
评论
请登录