NoSQL数据库
========
NoSQL,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。
NoSQL数据库的四大分类
===============
键值(Key-Value)存储数据库
--
这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。Key/value模型对于IT系统来说的优势在于简单、易部署。但是如果DBA只对部分值进行查询或更新的时候,Key/value就显得效率低下了。 举例如:Tokyo Cabinet/Tyrant, Redis, Voldemort, Oracle BDB.
列存储数据库
--
这部分数据库通常是用来应对分布式存储的海量数据。键仍然存在,但是它们的特点是指向了多个列。这些列是由列家族来安排的。如:Cassandra, HBase, Riak.
文档型数据库
--
文档型数据库的灵感是来自于Lotus Notes办公软件的,而且它同第一种键值存储相类似。该类型的数据模型是版本化的文档,半结构化的文档以特定的格式存储,比如JSON。文档型数据库可 以看作是键值数据库的升级版,允许之间嵌套键值。而且文档型数据库比键值数据库的查询效率更高。如:CouchDB, MongoDb. 国内也有文档型数据库SequoiaDB,已经开源。
图形(Graph)数据库
--
图形结构的数据库同其他行列以及刚性结构的SQL数据库不同,它是使用灵活的图形模型,并且能够扩展到多个服务器上。NoSQL数据库没有标准的查询语言(SQL),因此进行数据库查询需要制定数据模型。许多NoSQL数据库都有REST式的数据接口或者查询API。[2] 如:Neo4J, InfoGrid, Infinite Graph.
因此,我们总结NoSQL数据库在以下的这几种情况下比较适用:1、数据模型比较简单;2、需要灵活性更强的IT系统;3、对数据库性能要求较高;4、不需要高度的数据一致性;5、对于给定key,比较容易映射复杂值的环境。
- 目录
- 第一章:PHP简介、开发环境、基本语法
- 0.0 各类操作系统下环境配置
- 1.0 基本语法和控制符
- 1.1 变量常量
- 1.1.1 显示数据Echo、Var_dump
- 1.1.2 数据类型
- 1.2 判断逻辑(if、switch)
- 1.3 循环逻辑(for、while)
- 1.4 数组
- 1.4.1 Foreach循环
- 1.4.2 数组操作
- 1.5 函数
- 1.5.5 编码规范PSR
- 1.6 魔术变量
- 1.7 超全局变量
- 1.8 时间日期
- 1.9 字符串操作
- 1.10 开发/部署环境配置
- 1.11 PECL 、 Yaf 、 Swoole
- 第二章:PHP+数据库
- 2.0 SQL入门
- 2.1 PDO连接、操作数据库
- 2.2 PDO的CURD操作
- 2.3 预处理
- 2.4 SQLite轻量级数据库
- 2.5 NoSQL数据库
- 2.6 缓存 、主从复制、集群 、负载均衡
- _连接 + 管理数据库(过期)
- _增删查改CURD操作(过期)
- 第三章:PHP面向对象 + 常用功能
- 5.1 面向对象入门
- 5.2 面向对象特性
- 5.3 文件上传
- 5.4 富文本编辑
- 5.6 MVC框架模式
- 5.7 文件读取函数
- 5.8 URL相关
- 5.9 Serialize序列化
- 第四章:Cookie+Session+用户模块
- 4.1 Cookie
- 4.2 Session
- 4.3 用户中心
- 4.4 SSO单点登录
- 4.5 类 C S 架构REST和Oauth用户中心
- 第五章:Linux基础+Git入门+远程部署
- 3.1 Linux基础
- 3.2 Git使用
- 3.3 远程部署
- 第六章:PHP框架
- 第七章:PHP安全和测试
- 第八章:包管理工具+PSR代码规范
- PHP社区代码规范 PSR
- 第九章:PHP测试 + PHP调试
- 第十章:性能优化+网站架构+第三方服务
- 10.1 云计算和网站架构
- 第十一章:PHP拓展
- 拓展:十二章 PHP爬虫
- 拓展:十三章 CMS实战
- 拓展:十四章 微信公众号开发
- 拓展:第十五章 注释、API文档、IDE自动提示
- 拓展:第十六章 API开发
- 附录:参考资料
- 附录:实用在线工具
- 实用技巧和常用函数
- Linux下WDCP主机面板配置
- 使用Git部署到MoPass云
- Curl内网访问封装函数
- 附录:开源组件参考