zoukankan      html  css  js  c++  java
  • hadoop io PART1

    数据正确性检测的技术,通常使用checksum,在数据进行传输前,计算一个checksum值,传输到目标地之后,再根据新的文件计算checksum值,如果不匹配,则说明数据损坏或被改变。只能校验,不提供修复方法。

    建议使用ECC内存,提高校验正确率,但这又和hadoop的设计初衷违背?

    常见的错误侦测码是CRC-32,HADOOP的ChecksumFileSystem 使用这个编码。

    codec是对压缩解压的实现,在hadoop里面,代表着实现了CompressionCodec 接口。

    例如GzipCodec封装了gzip算法的实现。

    CompressionCodecFactory提供了根据文件名的扩展获取它的Codec的方法。

    CompressionCodecFactory    factory    =    new    CompressionCodecFactory(conf);
    CompressionCodec    codec    =    factory.getCodec(inputPath);

    对于64位平台的LInux,hadoop已经自带预编译好的本地压缩库,建议使用本地压缩库,提高压缩与解压的效率。

    关于处理压缩文件的时候需要注意的事情,每一个codec会判断文件是否具有可分隔性,如果不可以分隔,就只能丢给一个map task去处理。这是需要注意的。

    gzip,snappy都是不支持分片的。bz2和lzo(index)过的可以支持分片,可以用于输入和输出。

    不支持分片速度快的lzo,lzo4snappy可以用于中间结果的压缩。配置下面的两个项目:

    mapreduce.map.output.compress

    mapreduce.map.output.compress.codec

  • 相关阅读:
    CSZ CMS 1.2.7 xss分析与复现
    蚁剑改造过WAF系列(一)
    代理池
    二维码劫持案例分析
    入门KKCMS代码审计
    Xposed+XServer无需脱壳抓取加密包
    通达OA前台任意用户登录分析
    ATutor学习内容管理系统任意文件上传漏洞(CVE-2019-12169)分析
    调试System.AggregateException-即使在异步代码中也是如此
    关于System.Exception
  • 原文地址:https://www.cnblogs.com/huaxiaoyao/p/5231016.html
Copyright © 2011-2022 走看看