数据库的处理方式,简单来说可以分为一下两种:
1、联机事务处理OLTP,主要执行基本的日常事务处理,比如数据库记录的增删改查。主要特点有以下几种,
(1)实时性要求高。
(2)数据量不是很大,生产库上的数据量一般不会太大,而且会及时做相应的数据处理与转移。
(3)交易一般是确定的,比如银行存取款的金额肯定是确定的,所以OLTP是对确定性的数据进行存取。
(4)高并发,并且要求满足ACID原则。比如两人同时操作一个银行卡账户,比如大型的购物网站秒杀活动时上万的QPS请求。
2、联机分析处理OLAP,是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。主要特点有以下几种,
(1)实时性要求不是很高,比如最常见的应用就是天级更新数据,然后出对应的数据报表。
(2)数据量大,因为OLAP支持的是动态查询,所以用户也许要通过将很多数据的统计后才能得到想要知道的信息,例如时间序列分析等等,所以处理的数据量很大。
(3)OLAP系统的重点是通过数据提供决策支持,所以查询一般都是动态,自定义的。所以在OLAP中,维度的概念特别重要。一般会将用户所有关心的维度数据,存入对应数据平台。
在大数据时代,两种业务将相互融合,用户将数据存储进去后,需要比较方便高效的方式访问这块数据,但是 OLTP 和 OLAP 在 SQL优化器/执行器这层的实现一定是千差万别的。以往的实现中,用户往往是通过 ETL 工具将数据从 OLTP 数据库同步到 OLAP数据库,这一方面造成了资源的浪费,另一方面也降低了OLAP的实时性。对于用户而言,如果能使用同一套标准的语法和规则来进行数据的读写和分析,会有更好的体验。
这种情况下,NewSQL就运应而生。NewSQL是对各种新的可扩展/高性能数据库的简称,这类数据库不仅具有NoSQL对海量数据的存储管理能力,还保持了传统数据库支持ACID和SQL等特性。
sql/nosql/newsql的区别更多精彩内容,请详细阅读以下内容,
网友评论