模式描述
外部输出源模式是将数据写到Hadoop和HDFS外的其他系统。
目的
将MapReduce作业的输出写到非本地的位置。
动机
通过该模式,我们能够将MapReduce框架的输出数据直接写入到一个外部源。该模式完全跳过了将数据存储到文件系统这一步骤,而是直接将输出的键/值对发送到它们该去的地方。
在MapReduce方法中,数据是并行写出的。与使用外部源作为输入一样,你需要确定目标系统能够并行接收数据且能够处理所有的连接。
结构
外部源输出模式结构如下图,详细描述如下:
- 在作业提交之前,OutputFormat将验证作业配置中指定的输出规范。同时该方法也负责创建和初始化RecordWriter实现。
- RecordWriter负责将所有的键/值对写入到外部源。RecordWriter的实现依赖于外部数据源的写入方式。在构建RecordWriter对象期间,要使用外部源的API建立所有需要的连接。
性能分析
你必须特别小心看数据接收者能否处理并行连接。