
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
数据库架构开发与应用是大多数软件编程开发程序员在开发软件的时候会经常用到的一个编程技术,而本文我们就通过案例分析来简单了解一下,NoSQL技术应用都有哪些方法。
1、NoSQL技术和行业背景
NoSQL是对不同于传统关系型数据库的一个统称,提出NoSQL的初衷是针对某些场景简化关系型数据库的设计,更容易水平扩展存储和计算,更侧重于实现高并发、高可用和高伸缩性。
2、NoSQLvs关系型数据库
其实早几年大家看两者的区别是清晰的,关系型数据库就是用SQL语句操作,具有行列结构和预定义scheme的二维表;NoSQL是Key-Value存储,它是一个分布式的HashMap的存储。但近几年却有些不清晰了?主要是出现NoSQL的部分产品也开始增强在SQL的接口和事务等方面的能力,比如Cassandra支持CQL,DynamoDB支持PartiQL,InfluxDB也支持InfuxQL等。这里我的看法是,NoSQLvs关系型数据库的关键差异:关系型数据库具有强大的ACID事务、复杂SQL检索、数据完整性约束等能力,这给它带来很好的易用性,但同时也是它实现高并发、高可用和高伸缩性的束缚;NoSQL在工程实现上做了个取舍平衡,弱化甚至舍弃了在跨分区事务、分布式JOIN等维度的能力,增强其在高并发、高可用和高伸缩性方面的能力。
3、多模型NoSQL的数据模型
多模型NoSQL中的多模型是指这里包括多个数据模型:键值模型Key-Value、宽表模型Wide-column、文档模型Document、时序模型Time-series、图模型Graph和内存模型in-memory等。我们可以简单理解,Key-Value是个哈希表,Wide-column是个多维的哈希表即Key-Key-Value结构,文档Document是类似于Json结构的一个嵌套树结构,Graph是以顶点和边组成的复杂图结构,Time-series是按时间有序的一个检索表。
数据模型使用和发展可以从受欢迎程度和增长速度两个指标来看。受欢迎程度反映着应用推广的累积效应,排名前三的依次为文档>键值>宽表;增长速度代表着未来需求的反应,排名前三依次时序>键值>图,其中时序和图得益于物联网LoT以及实时计算等方面需求目前增长较为迅速,国外NoSQL的一些创业公司,近期较多集中在时序和图存储相关领域。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。