Должен ли тип значения в типе hadoop реализовывать доступный для записи интерфейс?

Я пытаюсь понять, как реализовать пользовательский тип значения для mapreduce Framework. Основываясь на этом посте ( MapReduce - WritableComparables), мне кажется, что тип значения должен реализовывать интерфейс Writable. Это верно?

Я также следил за исходным кодом различными инструментами (например, Import, Export, CopyTable и т. Д.), Предоставленными HBase. Импорт использует Результат как Тип значения. Но Result не реализует интерфейс с возможностью записи. Как шаг сериализации работает в этой ситуации?

1 ответ

Есть Writable а также WritableComparable в MapReduce.

  • Writable означает, что MR знает, как выполнить поиск вашего объекта, когда он должен быть отправлен по проводам.
  • WritableComparable еще один шаг вперед означает, что объекты класса, которые его реализуют, могут быть отсортированы.

В реализации MR ключи будут сравниваться и / или сортироваться во время процедуры тасования, что означает, что WritableComparable, значения нужно отправлять только по проводам, поэтому Writable достаточно.

Другие вопросы по тегам