Hbase在不同系统上部署出现的问题!

leeking888 2017-08-30 08:53:17
MASTER机是centos 6.5
Slave机是ubuntu 14.04


配置都是正确的,使用的是hbase自带的zookeeper,原来都是Ubuntu系统的,能够正确运行。
结果后来需要加了一台服务器,这服务器是centos的。hadoop也搭建没有问题,把hbase放到centos上面,作用master机。结果永远起不来。
报的是 zookeeper的错误,然后一会Hmaster就死掉了。。

拿ubuntu作为 master,centos作为slave,结果也是不行。报一样的错误。
centos的防火墙已经关掉了。

两个报的错误在日志中,都是说

possibly transient Zookeeper , quorum=xx2:2181,xx1:2181,exception=org.apache.zookeeper.keeperException&ConnectionLossException:keeperroorocode=connectionloss for /hbase
Zookeeper create failed after 4 attempts
master.HMasterCommandLine:master exiting

求高手指点
...全文
289 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
iptables确定已经关掉了吗?
碧水幽幽泉 2017-09-15
  • 打赏
  • 举报
回复
二、数组
向量 x=c(1:6)
向量判断 is.vector(x)
数组判断 is.array(x)
矩阵判断 is.matrix(x)
dim(x) <-c(2,3) 将向量转成数组

矩阵式是二维的数组

数据的R语言表示--数据框
data.frame(x1,x2) 向量x1和x2长度要相等,类型可以不同
data.frame('重量'=x1,'运费'=x2) 添加标签

读取文本文件数据: 先设置工作目录,把文件放于该目录下
(x=read.table("abc.txt")) 非工作目录需要添加路径: 盘符:\\....

读剪贴板: 文本或excel的数据均可以通过剪贴板操作
y<-read.table("clipboard","header=F")
header=F 不读列头 header=T 读列头

读excel文件:
方法1:先把excel另存为空格分隔的prn文本格式再读
w<-read.table("test.prn",header=T);

方法2:安装RODBC包,再通过ODBC读
操作步骤:
1.安装RODBC包
2.加载包library(RODBC)
3.将excel中的数据,读取到数据框Z中:Z<-odbcConnectExcel("test.xls")
4.使用sqlFetch将数据再转存到数据框W中: W<-sqlFetch(Z,"sheet1")

循环语句:
1.for循环
for(i in 1:59) {a[i]=i*2+3}
b=0 for(i in 1:59) {a[i]=i*2+3;b[i]=i*5-4}

2.while循环
a[1]=5*3
i=1
while(a[i]<121){i=i+1;a[i]=a[i-1]+2}

source(): 读取R脚本 例如: source("D:\\20170516.r")
print(): R脚本中显示运行结果

num=seq(10378001,10378100): 生成10378001-10378100共100个数字
x1=round(runif(100,min=80,max=100)) 随机生成100个均匀分布随机数,最小值为80,最大值为100,然后四舍五入取整
x2=round(rnorm(100,mean=80,sd=7)) 随机生成100个正态分布随机数,平均值为80,方差为7,然后四舍五入取整
x3=round(rnorm(100,mean=83,sd=18)) 随机生成100个正态分布随机数,平均值为83,方差为18,然后四舍五入取整
由于正态分布函数生成出来的数据没有最值的限制,这里将大于100的成绩设置成100,写法为:x3(which(x3>100))=100

合并数据框:x=data.frame(num,x1,x2,x3)
保存到硬盘:write.table(x,file="d:\\mark.txt",col.names=F,row.names=F,sep=" ") 将数据框写入文件

计算各科平均分
mean(x): 平均值
colMeans(x): 对列求平均值,默认为所有列 等价于: apply(x,2,mean)
colMeans(x)["x1","x2","x3"]: 对列求平均值,针对列x1,x2,x3 等价于: apply(x["x1","x2","x3")],2,mean)

apply(数据框,1|2,功能函数)
例如:
apply(x,1,mean) 在行上对x取平均值
apply(x,2,mean) 在列上对x取平均值

计算各科最高最低分
apply(x,1,max) 在行上对x取平均值
apply(x,2,min) 在列上对x取平均值

求出每人总分
apply(x["x1","x2","x3")],1,sum): 在行上对课程x1,x2,x3求和

求总分最高的同学
which.max(apply(x[c("x1","x2","x3")],1,sum)) 使用which函数,先求出总分最大的下标
x$num(which.max(apply(x[c("x1","x2","x3")],1,sum))) 利用下标取出num(学号列)的值

绘图
直方图hist() hist(x$x1)
散点图plot(): plot(x1,x2) | plot(x$x1,x$x2)
列联函数table(): table(x$x1) 统计每种分数及人数
柱状图barplot(): barplot(table(x$x1))
饼图pie(): pie(table(x$x1))
箱尾图boxplot(): boxplot(x1,x2,x3) | boxplot(x$x1,x$x2,x$x3) 水平放置: boxplot(x$x1,x$x2,x$x3,horizontal=T)
箱线图boxplot(x[2:4],col=c("red","green","blue"),notch=T)
星相图stars(x(c["x1","x2","x3"]))
雷达图stars(x(c["x1","x2","x3"]),full=T,draw.segment=T) full控制画半圆还是满圆,draw.segment控制是否为扇形
脸谱图faces(x(c["x1","x2","x3"]))
茎叶图stem(): stem(x$x1)
碧水幽幽泉 2017-09-15
  • 打赏
  • 举报
回复
数据分析与R语言笔记:
数据分析的工具: R、SAS、SPASS
数据分析算法:
二元分类器、特征选择、决策树、
回归、Logistics回归、序列、时间序列、
神经网络、贝叶斯分类器、主成分分析、因子分析

常见的统计术语:
均数: 平均数
众数: 出现频率最高的观测数
中数:排序后位于中间位置的数
极差: 最大值和最小值之差
方差: (观测值与均值之差的平方)求和,再计算平均值,值越大说明离散程度越高。
标准差: 方差的平方根,值越大说明离散程度越高。

R语言是S(Statistics)语言的一种实现和扩展
R语言的官方网站: http://www.r-project.org

一、向量和矩阵
R中最基本的数据结构: 向量,即:数列

向量的常见操作
创建向量: 使用函数c(),例如: x=c(1,2,4,5,3)
向量的赋值方式有三种:
x=c(1,2,4,5,3) 或 x <- c(1,2,4,5,3)
c(1,2,4,5,3)=x 或 c(1,2,4,5,3) <- x
assign("x",c(1,2,4,5,3))

查看向量: 直接输入向量名,然后回车
查看向量的类型: mode(向量名称)
查看向量元素: x[3] 输出值为:4
向量的简写: a=c(1:100) 等价于 x=c(1,2,3,4...100)
计算向量的长度: length(a) 输出值为:100
假设:
x1=c(1,2,3)
x2=c(4,5,6)
向量的横向绑定: rbind(x1,x2) row-bind
输出为:
x1 1 2 3
x2 4 5 6

向量的纵向绑定: cbind(x1,x2) column-bind
输出为:
x1 x2
1 4
2 5
3 6

max(): 最大值
min(): 最小值
mean(): 平均值
sum(): 求和
var(): 方差
sd(): 标准差
prod(): 阶乘,也称连乘
help(): 帮助函数

产生向量
1:10 输出 1 2 3 4 5 6 7 8 9 10
1:10-1 输出 0 1 2 3 4 5 6 7 8 9
2:10*2 输出 4 6 8 10 12 14 16 18 20
2:5*3+1 输出 7 10 13 16

a=c(1,3,5,7,9)
a[5] 输出 9
a[-5] 输出 1 3 5 7
a[1:3] 输出 1 3 5
a[-(1:3)] 输出 7 9
a(c(1,2,3)) 输出 1 3 5
a(a<5) 输出 1 3
a(a>3 & a<9) 输出 5 7
a(a[3]) 输出 9

seq()函数
seq(1,10) 输出1-10,公差为1
seq(2,10, by=2) 输出2-10,公差为2
seq(3,50, length=10) 输出3-50,共10个数字

letters(1:26) 产生26个字母序列

which()函数: 返回向量下标
a=c(2,3,4,2,5,1,6,3,2,5,8,5,7,3)
which.max(a) 返回向量a中最大的数字(8),下标为11
which.min(a) 返回向量a中最小的数字(1),下标为6
a[which.max(a)] 返回向量a中最大的数字8
which(a==2) 返回向量a中值为2的向量下标,输出为:1 4 9
a[which(a==2)] 输出:2 2 2
which(a>5) 输出向量a大于5的位置,输出为:7 11 13
a[which(a>5)] 输出向量a大于5的变量,输出为:6 8 7

sort()函数 升序排序
rev() 函数, 降序排序 reverse

矩阵函数: matrix()
a1=c(1:12)

矩阵默认按竖排
matrix(a1,nrow=3,ncol=4)
1 4 7 10
2 5 8 11
3 6 9 12

matrix(a1,nrow=4,ncol=3)
1 5 9
2 6 10
3 7 11
4 8 12

添加byrow=T,矩阵设为横排
matrix(a1,nrow=4,ncol=3 byrow=T)
1 2 3
4 5 6
7 8 9
10 11 12

矩阵运算:
a=matrix(1:12,nrow=3,ncol=4)
1 4 7 10
2 5 8 11
3 6 9 12

t(a): 矩阵的转置
1 2 3
4 5 6
7 8 9
10 11 12

a=matrix(1:12,nrow=3,ncol=4)
b=matrix(1:12,nrow=3,ncol=4)
a+b: 矩阵每项相加, 输出如下:
2 8 14 20
4 10 16 22
6 12 18 24

a-b: 矩阵每项相减, 输出如下:
0 0 0 0
0 0 0 0
0 0 0 0

a%*%b: a乘b

当nrow=ncol时,成为方阵: 如 a=matrix(1:16,nrow=4,ncol=4)

diag(a): 求对角线,输出: 1 6 11 16

diag(diag(a)): 对角线矩阵
1 0 0 0
0 6 0 0
0 0 11 0
0 0 0 16

diag(4): 4阶单位矩阵(对角线为1,其它为0)
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1

solve(): 求逆矩阵
rnorm(): 生成标准正态分布随机数
例如:生成16个随机数的方阵 matrix(rnorm(16),4,4)
例如: a=matrix(rnorm(16),4,4)
b=c(1:4)
solve(a,b): 解线性方程组
矩阵的特征值:eigen()
特征向量: eigen(向量名,symmetric=T)

20,807

社区成员

发帖
与我相关
我的任务
社区描述
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
社区管理员
  • 分布式计算/Hadoop社区
  • 涤生大数据
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧