主要内容

阅读和分析Hadoop序列文件

这个例子展示了如何为包含键值数据的Sequence文件创建数据存储。然后,您可以一次读取和处理一个块的数据。序列文件是mapreduce使用Hadoop的操作®

将适当的环境变量设置为安装Hadoop的位置。在本例中,设置MATLAB_HADOOP_INSTALL环境变量。

setenv(“MATLAB_HADOOP_INSTALL”,“/ mypath / hadoop-folder”)

hadoop-folder是Hadoop安装的文件夹和mypath是该文件夹的路径。

从示例文件创建一个数据存储,mapredout.seq,使用数据存储函数。示例文件包含表示航空公司代码的惟一键和表示该航空公司运营航班数量的相应值。

ds =数据存储(“mapredout.seq”)
matlab工具箱matlab演示程序mapredout. ds = KeyValueDatastore with properties:FileType: 'seq'} ReadSize: 1键值对

数据存储返回一个KeyValueDatastore。的数据存储函数自动确定要创建的数据存储的适当类型。

设置ReadSize属性设置为6,以便每次调用最多读取6个键值对。

ds。ReadSize = 6;

中读取数据的子集ds使用函数在一个循环。对于每个数据子集,计算这些值的和。将每个子集的和存储在一个名为总结。的循环执行,直到hasdata (ds)返回

金额= [];hasdata(ds) T = read(ds);T.Value = cell2mat (T.Value);金额(终端+ 1)=总和(T.Value);结束

查看键值对读取的最后一个子集。

T
T =键值  ________ _____ ' WN 15931 XE 2357“青年志愿”849毫升(1)“69”(1)318年

计算所有航空公司运营的航班总数。

numflights =笔(金额)
numflights = 123523

另请参阅

|||

相关的话题