加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Nosql and Mongodb 介绍

发布时间:2020-12-13 13:42:20 所属栏目:百科 来源:网络整理
导读:Nosql兴起的背景: 1)web2.0兴起(高交互性),传统的关系型数据库为了保证“ 通用性 ”的设计而带来 了功能复杂,性能开销大,和价格昂贵的问题。 2)避免不必要的复杂性 3)更高的吞吐量和高并发 4)在商用硬件上的水平扩展能力 5)Nosql实现大表自

Nosql兴起的背景:

    1)web2.0兴起(高交互性),传统的关系型数据库为了保证“通用性”的设计而带来    了功能复杂,性能开销大,和价格昂贵的问题。

    2)避免不必要的复杂性

    3)更高的吞吐量和高并发

    4)在商用硬件上的水平扩展能力

    5)Nosql实现大表自动切割,更有利于支持分布式处理

    6)在性能和安全方面做了折中(有时不需要sql的很高的安全性)

    7)云计算的需求(从中心模式转到分布模式)

各种主流Nosql数据库:

    1)memcached数据库:memcached数据库的成功,带动了Nosql运动的热潮

        特点:

1)它是一个存储键值对儿的hashmap

2)高性能的分布式内存缓存服务器,常驻内存,用于动态web应用,以减轻

数据库负载

3)客户端通过memcached协议与守护进程(daemon)通信

4)缺乏认证与安全控制(所以应该部署于防火墙的内部)

5 )基于libevent的事件处理机制(http://baike.haosou.com/doc/1037929- 1097798.html

6 )不互相通信的分布式(服务器之间不互相通信)

 2)redis数据库:是一个key-value存储系统,和memcached类似

         1 )运行速度异常快

        2)数据都缓存在内存中,它是有硬盘支持的内存数据库

        3)支持Master-slave复制(主从复制)

        4)支持多种数据类型 如string(字符串),list(链表),set(集合),zset(有序        集合)

        5)支持pop/push机制,允许用户实现消息机制

    3)neo4j数据库:它是基于关系的图型数据库

        1)访问协议:http/rest

2)可独立使用,或嵌入到java程序中使用

3)图型的节点和边都可以带有元数据

4)使用多种方法支持路径搜索

5)使用键值和关系进行索引

6)为读操作进行优化

7)支持事务,企业版还支持在线备份和安全性及监控

4)Cassandra数据库:非关系型的混合型的数据库,类似于google的   

     bigtable( 基于列的)数据库

1)由java语言开发

         2 )写操作比读操作更快

 3)分布式,基于column的结构

4)用户:facebook

5)Hbase数据库:Hadoop database 是google的bigtable数据库的开源实现

1)是分布式的,列式的数据库

2)Hbase利用Hadoop的HDFS作为文件系统,利用Hadoop Mapreduce

来处理Hbase中的海量数据

3)采用分布式架构Map/reduce

4)协议:http/rest,同时支持thirft

5)适用于大数据

6)Mongodb数据库:

1)社区非常活跃,文档丰富,由10gen公司商业支持,持续性有保障

2)所用语言:c++

3)保存了sql的某些优良特性(索引,查寻……)

4)协议:Custom,binary(Bson)

5)支持Master/slave复制(支持自动错误回复,使用sets复制)

7)内建分片机制

8)支持javascript表达式查询,在服务器端可以执行任意js函数

9)数据存储采用内存到文件的映射

10)在32位操作系统上,数据库大小限制在2.5G以内,64位系统无限制

11)空数据库大约占192M

12) 采用GridFS存储大数据和元数据

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读