MapReduce如何自定義分割槽

2021-10-13 07:35:38 字數 746 閱讀 2240

我任然套用之前發過的乙個mapreduce例子來演示如何自定義分割槽,大家可以先去看一下我之前的例子

下面沿用上面的例子,在pom和**不變的情況下,做乙個自定義分割槽操作,目的是根據手機號前三位的不同分配資料到不同分割槽,如此我使用如下自定義分割槽類

package com.wy;

import org.apache.hadoop.io.nullwritable;

import org.apache.hadoop.mapreduce.partitioner;

/***繼承的類也是hadoop的jar有的泛型要和作用的map段的輸入保持一致

在類中需要注意的是,分割槽是從零開始的

*/public class par extends partitioner

else

if(substring.equals(

"138"

))else

if(substring.equals(

"135"

))else

}}

之後其實都簡單了,我們只需要在driver類裡面設定兩個東西就可以了,其他的東西都不變

//job 工作完成流程

public static void main(string[

] args) throws ioexception, classnotfoundexception, interruptedexception

mapreduce自定義分組 自定義分割槽 二次排序

mapreduce中二次排序的思想中,我們常常需要對資料的分割槽分組進行自定義,以下就介紹一下自定義分割槽分組的簡單實現 1 自定義分割槽 public class demopartitionerextends partitioner return 4 要注意的是 設定了分割槽之後,reduce任務...

自定義 如何自定義協議

何為自定義協議,其實是相對標準協議來說的,這裡主要針對的是應用層協議 常見的標準的應用層協議如http ftp smtp等,如果我們在網路通訊的過程中不去使用這些標準協議,那就需要自定義協議,比如我們常用的rpc框架 dubbo,thrift 分布式快取 redis,memcached 等都是自定義...

ObjectDataSource自定義分頁

objectdatasource是唯一支援自定義分頁的資料來源,要實現分頁效果,首先要將objectdatasource.enablepageing屬性設為true,通過三個屬性實現 startrowindex,maximumrows和selectcountmethod,效果如圖 實現分頁有兩種情況...