流:简单的压缩和解压流程 package guidang;/** * Created by Administrator on 2017/7/29. */ public class TestArchive { public static void main(String[] args) { Archiver a = new Archiver(); a.appendFile("E:\\
流总结 FileOutputStream(File file,boolean append)可以追加文件 filereader、filewriter无法更改字符集 package com.it18zhang.java.test;import com.it18zhang.java.util.DataUtil; import org.junit.Test;import java.io.*; import jav
sqoop sqoop导入 hdfs: sqoop import –connect jdbc:mysql://s201/mydb1 –username sqoop –password sqoop –table emp –m 1sqoop导入 hive: sqoop import –connect jdbc:mysql://s201/mydb1 –username sqoop –password sqoop
flume的普通配置 批量收集 监控一个文件夹,静态文件 收集完之后,会重新命名成新文件.compeleted.采集需求:某服务器的某特定目录下,会不断产生新的文件,每当有新文件出现,就需要把文件采集到HDFS中去Flume 事件事件作为Flume内部数据传输的最基本单元.它是由一个转载数据的字节数组(该数据组是从数据源接入点传入,并传输给传输器,也就是HDFS/HBase)和一个可选头部构成.每一行封装成一个Eve
hive基本操作 Hive基本操作与案例 创建数据库,切换数据库 create database testdb2; use testdb2; 创建管理表 按 Ctrl+C 复制代码create table emp( empno int, empname string, job string, mgr int, hiredate string, salary double, comm double,
MapReduce阶段map的setup() 和cleanup() setup() 此方法被MapReduce框架仅且执行一次,在执行Map任务前,进行相关变量或者资源的集中初始化工作。若是将资源初始化工作放在方法map()中,导致Mapper任务在解析每一行输入时都会进行资源初始化工作,导致重复,程序运行效率不高! cleanup() 此方法被MapReduce框架仅且执行一次,在执行完毕Map任务后,进行相关变量或资源的释放工作。若是将释放资源工作放
MapReduce中Combiner方法使用 Combiner 会继承Reducer,它是一种mr的优化,用于减少服务器之间网络带宽的压力,它是在map结束后在每台服务器中都算出一个值,再传到shuffle中。适合于求和等每台服务器算出的值对最后结果没有影响的业务中,但是像求平均值等功能会带来误差所以不能使用。Combiner会在map结束后,shuffle开始前进行执行,package com.it18zhang.day05.flow;imp
多个MR一起执行的Driver代码 package com.it18zhang.day05.flow5;import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapred.JobConf; import org.apache.
MapReduce 只有Map阶段,写出到pc端 package ProOrder2;import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.HashMap;import
MapReduce 类的封装思想 要有把需要的信息当成类的思想package ProvinceMR;import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; import org.apache.hadoop.io.WritableComparable;public class BeanFlow implements Writabl
用eclipse在HADOOP中的一些系统指令操作 import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.net.URI; import java.net.URISyntaxException;impo
perparestatement在mysql中的普通使用 perparestatement在mysql中的普通使用:package perparestatement;import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet;public class JDBCPerpareTest { public static void main(
properties配置文件的使用 jdbc.properties:driverclass=com.mysql.jdbc.Driver url=jdbc:mysql:///mydb1 username=root password=rootJDBCTools.java:主要看静态代码块的应用import java.sql.Connection; import java.sql.DriverManager; import java.sql
单例模式的饿汉和懒汉 单例模式就是要确保类在内存中只有一个对象,该实例必须自动创建爱你,并且对外提供。 优点:在系统内存中只存在一个对象,一次可以节约系统资源,对于一些需要频繁创建和销毁的对象单例模式无疑可以提高系统的性能。 缺点:1.没有抽象层,因此扩展很难。2.指责过重,在一定程序上违背了单一职责。饿汉式和懒汉式的区别: 饿汉式:类一加载就创建对象。 懒汉式:用的时候,采取创建对象。饿汉:public cla
工厂模式 简单工厂模式:又叫静态方法工厂模式。 优点:客户端不需要在负责对象的创建,明确了各个类的职责。 缺点:这个静态工厂负责所有对象的创建,有新对象增加,或者某些对象的创建方式不同,就需要不断地修改工厂类,不利于后期维护。public class AnimalFactory { private AnimalFactory() { } public static Animal cr
流 下面这篇对io流整体的文章讲的不错 Java IO流分析整理字节流:一次读入或读出是8位二进制。 字符流:一次读入或读出是16位二进制。 public static void main(String[] args) { // File f = new File("e:/aaa"); // boolean b1 = f.createNewFile(); //
泛型 泛型: 可以把类型当作参数一样传递过来, 在传递过来之前我不明确, 但是在使用的时候我就用明确了。 (早期的 Object 类型可以接收任意的对象类型, 但是在实际的使用中, 会有类型转换的问题。) 也就存在这隐患, 所以 Java 提供了泛型来解决这个安全问题。泛型通配符《?》 (<>) 任意类型, 如果没有明确, 那么就是 Object 以及任意的 Java 类了 ? extends
集合 面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,Java就提供了集合类。数组Array和集合的区别:(1)数组中可以存储基本数据类型也可以存储对象;集合只能存储对象。 (2)数组虽然也可以存储对象,但长度是固定的;集合是可变长。 (3)若程序时不知道究竟需要多少对象,需要在空间不足时自动扩增容量,则需要使用容器类库,array不适用。联系:使用相应的toArray()和A
java中值类型和引用类型的区别 java中值类型和引用类型的区别篇一 值类型通常被分配在栈上,它的变量直接包含变量的实例,使用效率比较高。 java中值类型和引用类型的区别篇二 引用类型分配在托管堆上,引用类型的变量通常包含一个指向实例的指针,变量通过该指针来引用实例。 java中值类型和引用类型的区别篇三 值类型继承自ValueType(注意:而System.ValueType又继承自System.