论NoSQL数据库技术及其应用 随着互联网Web 2.0网站的兴起,传统关系数据库在应对Web 2.0网站,特别是超大规模和高并发的Web 2.0纯动态SNS网站方面已经显得力不从心,暴露了很多难以解决的问题,而非关系型的数据库则由于其本身的特点得到

admin2019-10-09  42

问题                                                 论NoSQL数据库技术及其应用
  随着互联网Web 2.0网站的兴起,传统关系数据库在应对Web 2.0网站,特别是超大规模和高并发的Web 2.0纯动态SNS网站方面已经显得力不从心,暴露了很多难以解决的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。
  NoSQL(Not only SQL)的产生就是为了解决大规模数据集合及多种数据类型带来的挑战,尤其是大数据应用难题。目前NoSQL数据库并没有一个统一的架构,根据其所采用的数据模型可以分为4类,即键值(Key-Value)存储数据库、列存储数据库、文档型数据库和图形(Graph)数据库。
  请围绕“论NoSQL数据库技术及其应用”论题,依次从以下3个方面进行论述。
  1.概要叙述你参与管理和开发的软件项目,以及你在其中所承担的主要工作。
  2.详细论述常见的NoSQL数据库技术及其所包含的主要内容,并说明NoSQL数据库的主要适用场景。
  3.结合你具体参与管理和开发的实际项目,说明具体采用哪种NoSQL数据库技术,并说明架构设计过程及其应用效果。

选项

答案 NoSQL泛指非关系型的数据库,随着互联网Web 2.0网站的兴起,传统的关系数据库在应付Web 2.0网站,特别是超大规模和高并发的SNS类型的Web 2.0纯动态网站方面已经显得力不从心,暴露了很多难以解决的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合及多重数据种类带来的挑战,尤其是大数据应用难题。 虽然NoSQL的流行与火起来才短短一年的时间,但是不可否认,现在已经开始第2代进程。尽管早期的堆栈代码只能算是一种实验,然而现在的系统己经更加成熟和稳定。不过现在也面临一个严酷的事实,即技术越来越成熟,以至于原来很好的NoSQL数据存储不得不进行重写。也有少数人认为这就是所谓的2.0版本,该工具可以为大数据建立快速、可扩展的存储库。 NoSQL数据库的4大分类如下。 (1)键值(Key.Value)存储数据库。 这一类数据库主要用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。Key-Value模型对于IT系统来说的优势在于简单和易部署。但是如果DBA只对部分值进行查询或更新的时候,Key-Value则显得效率低下,如Tokyo Cabinet/Tyrant、Redis、Voldemort、Oracle BDB。 (2)列存储数据库。 这部分数据库通常是用来应对分布式存储的海量数据,键仍然存在,但是它们的特点是指向了多个列。这些列是由列家族来安排的,如Cassandra、Hbase和Riak。 (3)文档型数据库。 文档型数据库的灵感来自Lotus Notes办公软件,而且它与第1种键值存储相类似。该类型的数据模型是版本化的文档,半结构化的文档以特定的格式存储。例如,JSON。文档型数据库可以看作键值数据库的升级版,允许之间嵌套键值。而且文档型数据库比键值数据库的查询效率更高,如CouchDB和MongoDB。国内也有文档型数据库SequoiaDB,已经开源。 (4)图形(Graph)数据库。 图形结构的数据库同其他行列,以及刚性结构的SQL数据库不同,它使用灵活的图形模型,并且能够扩展到多台服务器。NoSQL数据库没有标准的查询语言(SQL),因此进行数据库查询需要定制数据模型。许多NoSQL数据库都有REST式的数据接口或者查询API,如Neo4J、InfoGrid和Infinite Graph。 我们总结NoSQL数据库在以下几种情况下比较适用。 (1)数据模型比较简单。 (2)需要灵活性更强的IT系统。 (3)对数据库性能要求较高。 (4)不需要高度的数据一致性。 (5)对于给定key,比较容易映射复杂值的环境。

解析
转载请注明原文地址:https://kaotiyun.com/show/KVQZ777K
0

最新回复(0)