摘要: “评博客,送好书!”限量版赠送!《大数据存储MongoDB实战指南》上市了!这本书刚刚上市,即荣登各大排行榜榜单,并得到了不少读者和老师的好评。本书豆瓣页面:http://book.douban.com/subject/26333934。一路走来,要真诚感谢各位热心读者!为了回馈广大读者,特别是对大...阅读全文
posted @ 2015-03-17 23:15 郭远威 阅读(215) 评论(8) 编辑
摘要: 自我学习,仅供参考:数据库总是会遇到各种失败的场景,如网络连接断开、断电等,尽管journaling日志功能也提供了数据恢复的功能,但journaling通常是针对单个节点来说的,只能保证单节点数据的一致性,而复制集通常是由多个节点组成,每个节点除了journaling日志恢复功能外,整个复制集还具有故障自动转移的功能,这样能保证数据库的高可用性。在生产环境中一个复制集最少应该包含三个节点,其中有一个必须是主节点,典型的部署结构如下图:其中每个节点都是一个mongod进程对应的实例,节点之间互相周期性的通过心跳检查对方的状态,默认情况下primary节点负责数据的读、写,second节点备份p阅读全文
posted @ 2013-08-24 17:47 郭远威 阅读(2048) 评论(0) 编辑
摘要: 安装Python 下载地址:http://www.python.org/, Python 有 Python 2 和 Python 3 两个版本, 语法有些区别,ubuntu上自带了python2.7.6,所以在 ubuntu上暂时不需额外安装。 安装JAVA JDK 下载地址:http://www.阅读全文
posted @ 2016-04-26 09:51 郭远威 阅读(640) 评论(2) 编辑
摘要: 集群介绍:Galera是一个MySQL(也支持MariaDB,Percona)的同步多主集群软件,目前只支持InnoDB引擎。主要功能:同步复制真正的multi-master,即所有节点可以同时读写数据库自动的节点成员控制,失效节点自动被清除新节点加入数据自动复制真正的并行复制,行级用户可以直接连接...阅读全文
posted @ 2015-05-17 12:37 郭远威 阅读(4200) 评论(0) 编辑
摘要: 2015年3月3号,MongoDB新版本3.0发布了,和以前版本相比,这次改动较大,主要有以下几个方面:1. 引入了插件式的存储引擎架构,允许第三方根据实际项目的需要开发存储引擎,类似于MySql中的分层存储引擎架构。随同这种架构发布的新的存储引擎为WiredTiger,老的存储引擎更名为MMAPv...阅读全文
posted @ 2015-03-27 22:49 郭远威 阅读(1730) 评论(1) 编辑
摘要: “评博客,送好书!”限量版赠送!《大数据存储MongoDB实战指南》上市了!这本书刚刚上市,即荣登各大排行榜榜单,并得到了不少读者和老师的好评。本书豆瓣页面:http://book.douban.com/subject/26333934。一路走来,要真诚感谢各位热心读者!为了回馈广大读者,特别是对大...阅读全文
posted @ 2015-03-17 23:15 郭远威 阅读(215) 评论(8) 编辑
摘要: 锁粒度与并发性能怎么样?数据库的读写并发性能与锁的粒度息息相关,不管是读操作还是写操作开始运行时,都会请求相应的锁资源,如果请求不到,操作就会被阻塞。读操作请求的是读锁,能够与其它读操作共享,但是当写操作请求数据库时,它所申请的是写锁,具有排它性。MongoDB在2.2之前的版本,锁的粒度是非常粗的...阅读全文
posted @ 2014-12-26 21:18 郭远威 阅读(841) 评论(3) 编辑
摘要: 上面的(http://www.cnblogs.com/guoyuanwei/p/3565088.html)介绍了部署了一个默认的分片集群,对mongoDB的分片集群有了大概的认识,到目前为止我们还没有在集群上建立其它数据库,mongoDB的分片是基于集合(表)来进行的,因此要对一个集合分片,必须先使...阅读全文
posted @ 2014-06-01 06:35 郭远威 阅读(1258) 评论(0) 编辑
摘要: 前面几篇文章的分析复制集解决了数据库的备份与自动故障转移,但是围绕数据库的业务中当前还有两个方面的问题变得越来越重要。一是海量数据如何存储?二是如何高效的读写海量数据?尽管复制集也可以实现读写分析,如在primary节点上写,在secondary节点上读,但在这种方式下客户端读出来的数据有可能不是最新的,因为primary节点到secondary节点间的数据同步会带来一定延迟,而且这种方式也不能处理大量数据。mongoDB从设计之初就考虑了上面所提到的两个问题,引入了分片机制,实现了海量数据的分布式存储与高效的读写分离。复制集中的每个成员是一个mongod实例,但在分片部署上,每一个片可能就是阅读全文
posted @ 2014-02-24 18:09 郭远威 阅读(1082) 评论(1) 编辑
摘要: 对于某些应用程序来说,写关注是重要的。它能判断哪些写操作成功写入了,哪些失败了,对于失败的操作,驱动程序能返回错误,由应用程序决定怎么处理。如果没有写关注,应用程序发送一个写操作到socket后,就不会管后面发送了什么情况,不知道是否成功写入数据库,这种情形对于日志类型的应用程序还是可以接受的,因为偶尔的写失败不会影响整个日志的监控情况;带有写关注的操作会等到数据库确认成功写入后才能返回,因此写关注会带来一点性能的损失。下面先分析复制集上写关注配置。默认情况下复制集的写关注只针对primary节点,当应用程序发送一个写操作请求时,驱动程序会调用getLastError命令返回写操作的执行情况(阅读全文
posted @ 2014-01-27 22:16 郭远威 阅读(366) 评论(0) 编辑
摘要: 上面的介绍的数据同步(http://www.cnblogs.com/guoyuanwei/p/3293668.html)相当于传统数据库中的备份策略,mongoDB在此基础还有自动故障转移的功能。在复制集概述那一节提到过心跳"lastHeartbeat"字段,mongoDB就是靠它来实现自动故障转移的。 mongod实例每隔2秒就向其它成员发送一个心跳包以及通过rs.staus()中返回的成员的”health”值来判断成员的状态。如果出现复制集中primary节点不可用了,那么复制集中所有secondary的节点就会触发一次选举操作,选出一个新的primary节点。如上所配阅读全文
posted @ 2014-01-27 22:13 郭远威 阅读(1567) 评论(0) 编辑
摘要: 1、下载安装apache:官网 http://httpd.apache.org/download.cgi#apache24下载httpd-2.2.25-win32-x86-no_ssl.msi并安装2、下载安装PHP:官网http://windows.php.net/download/#php-5.4下载 php-5.4.19-Win32-VC9-x86.zip 并解压的E:\PHP目录3、配置php在 ZIP 包中有两个 ini 文件,php.ini-development和 php.ini-production。官方手册中建议使用 php.ini-production,复制所选择的php.阅读全文
posted @ 2013-09-08 14:57 郭远威 阅读(145) 评论(0) 编辑