和关系型数据库,非关系型数据库( 二 )


仅需要根据id取出相应的value就可以完成查询 。高并发,读写能力强,分布式计算低成本,架构的灵活性;没有复杂的关系 。弱化数据结构一致性,使用更加灵活,有良好的可扩展性缺点:没有标准化;查询功能有限 。操作灵活导致容易出错和混乱常见的关系型数据库和非关系型数据库关系型的常见的有Oracle,Microsoft SQL Server,MySQL,PostgreSQL,DB2,Microsoft Access,SQLite,Teradata,MariaDB(MySQL的一个分支),SAP常见的非关系型数据库NoSql、Cloudant、MongoDB、redis、HBase区别的总结首先一般非关系型数据库是基于CAP模型,而传统的关系型数据库是基于ACID模型的1. 数据存储结构:首先关系型数据库一般都有固定的表结构,并且需要通过DDL语句来修改表结构,不是很容易进行扩展,而非关系型数据库的存储机制就有很多了,比如基于文档的,K-V键值对的,还有基于图的等,对于数据的格式十分灵活没有固定的表结构,方便扩展,因此如果业务的数据结构并不是固定的或者经常变动比较大的,那么非关系型数据库是个好的选择2. 可扩展性传统的关系型数据库给人一种横向扩展难,不好对数据进行分片等,而一些非关系型数据库则原生就支持数据的水平扩展(比如mongodb的sharding机制),并且这可能也是很多NoSQL的一大卖点,其实象Mysql这种关系型数据库的水平扩展也并不是难,即使NoSQL水平扩展容易但对于向跨分片进行joins这种场景都没有什么太好的解决办法,不管是关系型还是非关系型数据库,解决水平扩展或者跨分片Joins这种场景,在应用层和数据库层中间加一层中间件来做数据处理也许是个好的办法3. 数据一致性非关系型数据库一般强调的是数据最终一致性,而不没有像ACID一样强调数据的强一致性,从非关系型数据库中读到的有可能还是处于一个中间态的数据,因此如果你的业务对于数据的一致性要求很高,那么非关系型数据库并不一个很好的选择,非关系型数据库可能更多的偏向于OLAP场景,而关系型数据库更多偏向于OLTP场景 。
数据库Mysql和Oracle是关系型数据库吗?还有哪些非关系型数据库?

和关系型数据库,非关系型数据库


数据库可分为关系型的和非关系型,MySQL和Oracle就是常见的关系型数据库 。那么什么是关系型数据库,什么是的非关系型数据库呢?关系型和非关系型数据库的定义和区别关系型和非关系型的区别就是数据的存储方式,简单的理解就是关系型数据库所呈现数据结构是表,由二维表及其之间的联系所组成的一个数据组织,可以将关系理解为表,关系型就是表格型式的,数据存储在数据表的行和列中 。
非关系型数据库应该理解为一种数据结构化存储方法的集合,大块数据组合在一起,可以是文档或者键值对图结构等,属于分布式存储 。关系型数据库和非关系型数据的优缺点关系型数据库容易理解,二维表结构是非常贴近逻辑世界一个概念,关系模型相对网状、层次等其他模型来说更容易理解,可以使用SQL语言进行数据库的操作,便于维护,但同时也有一些缺点就是其读写性能比较差,数据结构固定,对海量数据的处理不尽人意 。
【和关系型数据库,非关系型数据库】非关系型数据库由于无需sql层的解析所以读写性能很高再加上它是基于键值对的,数据没有耦合性,容易扩展 。数据的存储格式是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等 。但是它不提供sql支持,学习和使用成本较高,无事务处理 。目前常见的关系型和非关系型数据库关系型数据库:Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL非关系型数据库:NoSql、Cloudant、MongoDb、redis、HBase 。

推荐阅读