• 五 数据组织模式 3) 分箱 & 代码


    分箱目的:
            将数据集中的每条记录都归档到一个 或 多个文件中

    分箱与分区:
            分享模式与分区模式很类似。 主要区别在于 分箱使用 Map 构建 而 分区需要用到 MapReduce 进行分区。
            分箱好处是减少 reduce 阶段的工作量
    结构:
            Map阶段重写 setup方法。使用了 MultipleOutput 类, 通过该类将作业输出到多个不同的文件中。
            对每条记录遍历每个分箱的条件。如果符合就会发送到该箱。
            该模式未用到 combiner、partitioner、 reduce。
    性能分析:
            和其他只有 map 任务的作业一样,该模式具有相同的可扩展性和性能特性,该模式不需要执行排序、混排及reduce,并且大部分都是在本地数据上执行。


    关键代码:
    1. jar包:
    2. import org.apache.hadoop.mapreduce.lib.output.MultipleOutputs;
    3. 重写 map 类的 setup方法。 MultipleOutputs 对象赋值。
    4. @Override
    5. public void setup(Context context) throws IOException, InterruptedException {
    6. 最后就是 mos 对象的各种输出分箱。 至此 结束





    God has given me a gift. Only one. I am the most complete fighter in the world. My whole life, I have trained. I must prove I am worthy of someting. rocky_24
  • 相关阅读:
    alipay h5支付接口总结
    ztree js 和父子节点递归 使用注意
    .net framework to mono 绿色运行摘记
    curl 命令行用法摘记
    C# Camera2 实现扫描识别二维码及Texture预览
    .net framework 3.5 安装命令
    android 调用相机
    Xamarin Android 定时刷新UI
    Xamarin 动态申请 android 权限
    C# 生成和识别二维码
  • 原文地址:https://www.cnblogs.com/rocky24/p/e3f2cae9ec74e593956f0e1a00c52807.html
Copyright © 2020-2023  润新知