我任然套用之前發過的乙個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,效果如圖 實現分頁有兩種情況...