个人对于关系数据和NOSQL的看法

8 篇文章 0 订阅
1 篇文章 0 订阅

 

存储模型:

关系数据库中每条数据都是符合一定的格式,每个字段都有一个确定的类型,简单的说是一个格式化的数据。

NOSQL的特点在于数据的格式是非固定的,每一个文档都可以拥有自己的数据格式,归纳的讲就是非格式化的数据,无论底层是采用文档,列存储还是K-V模式

 

业务功能实现:

伴随着关系数据库的有数据库的三设计范式,范式所约定的终极目的是降低数据间的冗余,对于多关系之间数据查询难免的会使用到join,但是为了性能及开发的方便性上来,我们又期望不要过多的join(join操作会带来一定的性能问题),这个时候才用的手段大多是数据的冗余,牺牲一定的设计范式。但是,但是,这个join操作还是很难完全避免!

而NOSQL这种完全抛弃关系数据库中的关系,灵活的数据组织方式,这个大大提升了开发的效率,得到一个完整业务含义的数据,而不是多个表。同时降低了将来的数据格式的更变陈本,这种数据格式的变更在关系数据库中若存在大数据的话陈本是非常高的。

 现在的业务大多可以分为两类:联机分析处理(OLAP)及联机事务处理(OLTP),对于OLAP根本没有必要使用NOSQL,而OLTP业务选择NOSQL,也只能满足CAP中的两项而已,所以将来NOSQL不会也不能完全的取代关系数据库

 

ACID:

这块一直都是关系数据库的强项,因为现在火热的大多是些互联网网站或是业务模型,而这类的场景通常会牺牲一定的事务和一致性来保证业务的完整性(详见CAP理论),但是对于传统的电信,金融领域NOSQL还是难以撼动关系数据库的地位。而且对于事务的支持NOSQL还不是很完善。但是NOSQL的水平可扩展性上非常强大,这个也是牺牲了一定的ACID代价来实现的!

 

辅助功能:

    切库,分表,备份,监控等功能方面,现在的关系数据库还是较NOSQL成熟点。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实验四比较了NoSQL关系数据库的操作。 首先,NoSQL数据库相对于关系数据库来说更加灵活和扩展性强。NoSQL数据库可以支持非结构化和半结构化数据,而关系数据库只支持结构化数据。这意味着在NoSQL数据库中可以存储更加复杂和多样化的数据类型,比如文档、图形和键值对等。 其次,NoSQL数据库的存储模型和数据结构灵活性更大。NoSQL数据库采用了不同的存储模型,比如键值对、列族、文档型和图形数据库等。每种存储模型都有自己的优势和适用场景,可以根据具体需求选择最合适的模型。而关系数据库只支持表格结构,需要预先定义表的模式和字段。 另外,NoSQL数据库在读写性能方面通常表现更好。NoSQL数据库可以水平扩展,即通过增加服务器节点来提高读写吞吐量,而关系数据库通常只能通过垂直扩展,即增加服务器的硬件性能来提高吞吐量。因此,在处理大规模数据和高并发的场景下,NoSQL数据库的性能更好。 然而,相对于关系数据库NoSQL数据库的一致性和事务支持通常较弱。由于NoSQL数据库通常采用分布式架构,数据的一致性和并发控制可能存在较大挑战,需要应用程序自己处理。而关系数据库通常具有强一致性和严格的事务支持。 综上所述,NoSQL关系数据库的操作有一些重要的区别。NoSQL数据库更加灵活和可扩展,适用于非结构化和半结构化数据的存储;关系数据库则更加适合结构化数据,并具有更强的一致性和事务支持。根据具体需求,可以选择合适的数据库类型来处理不同类型的数据和场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值