NOSQL概念入门

  一、NOSQL概念

  随着大数据时代的到来,分布式存储得到了快速发展,其中比较受欢迎的,主要以key-value键值对存储的非关系型数据库进入了大家的视野。

  NOSQL的全称是Not Only Sql,是非关系型数据存储的广义定义。它存储的不再是结构化的数据,即数据再没有固定的长度,类型和固定的格式等,比较主流的是以key-value键值对存储。

  二、NOSQL优点

  (1)快速的读写:NOSQL数据存储不需要固定的表结构,通常也不会存在取连接,释放连接的操作,在大数据存储上具备关系型数据库所不具备的性能优势。

  (2)方便的扩展:在关系型数据库中为某一条记录扩展字段,需要修改表结构,而NOSQL数据库存储的数据结构不稳定,每条记录可以根据业务需要随意增加键值对数据。

  (3)低廉的成本:相比关系型数据库改表,重构过程带来的人力资源的浪费,以及单个计算机可以容纳多个独立的NOSQL数据库等方面来看,NOSQL在成本上具备很大的优势

  (4)灵活的数据类型:拿MongoDB来说,支持的数据类型多样,具体可见如下

  • String : 这是最常用的数据类型来存储数据。在MongoDB中的字符串必须是有效的UTF-8

  • Integer : 这种类型是用来存储一个数值。整数可以是32位或64位,这取决于您的服务器

  • Boolean : 此类型用于存储一个布尔值 (true/ false) 。

  • Double : 这种类型是用来存储浮点值。

  • Min/ Max keys : 这种类型被用来对BSON元素的最低和最高值比较(该类型不了解...)

  • Arrays : 使用此类型的数组或列表或多个值存储到一个键。

  • Timestamp : 时间戳。这可以方便记录时的文件已被修改或添加。

  • Object : 此数据类型用于嵌入式的文件。

  • Null : 这种类型是用来存储一个Null值。

  • Symbol : 此数据类型用于字符串相同,但它通常是保留给特定符号类型的语言使用。

  • Date : 此数据类型用于存储当前日期或时间的UNIX时间格式。可以指定自己的日期和时间,日期和年,月,日到创建对象。

  • Object ID : 此数据类型用于存储文档的ID

  • Binary data : 此数据类型用于存储二进制数据。

  • Code : 此数据类型用于存储到文档中的JavaScript代码

  • Regular expression : 此数据类型用于存储正则表达式

  三、NOSQL缺点

  (1)不提供对sql的支持

  (2)支持的特性不够丰富(不支持事务,不支持多表联查)

  (3)现有的NOSQL产品,相对于已有的Mysql,Oracle等关系型数据库来说成熟度不高。

  

上一篇:使用navicat 链接数据库时乱码


下一篇:BZOJ 2298: [HAOI2011]problem a【动态规划】