[SequenceFile_3] MapFile
0. 说明
MapFile 介绍 && 测试
1. 介绍
对 MapFile 的介绍如下:
- MapFile 是带有索引的 SequenceFile
- MapFile 是排序的 SequenceFile
2. 测试
package hadoop.sequencefile; import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.MapFile;
import org.apache.hadoop.io.Text;
import org.junit.Test; /**
* 测试 MapFile 操作
* Windows 下查看压缩后的 MapFile :
* hdfs dfs -text file:///E:/test/mapfile/index
* hdfs dfs -text file:///E:/test/mapfile/data
*/
public class TestMapFile { /**
* 测试序列文件写操作
*/
@Test
public void testWriteSeq() throws Exception { Configuration conf = new Configuration(); // 设置文件系统为本地模式
conf.set("fs.defaultFS", "file:///"); FileSystem fs = FileSystem.get(conf); // 数据存放的文件夹路径
String path = "E:/test/mapfile"; MapFile.Writer writer = new MapFile.Writer(conf, fs, path, IntWritable.class, Text.class); for (int i = 1; i <= 100; i++) {
IntWritable key = new IntWritable(i);
Text value = new Text("helloworld" + i);
writer.append(key, value);
} writer.close();
} /**
* SequenceFile 转换为 MapFile
* 新建文件夹 E:/test/mapfile2
* 将 SequenceFile 放入其中并重命名为 data
*/
@Test
public void SeqConvert() throws Exception {
System.setProperty("HADOOP_USER_NAME", "centos");
Configuration conf = new Configuration();
conf.set("fs.defaultFS", "file:///");
FileSystem fs = FileSystem.get(conf);
Path p = new Path("file:///E:/test/mapfile2");
long cnt = MapFile.fix(fs, p, IntWritable.class, Text.class, false, conf);
System.out.println(cnt);
} }
[SequenceFile_3] MapFile的更多相关文章
- 【合集】Hadoop 合集
0. 说明 Hadoop 随笔的目录 1. HDFS 主要内容: [HDFS_1] HDFS 的概念和特性 [HDFS_2] HDFS 的 Shell 操作 [HDFS_3] HDFS 工作机制 [H ...
- HDFS之SequenceFile和MapFile
http://blog.csdn.net/javaman_chen/article/details/7241087 Hadoop的HDFS和MapReduce子框架主要是针对大数据文件来设计的,在小文 ...
- write & read a MapFile(基于全新2.2.0API)
write & read a MapFile import java.io.IOException; import org.apache.hadoop.io.IntWritable; imp ...
- QSQL导出mapfile和mapfile中PostGIS连接的一点心得
昨天弄QSQL导出mapfile,一直遇到下图的错误 原因是QGIS在渲染图层时候使用了新的符号,在图层上右键-属性,如下图将符号修改就OK了 然后我尝试使用QGIS连接本机PostGIS数据,结果老 ...
- mapfile中关于栅格数据的processing项说明
mapfile是MapServer中地图的配置文件,规定了地图的源数据.投影.样式等一系列信息.用MapServer发布影像地图,需要用以下processing项设置地图的风格样式. BANDS=re ...
- bash内置命令mapfile:读取文件内容到数组
bash提供了两个内置命令:readarray和mapfile,它们是同义词.它们的作用是从标准输入读取一行行的数据,然后每一行都赋值给一个数组的各元素.显然,在shell编程中更常用的是从文件.从管 ...
- MapServer Tutorial——MapServer7.2.1教程学习——第一节:MapServer的基本配置管理,静态地图应用以及MapFile文件
MapServer Tutorial——MapServer7.2.1教程学习——第一节:MapServer的基本配置管理,静态地图应用以及MapFile文件 前言 万事开头难,有了<MapSer ...
- Linux命令:mapfile
mapfile [-n 计数] [-O 起始序号] [-s 计数] [-t] [-u fd] [-C 回调] [-c 量子] [数组] 两个作用: 一是给index数组读取标准输入来赋值:二是文件描述 ...
- MapFile
MapFile是排序后的SequenceFile, 这个排序是由开发者来保证的, 不是内存实现. 相当于对key作了一个分块索引, 只针对key. 缺点 1.文件不支持复写操作,不能向已存在的Seq ...
随机推荐
- leetcode — longest-substring-without-repeating-characters
import java.util.HashSet; import java.util.Set; /** * Source : https://oj.leetcode.com/problems/long ...
- Mongodb 命令清单
一.数据库常用命令 # 切换/创建数据库 PRIMARY> use yourDB; #当创建一个集合(table)的时候会自动创建当前数据库# 查询所有数据库 PRIMARY> show ...
- [TensorFlow] Introducing TensorFlow Feature Columns
Welcome to Part 2 of a blog series that introduces TensorFlow Datasets and Estimators. We're devotin ...
- Python vtk学习(1)
Vtk,(visualization toolkit)是一个开源的免费软件系统,主要用于三维计算机图形学.图像处理和可视化.Vtk是在面向对象原理的基础上设计和实现的,它的内核是用C++构建的,包含有 ...
- linux | 网卡驱动
linux 1. 查看网卡信息 lspci | grep -i 'eth' 1a:00.0 Ethernet controller: Intel Corporation Ethernet Connec ...
- Redis持久化存储与复制功能简述
一.分布式系统基础理论 分布式系统的两个基础理论: 1.CAP理论 如图: Consistency(强一致性):数据一致更新,所有数据变动都是同步的.Availability(可用性):好的响应性能. ...
- C++多重继承的构造执行顺序
一个类,它可能有基类,也可能存在多个基类,这些类里面还可能是虚拟基类,并且在类的本身也可能存在对象成员.那么所涉及的这些类或对象成员会以什么样的顺序来调用它们各自的构造函数呢?今天我们就来举例分析下. ...
- 将不确定变为确定~老赵写的CodeTimer是代码性能测试的利器
首先,非常感谢赵老大的CodeTimer,它让我们更好的了解到代码执行的性能,从而可以让我们从性能的角度来考虑问题,有些东西可能我们认为是这样的,但经理测试并非如何,这正应了我之前的那名话:“机器最能 ...
- c# 判断是否是手机访问
public static bool CheckAgent() { bool flag = false; string agent = HttpContext.Current.Request.User ...
- 现如今的CDN网站加速技术,细说CDN
CDN技术应用越来越广泛的被各大互联网公司所应用.已经成为了互联网企业离不开的一种网络运维方式.什么是CDN? CDN 利用全局负载均衡技术将用户的访问指向离用户最近的工作正常的流媒体服务器上,由流媒 ...