hadoop map中获取文件/切片名称

//import org.apache.hadoop.mapreduce.InputSplit;//import org.apache.hadoop.mapreduce.lib.input.FileSplit;

@SuppressWarnings("rawtypes")
    public static String getCityFromFileName(org.apache.hadoop.mapreduce.Mapper.Context context) throws IOException{
        String city="unkown";
        InputSplit inputSplit = context.getInputSplit();
        String fileName=((FileSplit) inputSplit).getPath().getName();
        city=fileName.split("-")[1];
        if(city.equals("dns")||city.equals("3gwap")||city.equals("3gnet")){
            city=fileName.split("-")[2].split("_")[0];
        }
        city=city.split("_")[0];
        return city;
    }

需要注意的是:要通过context.getInputSplit() 获取切片信息,job设置时,一定不要合并小文件

时间: 2024-10-10 16:35:44

hadoop map中获取文件/切片名称的相关文章

C#路径中获取文件全路径、目录、扩展名、文件名称

常用函数 需要引用System.IO   直接可以调用Path的静态方法 1 class Program 2 { 3 static void Main(string[] args) 4 { 5 6 //获取当前运行程序的目录 7 string fileDir = Environment.CurrentDirectory; 8 Console.WriteLine("当前程序目录:"+fileDir); 9 10 //一个文件目录 11 string filePath = "C:

C# 选择文件、选择文件夹、打开文件(或者文件夹) 路径中获取文件全路径、目录、扩展名、文件名称 追加、拷贝、删除、移动文件、创建目录 修改文件名、文件夹名!!

https://www.cnblogs.com/zhlziliaoku/p/5241097.html 1.选择文件用OpenDialog OpenFileDialog dialog = new OpenFileDialog(); dialog.Multiselect = true;//该值确定是否可以选择多个文件 dialog.Title = "请选择文件夹"; dialog.Filter = "所有文件(*.*)|*.*"; if (dialog.ShowDial

路径中获取文件全路径、目录、扩展名、文件名称

using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; namespace TBQDLKW { class Program { static void Main(string[] args) { //一个文件目录 string filePath = @"C:\Users\JuYaNan\Desktop\DBCs\ST_CAN.dbc";

PHP中获取文件扩展名的N种方法

PHP中获取文件扩展名的N种方法 从网上收罗的,基本上就以下这几种方式: 第1种方法: function get_extension($file) { substr(strrchr($file, '.'), 1); } 第2种方法: function get_extension($file) { return substr($file, strrpos($file, '.')+1); } 第3种方法: function get_extension($file) { return end(expl

直接使用FileSystem以标准输出格式显示hadoop文件系统中的文件

package com.yoyosys.cebbank.bdap.service.mr; import java.io.IOException; import java.io.InputStream; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.IO

PHP中 获取文件扩展名的N种方法

PHP中获取文件扩展名的N种方法,有以下这几种方式:第1种方法:function get_extension($file){substr(strrchr($file, ‘.’), 1);} 第2种方法:function get_extension($file){return substr($file, strrpos($file, ‘.’)+1);} 第3种方法:function get_extension($file){return end(explode(‘.’, $file));} 第4种

从网络中获取文件,上传到服务器

1 /** 2 * 模拟form表单的形式 ,上传文件 以输出流的形式把文件写入到url中,然后用输入流来获取url的响应 3 * 4 * @param url 5 * 请求地址 form表单url地址 6 * @param filePath 7 * 文件在服务器保存路径 8 * @return JSONObject 9 * url的响应信息返回值 10 * @throws IOException 11 * 文件不存在 12 */ 13 public static JSONObject send

获取文件的名称的正则表达式

$('input[type="file"]').on('change', function() { var reg = /[^\\\/]*[\\\/]+/g; //匹配文件的名称和后缀的正则表达式 var name = $(this).val().replace(reg, ''); var postfix = /\.[^\.]+/.exec(name);//获取文件的后缀 var text =name.substr(0,postfix['index']);//获取没有后缀的名称 //

hadoop hdfs中删除文件恢复

hadoop的hdfs中删除的文件恢复原理和回收站原理是一样的,就是在删除hdfs文件时,被删除的文件存在了hdfs的.Trash文件夹中,恢复时只需要将该文件夹中文件拿出即可.具体操作如下: 1 设置trash 如果需要恢复hdfs中文件,就需要设置trash,hadoop的trash默认是关闭的.具体设置如下: <property>          <name>fs.trash.interval</name>          <value>10080