摘要: 求和值最大子段:不断对已有子段加值,当和值小于0时舍弃子段;由遍历决定复杂度O(n);求和值绝对值最小子段:求前n子段和值,然后求最小差值;求最小差值时使用了排序后遍历的方法,由排序决定复杂度O(nlogn);这里求最小差值的问题中,在某些限制条件下(数组波动不大)可以用桶排序进一步降低时间复杂度,见求最小差值,但因有条件限制不稳定,故不选取;# -*- coding: utf-8 -*-array = (4, -3, 2, 5, -9, 6)#array = (4, -3, 1)#array = (-4, -3, -2, -5, -9, -6) # 求解和值最大子段# 算法关键是将和值对整体 阅读全文
posted @ 2013-09-04 21:11 ZisZ 阅读(866) 评论(0) 推荐(0) 编辑
摘要: 今天在使用svn进行版本管理时出现了一个小问题:原本在s目录下有一个c目录,不知为何被删除了,而svn st命令并没有认为它消失,svn up命令也无法下载回来;从另一个地方拷贝过来一个c,svn st命令会认为c目录是新出现的,却又无法通过svn add命令加回到版本管理中;因为c目录下已经自带.svn版本,already under version control;把c下面的.svn删除,通过svn add命令加回,却无法svn commit, 405 Method Not Allowed;简单想一下也能大概明白原因:svn的客户端与服务器端通过传输diff更新变化,除第一次svn co之 阅读全文
posted @ 2013-08-20 13:46 ZisZ 阅读(435) 评论(0) 推荐(0) 编辑
摘要: POSIX对rename行为的定义如下(http://www.opengroup.org/onlinepubs/009695399/functions/rename.html):将一个文件重命名为一个目录,或将一个目录重命名为一个文件将会失败。将旧文件重命名为一个已经存在的新文件将会成功,原本存在的新文件会先被删除。将旧目录重命名为一个已经存在的、且非空的新目录会失败。将旧目录重命名为一个已经存在的、空的新目录会成功,原本存在的新目录会先被删除。新路径以旧路径作为前缀会失败。新路径包含不存在的父目录会失败,(如将/a/b重命名为/c/d而c不存在时,会失败)。因为2、4条的缘故,rename要 阅读全文
posted @ 2013-08-15 18:13 ZisZ 阅读(868) 评论(0) 推荐(0) 编辑
摘要: 原文成文于去年(2012.7.30),已然过去了一年,很多信息也许已经过时,不保证正确,与Hadoop学习笔记系列一样仅为留做提醒。-----针对现有的所有Hadoop HA方案进行调研,以时间为线,总结如下:1. BackupNode方案: 08年时开源社区已经开始着手解决Namenode单点问题,随之出来的第一个方案是BackupNode方案。基于0.20版,并合并进入0.21版;参见Apache JIRA HADOOP-4539 [1] 该方案思路为:将NameNode产生的editLog(对文件系统元数据的修改)通过网络复写到BackupNode的内存中,再由BackupNode对接收 阅读全文
posted @ 2013-08-15 16:01 ZisZ 阅读(1254) 评论(0) 推荐(0) 编辑
摘要: Linux NFS客户端需要很小心地配置,否则在NFS服务器崩溃时,访问NFS的程序会被挂起,用ps查看,进程状态(STAT)处于D,意为(由于IO阻塞而进入)不可中断睡眠(如果是D+,+号表示程序运行于前台进程组)[1]。为此,最新的Hadoop HA方案Quorum-Journal的作者在设计文档中对NFS共享存储保存NameNode元数据的作法如下诟病[2]:Custom hardware - the hardware requirements of a NAS device and remotely controllable PDU can be expensive, and also 阅读全文
posted @ 2013-08-15 15:43 ZisZ 阅读(2009) 评论(0) 推荐(0) 编辑
摘要: 描述Lease、Block Recovery、Replication、SafeMode 阅读全文
posted @ 2013-08-12 19:04 ZisZ 阅读(3140) 评论(0) 推荐(0) 编辑
摘要: 描述Block Report、Checkpoint、Decommission、Heartbeat 阅读全文
posted @ 2013-08-12 18:49 ZisZ 阅读(1222) 评论(0) 推荐(0) 编辑
摘要: 介绍HDFS Client的主要结构,并描述写过程的部分细节 阅读全文
posted @ 2013-08-12 17:44 ZisZ 阅读(2550) 评论(0) 推荐(0) 编辑
摘要: DataNode对ClientDatanodeProtocol、InterDatanodeProtocol两个协议接口进行了实现,通过ipc::Server向Client、其它DN提供RPC服务(参见Hadoop IPC); 同时DataNode依赖DatanodeProtocol向NN请求RPC服 阅读全文
posted @ 2013-08-12 17:27 ZisZ 阅读(459) 评论(0) 推荐(0) 编辑
摘要: NameNode对三大协议接口(NamenodeProtocol、ClientProtoco、DatanodeProtocol)进行实现,利用ipc::Server通过三个协议分别向SNN、Client、DN提供RPC服务(参考:Hadoop IPC);NameNode的核心是FSNamesysem 阅读全文
posted @ 2013-08-12 17:07 ZisZ 阅读(1822) 评论(0) 推荐(1) 编辑