NewSQL 是什么

子凡 2019-05-24 08:57:04
问答

NewSQL是一类关系数据库管理系统,旨在为在线事务处理工作负载提供NoSQL系统的可伸缩性,同时保持传统数据库系统的ACID保证,不仅具有NoSQL对海量数据的存储管理能力,保持传统数据库支持ACID和SQL等特性。

NewSQL 是一类关系数据库管理系统,是对各种新的可扩展/高性能数据库的简称,旨在为在线事务处理工作负载提供 NoSQL 系统的可伸缩性,同时保持传统数据库系统的 ACID 保证。这类数据库不仅具有 NoSQL 对海量数据的存储管理能力,还保持了传统数据库支持 ACID 和 SQL 等特性。许多处理高配置数据的企业系统对于传统的关系数据库而言太大,但具有对 NoSQL 系统不实用的事务和一致性要求。

NewSQL

NewSQL 系统采用各种内部架构。两个常见的区别特征是它们支持关系数据模型(包括 ACID 一致性)并使用 SQL 作为其主要接口。

NewSQL 系统可以松散地分为三类:

新架构

一些系统采用无共享节点的集群,其中每个节点管理数据的子集。它们包括分布式并发控制,流控制和分布式查询处理等组件。此类别中的示例系统包括 Amazon Aurora,Google Spanner,TiDB,CockroachDB,Altibase,Apache Ignite,GridGain,Clustrix,VoltDB,MemSQL,NuoDB,YugaByte DB 和 Trafodion。

SQL 引擎

第二类是优化存储引擎的 SQL。这些系统提供与 SQL 相同的编程接口,但比内置引擎(如 InnoDB)更好。示例包括 MySQL Cluster,Infobright,TokuDB,MyRocks,SQL Server(具有 ColumnStore 和 InMemory 功能)和 MariaDB Columnstore。

透明分片

这些系统提供了一个分片 中间件层,可以跨多个节点自动拆分数据库。例子是 ScaleBase 和 Vitess。

NoSQL 将改变数据的定义范围。它不再是原始的数据类型,如整数、浮点。数据可能是整个文件。NoSQL 可能会吓到 DBA,因为他们担心失去他们自己的领域。NoSQL 数据库是非关系的、水平可扩展、分布式并且是开源的。MongoDB 的创始人 Dwight Merriman 表示 NoSQL 可作为一个 Web 应用服务器、内容管理器、结构化的事件日志、移动应用程序的服务器端和文件存储的后备存储。

0个人收藏 收藏

评论交流

泪雪默认头像 请「登录」后参与评论
  1. 加载中..

相关推荐

  • LINQ是什么

    LINQ是什么

    语言集成查询(LINQ)是微软的一项技术。新增一种自然查询的SQL语法到.NET Framework的编程语言中,当前可支持C#以及Visual Basic .NET语言。
  • JDBC

    jdbc是什么

    JDBC的全称是Java数据库连接(Java Database connect),它是一套用于执行SQL语句的Java API。应用程序可通过这套API连接到关系数据库,并使用SQL语句来完成对数据库中数据的查询、更新和删除等操作。
  • Adminer

    Adminer,简单便捷的PHP数据管理工具

    Adminer是一款轻量级、高效的数据库管理工具,支持多种数据库系统。它以单一PHP文件部署,用户界面简洁直观,提供全面的数据库操作功能,包括SQL执行、数据导入导出及权限管理等。相较于phpMyAdmin等其他工具,Adminer更为简洁高效,适合寻求快速、便捷数据库管理解决方案的开发者和小型项目团队。
  • HBase

    HBase使用场景有哪些

    HBase 是一个分布式的、面向列的开源数据库。可用于推荐画像特别是用户的画像,储存浏览记录,对象存储,时序数据,Cube分析,NewSQL,Feeds流等等。
  • HeidiSQL

    HeidiSQL,功能强大的数据库管理客户端软件

    HeidiSQL是一款开源且功能强大的数据库管理工具,支持MySQL、MariaDB、SQL Server等多种数据库。它提供了直观的图形用户界面,使得数据库的查询、编辑、管理变得简单高效。无论是新手还是高级用户都能从其丰富的功能中受益,包括数据操作、导入导出、用户权限管理等。
  • Navicat

    Navicat,可多重连接的数据库管理工具

    Navicat是一款功能强大且用户友好的数据库管理工具,支持多种数据库系统,如MySQL、PostgreSQL等。它提供数据迁移、可视化查询构建器、数据备份与恢复等高级功能,通过直观的图形界面简化了数据库管理流程,提高工作效率。Navicat是一款适合各种规模企业和个人开发者的优秀数据库管理解决方案。