
大数据之路
文章平均质量分 62
yinhaonefu
这个作者很懒,什么都没留下…
展开
-
ssh免密码登录
主机A:产生公钥和密钥,将原创 2014-11-13 22:16:16 · 365 阅读 · 0 评论 -
从hdfs批量导出数据到hbase表中
将hdfs中的日志数据导入到hbase中。打成jar包在服务器使用hadoop jar xxx.jar 包名.类名 运行需要将hbase类库加到hadoop的classpath中,在hadoop-env.sh文件中添加hbase类库export HADOOP_CLASSPATH=/usr/local/hbase/lib/* 即可package原创 2015-06-22 14:30:21 · 2589 阅读 · 0 评论 -
hbase优化
HBase的性能优化1.数据写入到WAL和memstore中。 memstore中的数据flush到HDFS中。 数据存放在内存中,一般存放在jvm中的新生代、老生代区域。 memstore一般设置大小为128MB。 设置合理的memstore的值,可以提高数据装载到HBase中的速度。 2.对列簇启用压缩 比如GZIP、LZO、Zippy、Snap原创 2015-06-22 21:38:51 · 541 阅读 · 0 评论 -
日志收集框架比较
原创 2015-06-27 12:25:06 · 871 阅读 · 0 评论 -
MapReduce中的SequenceFile和MapFile
SequeceFile是Hadoop API提供的一种二进制文件支持。这种二进制文件直接将对序列化到文件中。一般对小文件可以使用这种文件合并,即将文件名作为key,文件内容作为value序列化到大文件中。这种文件格式有以下好处:支持压缩,且可定制为基于Record或Block压缩(Block级压缩性能较优)本地化任务支持:因为文件可以被切分,因此MapReduce任务时数据的本地化原创 2015-04-26 22:18:46 · 823 阅读 · 0 评论 -
MapReduce的DBInputFormat
使用MapReduce直接从关系型数据库中取数据package com.bigdata.hadoop.mapred;import java.io.DataInput;import java.io.DataOutput;import java.io.IOException;import java.net.URI;import java.sql.PreparedStatement;i原创 2015-07-26 15:28:35 · 1172 阅读 · 1 评论 -
MapReduce的KeyValueTextInputFormat
如果行中有分隔符,那么分隔符前面的作为key,后面的作为value;如果没有分隔符,那么整行作为key,value为空当输入数据的每一行是两列,并用tab分离的形式的时候,KeyValueTextInputformat处理这种格式的文件非常适合。代码示例:package com.bigdata.hadoop.mapred;import java.io.IOException;im原创 2015-07-26 15:24:03 · 1284 阅读 · 0 评论 -
Storm学习
Storm是Twitter开源的一个类似于Hadoop的实时数据处理框架。Storm能处理高频数据和大规模数据的实时流计算解决方案将被应用于实时搜索,高频交易和社交网络上。而流计算并不是最近的热点,金融机构的交易系统正是一个典型的流计算处理系统,它对系统的实时性和一致性有很高要求。与Hadoop比较:数据来源:HADOOP是HDFS上某个文件夹下的可能是成TB的原创 2015-06-04 22:20:25 · 1777 阅读 · 0 评论 -
MapReduce的NlineInputFormat
默认情况下在对输入文件进行拆分时,会按block块的大小分成多个InputSplit,InputSplit的数量取决于block的大小。每个map进程处理一个InputSplit,InputSplit中有多少行记录就会调用多少次map函数。如果使用NlineInputFormat,代表每个map进程处理的InputSplit不再按block块去划分,而是按NlineInputForma原创 2015-07-26 14:54:44 · 1629 阅读 · 0 评论 -
MapReduce的自定义排序
package com.bigdata.hadoop.mapred;import java.io.DataInput;import java.io.DataOutput;import java.io.IOException;import java.net.URI;import org.apache.hadoop.conf.Configuration;import org.apach原创 2015-07-27 21:21:08 · 515 阅读 · 0 评论 -
Hive0.14安装
1.首先下载apache-hive-0.14.0-bin.tar.gz并解压,为了方便,解压后的文件夹重命名为hive142.ls到hive目录下的conf目录,将hive-env.sh.template重命名为hive-env.sh。hive-default.xml.template重命名为hive-site.xml3.修改hive-env.sh,增加以下三行export JAV原创 2015-03-13 22:52:06 · 805 阅读 · 0 评论 -
使用httpFS访问hdfs
1.编辑hadoop配置文件httpfs-env.sh2.将export HTTPFS_HTTP_PORT=14000前的注释#删除,并确保14000未被占用3.执行httpfs.sh run启动web服务可以使用curl 在命令行执行curl -i "http://hadoop4:14000/webhdfs/v1/?user.name=root&op=GETHOMEDIRE原创 2015-07-21 22:36:52 · 2586 阅读 · 0 评论 -
Hive0.14 语法
创建数据库create database mydb;切换数据库use mydb;创建数据库create database if not exists mydb;创建内部表表的同时加载数据create table student_test(id INT, info struct) ROW FORMAT DELIMITED FIELDSTER原创 2015-03-27 09:04:56 · 1276 阅读 · 0 评论 -
Scala学习
Scala是运行在JVM上的一门语言,一种纯粹的面向对象编程语言,而又无缝地结合了命令式和函数式的编程风格。scala安装目录下scala/api/scala-library/index.html 可查看scala的api文档scala变量定义 var str : String = "zhangsan"scala的函数都有返回值,当函数定义有“=”时,返回值是最后一行语句执行的原创 2015-06-15 22:13:13 · 512 阅读 · 0 评论 -
Hive学习
2015-10-28hive安装:http://blog.youkuaiyun.com/yinhaonefu/article/details/44246357基本语法:http://blog.youkuaiyun.com/yinhaonefu/article/details/44656749HIve中变量和属性命名空间1.hivevar 用户自定义变量2.hiveconf Hive相关的配置属原创 2015-10-28 09:35:21 · 390 阅读 · 0 评论 -
Spark学习
Standalone 模式(官网推荐)1.下载spark-1.2.1-bin-hadoop2.4.tgz 并解压缩2.进入conf目录,修改spark-env.sh.template为spark-env.sh 修改slaves.template为slaves3.修改slaves文件,添加从节点的ip或者主机4.修改spark-env.sh文件,里面的SPARK_MASTER_I原创 2015-06-19 21:39:38 · 473 阅读 · 0 评论 -
ZooKeeper集群搭建
1.zookeeper集群在部署的时候,节点数量必须是不少于3个的奇数。2.zookeeper是一个分布式协调框架,可以保持集群中数据事务一致性集群搭建1.解压tar -zxvf zookeeper-3.4.5.tar.gz 可以使用mv 重命名为zookeeper 便于操作2.修改环境变量vi /etc/profile添加export ZOOKEEPER_HOME=y原创 2014-12-23 22:14:57 · 957 阅读 · 0 评论 -
hbase0.94集群搭建
1.解压tar -zxvf hbase-0.94.7-security.tar.gz 为了便于操作 重命名一下 mv hbase-0.94.7-security-tar.gz hbase2.修改 hbase-env.sh vi /usr/local/hbase/conf/hbase-env.sh 添加jdk路径 export JAVA_HOME=/usr/local/jdk原创 2014-12-25 21:31:57 · 514 阅读 · 0 评论 -
MapReduce的输入处理类
MapReduce输入的处理类FileInputFormat是所有以文件作为数据源的InputFormat实现的基类,FileInputFormat保存作为job输入的所有文件,并实现了对输入文件计算splits的方法。至于获得记录的方法是有不同的子类——TextInputFormat进行实现的。InputFormat 负责处理MR的输入部分.有三个作用:验证作原创 2015-04-27 22:30:35 · 951 阅读 · 0 评论 -
hadoop1.1.2分布式部署
将hadoop-1.1.2.tar.gz放到/usr/local目录下 执行tar原创 2014-11-13 23:53:09 · 514 阅读 · 0 评论 -
linux命令
1.修改hostname : vi /etc/sysconfig/network原创 2014-11-15 23:38:07 · 394 阅读 · 0 评论 -
hadoop1.1.2配置文件
1.core-site.xml中指定namenode节点位置2.原创 2014-11-18 20:08:03 · 413 阅读 · 0 评论 -
hadoop1.1.2java操作hdfs
/** * 删除文件夹 * @throws IOException * @throws URISyntaxException */ public static void deleteFolder() throws IOException, URISyntaxException{ final FileSystem fileSystem = FileSystem.get(new原创 2014-11-19 22:05:05 · 387 阅读 · 0 评论 -
hadoop1.1.2 小文件解决方案
小文件指的是那些size比HDFS的block size(默认64M)小的多的文件。任何一个文件,目录和block,在HDFS中都会被表示为一个object存储在namenode的内存中,每一个object占用150 bytes的内存空间。所以,如果有10million个文件,每一个文件对应一个block,那么就将要消耗namenode 3G的内存来保存这些block的信息。如果规模再大一些,那么原创 2014-11-22 12:02:39 · 480 阅读 · 0 评论 -
Hive环境搭建
1.Hive1.1在hadoop生态圈中属于数据仓库的角色。他能够管理hadoop中的数据,同时可以查询hadoop中的数据。 本质上讲,hive是一个SQL解析引擎。Hive可以把SQL查询转换为MapReduce中的job来运行。 hive有一套映射工具,可以把SQL转换为MapReduce中的job,可以把SQL中的表、字段转换为HDFS中的文件(夹)以及文件中的列。原创 2014-03-29 21:56:11 · 671 阅读 · 0 评论 -
hadoop2.6.0 shell常用操作
1.1. 对hdfs的shell操作a) 执行bin/hdfs dfs [-command]b) -ls 显示文件夹的内容i. -h 显示文件大小的时候,使用K\M\G显示文件大小ii. -R 递归显示文件夹包含的内容c) -mkdir 创建文件夹i. -p 递归创建文件夹d) -put 上传文件i. -f 如果已经存在文件,那么强制覆盖ii. -p 把linu原创 2015-02-01 17:28:34 · 486 阅读 · 0 评论 -
hadoop1.1.2集群动态添加datanode节点
首先需要将datanode环境建好,比如安装jdk hadoop 关闭防火墙 ssh免密码原创 2014-12-25 22:49:27 · 416 阅读 · 0 评论 -
查看fsimage和edits文件
查看fsimage文件:启动服务器bin/hdfs oiv -i 某个fsimage文件查看内容bin/hdfs dfs -ls -R webhdfs://127.0.0.1:5978/导出结果bin/hdfs oiv -p XML -i tmp/dfs/name/current/fsimage_0000000000000000055 -o fsimage.xml查看ed原创 2015-03-12 22:58:21 · 572 阅读 · 0 评论 -
hadoop2.6.0分布式集群搭建(手动和自动HA)
hadoop1和hadoop2的对比hadoop1.0中hdfs和mapreduce同属于hadoop集群,而hadoop2.0则把mapreduce分离出来,和其他所有计算模型共同放到yarn平台上运行,如果想在hadoop2.0的yarn平台上运行任何计算模型,需要实现yarn平台的借口。hadoop2.0中的federation和HAfederation主原创 2015-01-31 21:22:35 · 1405 阅读 · 0 评论 -
Zookeeper应用场景
分布式队列 FIFO(先进先出) Barrier(同步队列)共享锁集群管理 leader选举命名服务分布式应用配置项的管理等FIFO设计思路1.在/queue-fifo的目录下创建 SEQUENTIAL 类型的子目录 /x(i),这样就能保证所有成员加入队列时都是有编号的。2.出队列时通过 getChildren( ) 方法可以返回当原创 2015-04-22 22:34:03 · 439 阅读 · 0 评论 -
Zookeeper学习
Zookeeper 是 Google 的 Chubby一个开源的实现,是 Hadoop 的分布式协调服务Zookeeper的角色领导者(leader),负责进行投票的发起和决议,更新系统状态学习者(learner),包括跟随者(follower)和观察者(observer),follower用于接受客户端请求并想客户端返回结果,在选主过程中参与投票Observer可以接原创 2015-04-21 22:35:07 · 421 阅读 · 0 评论 -
hadoop2.6.0 shell 命令
bin/hdfs dfs命令appendToFileUsage: hdfs dfs -appendToFile ... 追加一个或者多个文件到hdfs制定文件中.也可以从命令行读取输入.· hdfs dfs -appendToFile localfile /user/hadoop/hadoopfile· hdfs dfs -appendToFile localfile1 lo原创 2015-03-06 22:38:25 · 2041 阅读 · 0 评论 -
Redis学习
Redis是一种面向“键/值”对数据类型的内存数据库,可以满足我们对海量数据的读写需求。redis的键只能是字符串redis的值支持多种数据类型: 1:字符串 string 2:哈希 hash 3:字符串列表 list 4:字符串集合 set 不重复,无序 5:有序集合sorted set ,原创 2015-05-06 21:53:53 · 744 阅读 · 0 评论 -
storm0.9.1集群搭建
1.安装storm前,首先要安装zookeeper集群 2.解压storm安装包 tar -zxvf storm-XXX.tar.gz3.修改conf/storm.yaml文件设置zookeeper集群说明:使用两个空格为缩进是yaml文件的约定,不能使用制表符Tab来代替。以“:”为结尾的字符串代表一个名,“:”后面的代表键值,“:”和键值之间要至少保留一个空格。列表的元原创 2015-01-11 22:11:42 · 663 阅读 · 0 评论 -
Redis学习2
redis管道(pipeline)redis的pipeline(管道)功能在命令行中没有,但是redis是支持管道的,在java的客户端(jedis)中是可以使用的。测试发现:1:使用管道方式,插入1000条数据耗时37毫秒Pipeline pipelined = jedis.pipelined();long start = System.currentTimeMillis()原创 2015-05-09 20:58:17 · 564 阅读 · 0 评论 -
hadoop2.6.0学习
hadoop2有三个核心模块hdfs:负责数据的分布式存储主从结构主节点,可以有2个: namenode从节点,有很多个: datanodenamenode负责:接收用户操作请求,是用户操作的入口维护文件系统的目录结构,称作命名空间datanode负责:存储文件mapreduce:依赖磁盘io的批处理计算模型主从结构主原创 2015-07-19 22:19:42 · 1293 阅读 · 0 评论