import java.io.IOException;
import java.util.StringTokenizer;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.conf.Configured;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.input.TextInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
import org.apache.hadoop.mapreduce.lib.output.TextOutputFormat;
import org.apache.hadoop.util.Tool;
import org.apache.hadoop.util.ToolRunner;
public class WordCount extends Configured implements Tool {
public static class Map extends
Mapper<LongWritable, Text, Text, IntWritable> {
private final static IntWritable one = new IntWritable(1);
private Text word = new Text();
public void map(LongWritable key, Text value, Context context)
throws IOException, InterruptedException {
String line = value.toString();
StringTokenizer tokenizer = new StringTokenizer(line);
while (tokenizer.hasMoreTokens()) {
// if has tokens
word.set(tokenizer.nextToken());
context.write(word, one);
}
}
}
public static class Reduce extends
Reducer<Text, IntWritable, Text, IntWritable> {
public void reduce(Text key, Iterable<IntWritable> values,
Context context) throws IOException, InterruptedException {
int sum = 0;
for (IntWritable value : values) {
sum += value.get();
}
context.write(key, new IntWritable(sum));
}
}
@Override
public int run(String[] args) throws Exception {
// set the job configuration and its name
Job job = new Job(this.getConf());
job.setJarByClass(WordCount.class);
job.setJobName("WordCount");
// set the data output format
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(IntWritable.class);
// set mapper and reducer
job.setMapperClass(Map.class);
job.setReducerClass(Reduce.class);
// set intput and output format
job.setInputFormatClass(TextInputFormat.class);
job.setOutputFormatClass(TextOutputFormat.class);
// set input and output path
FileInputFormat.setInputPaths(job, new Path(args[0]));
System.out.println(args[0]);
FileOutputFormat.setOutputPath(job, new Path(args[1]));
System.out.println(args[1]);
boolean success = job.waitForCompletion(true);
return success ? 0 : 1;
}
public static void main(String[] args) throws Exception {
System.out.println("test");
int ret = ToolRunner.run(new Configuration(), new WordCount(), args);
System.exit(ret);
}
}
相关推荐
Flink-1.11.2与Hadoop3集成JAR包,放到flink安装包的lib目录下,可以避免Caused by: org.apache.flink.core.fs.UnsupportedFileSystemSchemeException: Hadoop is not in the classpath/dependencies.这个报错,实现...
文档
- `unzip MetInfo5.2.zip -d metinfo-bak` - `tar -xvf file.tar` (解压tar) - `tar -xzvf file.tar.gz` (解压tar.gz) - `tar -xjvf file.tar.bz2` (解压tar.bz2) - `tar -xZvf file.tar.Z` (解压tar.Z) - `...
- 移动原有的YUM配置文件到`/etc/yum.repos.d/bak`目录下。 - 添加新的YUM源配置文件`/etc/yum.repos.d/dvd.repo`。 - 清理YUM缓存。 - 更新YUM源。 #### MySQL安装 - **仅在主节点red01上安装MySQL**: - 确认...
配置hive-0.9.0和hbase-0.94.1结合使用,部分内容如下: ... cp hbase-0.94.1.jar /home/hadoop/hive-0.9.0/lib/ (路径:/home/hadoop/hbase-0.94.1) cp zookeeper-3.4.3.jar /home/hadoop/hive-0.9.0/lib/
ambari汉化包2.6.2.2,支持hadoop2.7.3. 替换/usr/lib/ambari-server/web/javascripts 下的app.js 1)上传app.js.bak到路径 2)mv app.js app.js_bak 3) mv app.js.bak app.js
5. **web.xml.bak**: 这是一个备份的Web应用配置文件,可能包含了Oozie Web UI的相关配置。在某些情况下,Oozie的Web界面会受到这个文件的影响,例如认证和权限设置。 6. **addtowar.sh**: 这可能是一个用于向Oozie...
然而,具体如何结合使用DDD、Spring Cloud、Vue 3.0和Element Plus来实现这一目标,需要查看“seesee_bak-master”压缩包中的源代码和相关文档来深入了解。这个项目显然采用了现代Web开发的最佳实践,通过前后端分离...
同时,SQL Server 2016引入了PolyBase,能够连接Hadoop和Azure Blob存储,处理大规模非结构化数据。 10. 性能监控与调优:通过动态管理视图(DMVs)、性能计数器和SQL Server Profiler,可以监控系统性能,找出瓶颈...
5. **定期备份监控数据**:为了防止数据丢失,可以使用`monitor_data_bak`这样的脚本或工具,定期备份Prometheus和Grafana的数据,以便在必要时恢复。 综上,Prometheus和Grafana的组合为CDH集群提供了强大的监控...
而Hive作为一个基于Hadoop的数据仓库工具,主要用于对存储在Hadoop文件系统中的大量数据集进行数据整理、特殊查询和分析存储。 当在DolphinScheduler中配置Hive作为数据源时,若Hive Jar包版本与当前集群的Hive版本...
然后进入/etc/yum.repos.d/目录下将原有repo文件都移入bak文件夹,安装createrepo。之后,将cloudera相关rpm文件移到/var/www/html/cm目录,并创建centos.repo文件。执行createrepo命令生成repodata文件,然后配置...
CDH是一个包含Hadoop、Spark等大数据处理组件的平台,虽然SQL Server并不直接集成在这个环境中,但有可能是在讨论如何在CDH中运行SQL Server容器或者使用其他工具来管理SQL Server的数据备份。 【标签】"源码 工具...
在大数据处理与分析领域,Cloudera Distribution Including Hadoop (CDH) 是一款非常流行的企业级Hadoop发行版,它集成了众多开源项目来提供高效的数据处理能力。ZooKeeper作为分布式系统中的协调服务,在CDH集群中...
export HIVE_AUX_JARS_PATH=/opt/module/hadoop-2.7.2/share/hadoop/common/hadoop-lzo-0.4.20.jar$TEZ_JARS ``` 同时,在`hive-site.xml`文件中更改hive计算引擎为Tez。 ```xml <name>hive.execution.engine ...
cp -rf /etc/openldap/slapd.d /etc/openldap/slapd.d.bak ``` 4. **添加基本配置**:创建新的配置文件,并引用OpenLDAP的schema文件。 ```sh touch /etc/openldap/slapd.conf echo "include /etc/openldap/...
- **备份配置文件**:`cp /etc/mysql/my.cnf /etc/mysql/my.cnf.bak` - **编辑MySQL配置文件**:`vi /etc/mysql/my.cnf` - 设置监听地址为`bind-address = 0.0.0.0` - **创建数据库用户及数据库**: - 创建用户...
涉及MapReduce、Hdfs、Hive、Kafka、ZooKeeper等hadoop生态圈组件 Coding Now 初衷 一是平时看的一些自己认为不错的文章总是很难整理,所以打算开一个项目管理这些,也可以分享给大家;二是记录自己平时所学的一些...