MongoDB中缩减Shard集群(删除一个Shard)

对MongoDB的Shard集群来说,添加一个分片很简单,AddShard就可以了。

但是缩减集群(删除分片)这种一般很少用到。由于曙光的某服务器又挂了,所以我们送修之前必须把它上面的数据自动迁移到其他Shard上。

以下内容翻译自:http://docs.mongodb.org/manual/tutorial/remove-shards-from-cluster/

1、执行RemoveShard命令
db.runCommand( { removeshard: "y[......]

继续阅读

数据结构重读 - 图的数组表示法(邻接矩阵)和DFS图遍历算法

可以用两个数组分别存储数据元素(顶点)、数据元素之间的关系(边或弧度)。

顶点数组不说了,表示弧的数组称为“邻接矩阵”AdjMatrix。

对于有向图:AdjMatrix[i][j]为0表示顶点i和顶点j之间无弧,1为i和j间有弧。

对于无向图:AdjMatrix[i][j]同样是1表示有弧,0无弧。单AdjMatrix[i][j]为1则一定有AdjMatrix[j][i]为1,因为弧是无方向对称的。

对于网(弧带权):AdjMatrix[i][j]上是w或者无穷大,w表[......]

继续阅读

天平比较找出轻球

用天平(只能比较,不能称重)从一堆小球中找出其中唯一一个较轻的(条件是y个球中y-1个重量相等,其他一个轻),
使用x 次天平,最多可以从y 个小球中找出较轻的那个,求y 与x 的关系式。

其实,这是一个“三分查找问题”。

当y=3时,x=1(一次称重即可):

3个球中任选两个放到天平两端,若相等,则没称的那个是轻球。

若有一个轻,则轻的就是。

递归可以分析出来x = log3(y)。

 [......]

继续阅读

Python操作MySQL数据库

Python中居然没有内置操纵MySQL数据库的包。

Python中操作MySQL的第三方包很多,本文使用的是MySQL-python 1.2.3。

此接口是符合PEP 249的,即Python通用的数据库操作标准(类似JDBC)。

1、下载、安装
# Download
wget http://downloads.sourceforge.net/project/mysql-python/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz[......]

继续阅读

轻量级JavaEE企业应用实战(SSH框架) - 读书笔记 - 第一章

本章主要是JSP和Servlet,很多细节以前真没注意过。

1、JSP同Servlet本质是一样的。JSP最终必须编译成Servlet才能运行。

2、早期的J2EE应用,都是JSP为主组成的。但随着业务逻辑不断复杂,JSP充当过多角色就显得不合适了。如今J2EE应用中,JSP已经变成单一的表现层计数,不再包含逻辑组件和持久层逻辑。

3、构建Web应用,一个构建的应用目录应该如下:

<xxxx> - Web应用名称、可以改变

| -  <a.jsp&[......]

继续阅读