错误:
解决:
权限问题
Forever youthful,forever weeping
错误:
解决:
权限问题
Coding.net����
�˻� SSH ��Կ�Ǹ��û��˻������Ĺ�Կ��һ�����ã�SSH ��ӵ���˻���������Ŀ�ֿ��Ķ�дȨ�ޡ� ���á��˻� SSH ��Կ���ǿ�����ʹ�� SSH ��ʽ����/�Ĵ����ֿ��ġ�ǰ�ù���������Ϊ����ȡ SSH Э����ַ���������ɹ�Կ�������� Coding.net ���ӹ�Կ���������衣
已安装Hadoop2.7.2的三节点集群
解压Scala
|
|
配置环境变量
|
|
测试
|
|
配置到每台节点
问题: 向hdfs put数据的时候,导致了 name node is in safe mode,然后使用 Hadoop dfsadmin -safemode leave 后, 解除了安全模式。可是再次使用hdfs put或rm数据,仍旧导致name node 进入安全模式。
答案:分析了一下,问题是namenode所在机器的硬盘满了。因此即使使用了 hadoop dfsadmin -safemode leave 之后, 仍旧不能使用hdfs。
首先2个都是map,所以用key取值肯定是没区别的,区别在于用Iterator遍历的时候
LinkedHashMap保存了记录的插入顺序,先插入的先遍历到
TreeMap默认是按升序排,也可以指定排序的比较器。遍历的时候按升序遍历。
例如:a是LinkedHashMap,b是TreeMap。
a.put(“2”,”ab”);
a.put(“1”,”bc”);
b.put(“2”,”ab”);
b.put(“1”,”bc”);
那么遍历a的时候,先遍历到key是2的,因为2先放进去。
遍历b的时候,先遍历到“1”,因为按顺序是先1后2
|
|
|
|
|
|
做推荐系统项目时,对标签评分需要对标签评分map进行排序.
Map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等。
TreeMap:基于红黑树(Red-Black tree)的 NavigableMap 实现,该映射根据其键的自然顺序进行排序,或者根据创建映射时提供的 Comparator 进行排序,具体取决于使用的构造方法。
HashMap的值是没有顺序的,它是按照key的HashCode来实现的,对于这个无序的HashMap我们要怎么来实现排序呢?参照TreeMap的value排序。
Map.Entry返回Collections视图。
TreeMap默认是升序的,如果我们需要改变排序方式,则需要使用比较器:Comparator。Comparator可以对集合对象或者数组进行排序的比较器接口,实现该接口的public compare(T o1,To2)方法即可实现排序,如下:
|
|
运行如下:
上面例子是对根据TreeMap的key值来进行排序的,但是有时我们需要根据TreeMap的value来进行排序。对value排序我们就需要借助于Collections的sort(List
运行结果如下:
参考:http://blog.csdn.net/xiaoyu714543065/article/details/38519817
以下为读取文件方法
|
|
在InputStreamReader
中加入”UTF-8”即可
在windows 环境下,使用java文件流读取文本文件时,会出现第一个字符为未知字符”?” ,其他字符完整。而且第一个字符显示为?但是用equals比对发现并非是”?”号,google之,了解到bom编码标记。使用 16进制打印输出结果:
只要出现该头的16进制编码为这种字符便可以断定该文本文件的编码方式了。
bom编码标记:
bom全称是:byte order mark,汉语意思是标记字节顺序码。只是出现在:unicode字符集中,只有unicode字符集,存储时候,要求指定编码,如果不指定,windows还会用默认的:ANSI读取。常见的bom头是:
UTF-8 ║ EF BB BF
UTF-16LE ║ FF FE (小尾)
UTF-16BE ║ FE FF (大尾)
UTF-32LE ║ FF FE 00 00
UTF-32BE ║ 00 00 FE FF
工具将txt文件另存为UTF-8无BOM格式
|
|
花了点时间整理了验证一下在本地eclipse上操作HDFS的工具类,实现在本地通过API操作HDFS。
实现以下功能:
主要引用参考:
类如下:
|
|
|
|
|
|
|
|
|
|
进入Hive的conf目录,找到hive-default.xml.template
,cp份为hive-site.xml
这里用5.1.32版本测试不报错,5.1.38会报warn
|
|
vim hive-site.xml
要启动metastore服务
启动hive命令行
启动hiveserver2
问题:创建表出先如下错误,删除表卡住
|
|
初始化
注意:初始化之前先删除hdfs上的metastore,否则会出错/user/hive/warehouse
在hive服务端输入以下命令