Java 如何使映射器从两个具有公共列的不同文件中获取输入?
希望使用MapReduce查找零“停机”的“航空公司列表” “机场名称”在一个文件中给出,其“停机”在另一个文件中出现。这两个文件中的列字段是“机场ID” 第一个cvs文件包含以下字段:Java 如何使映射器从两个具有公共列的不同文件中获取输入?,java,hadoop,mapreduce,hdfs,Java,Hadoop,Mapreduce,Hdfs,希望使用MapReduce查找零“停机”的“航空公司列表” “机场名称”在一个文件中给出,其“停机”在另一个文件中出现。这两个文件中的列字段是“机场ID” 第一个cvs文件包含以下字段: Airline (IATA) Airline ID Source airport Source airport ID Destination airport Destination airport ID Codeshare stoppage
Airline (IATA)
Airline ID
Source airport
Source airport ID
Destination airport
Destination airport ID
Codeshare
stoppages
Equipment
和file-2包含的字段是
Airline ID
Airline Name
Alias airline
IATA code
ICAO
Callsign
Country/territory
Active
如何处理这种情况?请详细解释。您可以使用map reduce中的联接处理两个数据集。看起来第二个文件比第一个文件小,可以加载到内存中。使用DistributedCacheAPI加载第二个文件,并在mappper代码中使用映射端连接概念 我在任何文件中都看不到“Airline Name”,我也不理解这句话:“如果这两个文件的数据结构相同,并且可以接受相同的输入”,请以可读的方式重写它。HI Ishan,您是否正在考虑将数据加载到hive数据库中,然后执行join query以检索所需的数据。。。。?请详细介绍一下