Как читать последовательный файл hadoop?

У меня был последовательный файл, который является выходом команды hadoop map-reduce job. В этом файле данные записываются в парах ключ-значение, а само значение представляет собой карту. Я хочу прочитать значение как объект MAP, чтобы я мог обрабатывать его дальше.

    Configuration config = new Configuration();
    Path path = new Path("D:\\OSP\\sample_data\\data\\part-00000");
    SequenceFile.Reader reader = new SequenceFile.Reader(FileSystem.get(config), path, config);
    WritableComparable key = (WritableComparable) reader.getKeyClass().newInstance();
    Writable value = (Writable) reader.getValueClass().newInstance();
    long position = reader.getPosition();

    while(reader.next(key,value))
    {
           System.out.println("Key is: "+textKey +" value is: "+val+"\n");
    }

вывод программы: Ключ: [это ключ] значение: {abc = 839177, xyz = 548498, lmn = 2, pqr = 1}

Здесь я получаю значение в виде строки, но я хочу его как объект карты.

8
задан samarth 25 November 2011 в 05:54
поделиться