- 博客(101)
- 资源 (4)
- 收藏
- 关注
原创 [c++] 大整数乘法(字符串乘法)
#include#include#includeusing namespace std;string add(string a,string b){ if(a.length()==0) return b; if(b.length()==0) return a; a.length()<b.length()?a.swap(b):a.length(); reverse(a
2014-01-02 10:26:50
7536
原创 测试磁盘寻道时间
分析性能时,文件系统读取速度不定,主要因为时间不仅花在读取上,还花在磁盘旋转和寻道上,写了一段代码测试这个的时间,一般普通硬盘是10ms左右。有两个函数,第一个函数是生成50G数据,第二个函数是测试package WebGis.Tile;import java.io.File;import java.io.FileNotFoundException;import java.io.I
2013-12-09 17:39:05
2319
原创 STL源码剖析中allocator类运行在vs2010上
《STL源码剖析》第二章的代码敲了一遍(Linux运行正常),在windows上出现以下错误:d:\program files\microsoft visual studio 10.0\vc\include\vector(454): error C2664: 'JJ::allocator::allocator(const JJ::allocator &)' : cannot convert p
2013-08-15 18:09:59
2080
原创 顺序表查找优化(哨兵元素的重要作用)
应用:假设一个乱序数组,需要查找一个元素是否在该数组中,这时需要用到顺序查找,也就是遍历数组。一般情况下我们会写下如下代码:int Sequential_Search(int *a,int n,int key){ //数组从1开始 int i; for(int i=1;i<=n;i++) { if(a[i]==key) return i; } return 0;//
2013-08-13 20:59:06
13839
15
转载 Linux下malloc/free详解
在程序开发中,堆和栈是最常使用的两个内存区,在Linux下栈分为用户栈和内核栈,内核栈具有固定大小,而用户栈可以通过ulimit来设定,最大8M。堆具有很大的灵活性,程序员可以根据需要获取任意大小的内存(只只是相对于栈来说,对于32位机,它最大能分配2G多的虚拟地址空间)。malloc/free就是提供给程序员来在堆上分配内存的接口。在堆上分配内存,为什么会产生额外的开销?这些开销是多少?
2013-08-07 15:57:21
1436
转载 HDFS如何使用多个磁盘
1 fs.default.nameTo run HDFS, you need to designate (指派)one machine as a namenode. In this case, theproperty fs.default.name is a HDFS filesystem URI, whose host is the namenode’shostname or I
2013-07-26 15:01:27
1294
原创 No live nodes contain current block. Will get new block locations from namenode and retry...
1 多个用户操作hdfs和hbase时,出现以下异常,大概意思就是无法连接datanode,获取不到数据INFO hdfs.DFSClient: Could not obtain block blk_-3181406624357578636_19200 from any node: java.io.IOException: No live nodes contain current blo
2013-07-23 09:27:07
10138
原创 HBase建表函数createTable的几点说明
HBase建表函数提供了四个重载函数,分别是void createTable(HTableDescriptor desc)void createTable(HTableDescriptor desc, byte[] startKey,byte[] endKey, int numRegions)void createTable(HTableDescriptor desc, byte[][
2013-06-24 11:37:48
17664
转载 在大并发写时,HBase的HDFS DFSClient端报SocketTimeoutException的问题分析和解决
异常日志:2012-03-02 12:11:21,983 WARN org.apache.hadoop.hdfs.DFSClient: DFSOutputStream ResponseProcessor exception for block blk_1439491087566691588_6207java.net.SocketTimeoutException: 69000 millis
2013-06-20 16:15:34
5330
原创 hbase 多用户写操作 regionserver突然宕掉(二)
hbase多用户写入数据 写了十个小时左右 regionserver就宕机了 查看regionserver的日志文件,异常很平常,如下:org.apache.hadoop.ipc.RemoteException: java.io.IOException: File /hbase/t/ff0b5a311419578f75678c21d5a27148/.tmp/5708637502440582
2013-06-04 09:40:21
2689
原创 hbase多用户入库,regionserver下线问题
近期对hbase多用户插入数据时,regionserver会莫名奇妙的关闭,regionserver的日志有很多异常:如下:org.apache.hadoop.hbase.DroppedSnapshotException: region: t,12130111020202,1369296305769.f14b9a1d05ae485981f6a8579f1324fb. at
2013-05-23 15:03:11
4654
1
原创 org.apache.hadoop.hbase.client.RetriesExhaustedWithDetailsException异常处理
在hbase写入数据时,出现下列异常:org.apache.hadoop.hbase.client.RetriesExhaustedWithDetailsException: Failed 3465 actions: servers with issues: cloudgis2:60020, at org.apache.hadoop.hbase.client.HConnectio
2013-05-18 08:50:46
11725
4
原创 hdu 1221 Rectangle and Circle(矩形与圆焦点问题)
求平面内矩形与圆是否有焦点,分别求出圆点到矩形四个边的交点,判断交点是否在边上#include#includeusing namespace std;bool xiao(double x1,double x2){ if(x1-x2<1e-8) return true; else false;}int main(){ int num; double x,y,r,x1
2013-05-09 20:13:22
1545
原创 1045: [HAOI2008] 糖果传递(数学法,求中位数)
基本方法就是数学分析:设p(i)表示i-1节点向i节点要糖果的数量(有符号,表示方向),avg表示糖果数的均值,也就是目标糖果数,设p(1)=k 也就是节点n向节点1要的糖果数。则存在以下公式:p(2)=p(1)+avg-a[1]p(3)=p(2)+avg-a[2]=(2*avg)-(a[1]+a[2])-k;p(i)=p(i-1)+avg-a[i-1]=(i-1)*avg-(a[1]
2013-05-07 15:37:46
2141
原创 Hadoop源码分析----Client的open、seek和read操作
hadoop虽然没有提供POSIX那样的操作,但是提供的基本的文件操作open,create,delete,write,seek,read还是令用户可以方便的操作文件。下面是一段寻常的hadoop打开文件并且读取文件内容的代码:hdfs=hdfsPath.getFileSystem(conf);inFsData=hdfs.open(p);inFsData.seek(place);inFsDa
2013-04-24 15:53:14
2554
原创 关于c语言的字符串比较
关于字符比较的几种形式: char x1[]={'m','i','c','\0'}; char x2[]={'m','i','c'}; char x3[]="mic"; char *y1="mic";用”==“判断相等时:x1==”mic“返回falsex2=="mic"返回falsex3=="mic"返回falsey1=="mic"返回true用strcmp
2013-04-11 09:38:49
1264
原创 Eclipse Java EE 配置tomcat7.0若干问题总结
配置好jdk1.7和tomcat7.0之后,在eclipse的window-->Preference-->Server-->RuntimeEnvironment 设置tomcat比较简单,但是用eclipse启动tomcat时却出现404的错误。解决办法是:将安装目录的”webapp“下的ROOT文件夹复制到eclipse的工作空间的“/.metadata/.plugins/org.eclipse
2013-04-05 22:14:46
2749
原创 指定日前的前后n天问题
问题描述:给定日期,求距离n天的前后日期int month(int y, int m){ if (m==1 || m==3 || m==5 || m==7 || m==8 || m==10 || m==12) return 31; if (m==4 || m==6 || m==9 || m==11) return 30; if (y%4==0 && y%100!=0 ||
2013-03-30 13:00:21
730
转载 线段树入门
线段树是个好算法,可以解决很多线段重合和面积重合的问题,网上这篇博客浅显的说明了线段树的一些问题,记录下来,防止以后忘记好久没写过算法了,添一个吧,写一个线段树的入门知识,比较大众化。上次在湖大,其中的一道题数据很强,我试了好多种优化都TLE,相信只能用线段树才能过。回来之后暗暗又学了一次线段树,想想好像是第三次学了,像网络流一样每学一次都有新的体会。把问题简化一下:
2013-03-30 12:58:06
676
原创 关于HBase删除多行的讨论
有时候会有这样的需求,需要删除指定某些行的数据。但是笔者看《HBase权威指南》好像没有Delete的filter(过滤器),所以想了一下如果实现删除指定行的方法如果知道要删除某些行的行键,那么很简单,用List就可以完成这个功能如果要删除的行在表中是连续的,也就是删除指定范围的行,但是你还不知道这个范围内所有的行键,比如一个表中行键11-19的行,但是表中只有11,13,16。这时可
2013-03-21 09:13:00
2984
原创 C++实现“单例模式”的两种方法
今天看《Effective C++》里面提到一种单例模式的方法,和《大话设计模式》里面有点差别。但是思想都是一样的,在这里用c++简单写了一下,以后如果忘了,可以回过来瞧瞧。单例模式就是一个类只有一个对象,想要再多也没门。它的好处就是:一个类只能生成一个实例,这是这个类的责任,其他类只需要调用而不用管理这个类的数量,这也体现了一种责任的分配。《Effective C++》中提到的单例模
2013-03-11 11:29:28
3856
原创 [sicily online]1155. Can I Post the lette(图的深度优先搜索)
#include#include#include#include#include#include#includeusing namespace std;int main(){ int n,m; while(cin>>n&&n!=0) { cin>>m; map > gra; vector flag(n); for(int i=0;i<m;i++) {
2013-03-08 16:52:54
1592
原创 [sicily online]1159. Sum(字符串加法)
#include#include#include#include#includeusing namespace std;int main(){ int n; while(cin>>n&&n>0) { vector data(n); string sum("0"); for(int i=0;i<n;i++) { cin>>data[i]; revers
2013-03-08 16:24:02
1189
转载 HBase性能调优
配置优化zookeeper.session.timeout默认值:3分钟(180000ms)说明:RegionServer与Zookeeper间的连接超时时间。当超时时间到后,ReigonServer会被Zookeeper从RS集群清单中移除,HMaster收到移除通知后,会对这台server负责的regions重新balance,让其他存活的RegionServer接管.调优:
2013-03-02 18:02:48
735
转载 HBase 系统架构
HBase 系统架构HBase是Apache Hadoop的数据库,能够对大型数据提供随机、实时的读写访问。HBase的目标是存储并处理大型的数据。HBase是一个开源的,分布式的,多版本的,面向列的存储模型。它存储的是松散型数据。HBase特性:1 高可靠性2 高效性3 面向列4 可伸缩5 可在廉价PC Server搭建大规模结构化存储集群HBase是Google
2013-03-02 16:20:33
906
原创 浅析hadoop写入数据api
对于一般文件,都有满足随机读写的api。而hadoop中的读api很简单用FSDataInputStream类就可以满足一般要求,而hadoop中的写操作却是和普通java操作不一样。hadoop对于写操作提供了一个类:FSDataOutputStream,这个类重载了很多write方法,用于写入很多类型的数据:比如字节数组,long,int,char等等。像FSDataInputSt
2013-02-27 16:03:13
8673
原创 HBase数据写入测试
测试环境测试硬件:4核i5处理器,8G内存,1T硬盘,千兆网络测试软件:ubuntu12.10 64位,hadoop版本:0.20.205,hbase版本:0.90.5测试设置:一个master(namenode)和三台resigonServer(datanode),向HBase集群写入1千万个数据(一个数据15K左右)测试结果上图第一列和最后一
2013-01-25 10:39:36
13980
原创 关于hadoop的API写文件的备份数问题
今天用hadoop API打算往hadoop集群创建几个文件,然后写入数据试试,结果问题发生了,我的配置文件备份数是1,但是不管我怎么创建,创建的文件备份数都是3。代码如下: public static void testHDFS() throws IOException{ String str="hdfs://cloudgis4:9000/usr/tmp/"; Path path
2013-01-21 17:10:52
1515
原创 非集群client访问HBase方法
对HBase的操作,有时候需要不在集群内部,也就是说A、B、C三台主机构建HBase,现在需要主机D来操作HBase。client是通过Zookeeper来访问HBase的,而Zookeeper通过DNS解析主机名来访问ip,通过以下两步就可以用主机D来操作HBase把client的hosts上添加A,B,C的主机名和ip(linux是/etc/hosts,windows是c:\w
2013-01-16 15:04:19
1714
转载 Hadoop源代码的边角料:HDFS的数据通信机制
http://blog.youkuaiyun.com/historyasamirror/article/details/6281689这阵子花了点时间读了读HDFS的源代码。有所得。不过网上关于Hadoop源代码的解析已经挺多了,所以自称为“边角料”,也就是一些零散的心得和想法。 简单而言,HDFS分为了三个部分:NameNode,处于master的地位,维护了数据在Dat
2013-01-04 15:20:09
1186
原创 [sicily online]1156. Binary tree(递归先序遍历)
//用map来存储图//递归先序遍历#include#include#include#includeusing namespace std;typedef struct NODE{ char value; int parent; int lchild; int rchild; //struct NODE():value('\0'),parent(0),lchild(0)
2012-12-19 10:26:44
1403
原创 [sicily online]1146. 采药(0-1背包)
/*经典0-1背包问题ConstraintsTime Limit: 1 secs, Memory Limit: 32 MBDescription辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每
2012-12-18 19:47:17
1799
原创 [sicily online]1049. Mondriaan
ConstraintsTime Limit: 1 secs, Memory Limit: 32 MBDescriptionSquares and rectangles fascinated the famous Dutch painter Piet Mondriaan. One day, while working on his latest project, he
2012-12-13 18:50:25
820
原创 [sicily online]1097. LED Modding
/*普通计算题,只要注意,给的电压小于额定电压也是工作的,但是小于等于0除外ConstraintsTime Limit: 1 secs, Memory Limit: 32 MBDescriptionPC Modding has become the latest trendy hobby sweeping the nation. Since you don't have too m
2012-12-13 11:22:11
649
原创 [sicily online]1151. 魔板
题目分析:简单魔板由于N比较小,所以可以用暴力DFS,但是这个题目N比较大,所以要进行状态判断一共有8!个状态,需要把这些状态对应到整数上去,正好是康拓展开所以本题DFS+康拓展开#include #include #include #include #include #include #include #include #include
2012-12-12 16:42:14
639
转载 康托展开(用于全排列与整数的转换)
康托展开公式X=an*(n-1)!+an-1*(n-2)!+...+ai*(i-1)!+...+a2*1!+a1*0! 其中,a为整数,并且0康拓展开实例{1,2,3,4,...,n}表示1,2,3,...,n的排列如 {1,2,3} 按从小到大排列一共6个。123 132 213 231 312 321 。 代表的数字 1 2 3 4 5 6 也就是把10进制数与一个排
2012-12-12 16:05:44
1650
原创 [sicily online]1198. Substring
/*用sort默认排序的话,考虑ba和bConstraintsTime Limit: 1 secs, Memory Limit: 32 MBDescriptionDr lee cuts a string S into N pieces,s[1],…,s[N]. Now, Dr lee gives you these N sub-strings: s[1],…s[N]. The
2012-12-11 16:19:05
1049
原创 [sicily online]1150. 简单魔板
/*这个题要想清楚是用dfs还是bfs,dfs可能会得出不正确结果,例如AAAB所以用队列实现bfsConstraintsTime Limit: 1 secs, Memory Limit: 32 MB , Special JudgeDescription魔板由8个大小相同方块组成,分别用涂上不同颜色,用1到8的数字表示。其初始状态是1 2 3 48 7 6 5对魔板可进行
2012-12-11 11:14:56
2656
原创 [sicily online]1194. Message Flood
/*大小写不区分,没看到,提交了好几次我的map,感觉set应该更好ConstraintsTime Limit: 1 secs, Memory Limit: 32 MBDescriptionWell, how do you feel about mobile phone? Your answer would probably be something like that “It’
2012-12-10 22:43:24
2078
原创 [sicily online]1033. City Road
ConstraintsTime Limit: 1 secs, Memory Limit: 32 MBDescriptionLong long ago, city Old was all around the water and was divided into M*N small square houses. The city Old had only two bridges, in
2012-12-10 20:45:43
681
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人