Извините, что не ответили на ваш вопрос напрямую, но вы не хотите этим заниматься.По нескольким причинам:
- Ваша работа в MapReduce собирается превратить вашу базу данных в единую точку контроля производительности (вы, по сути, побеждаете цель Hadoop).
- С умозрительнымвыполнение , у вас будут загружаться одни и те же данные дважды, поэтому некоторые уникальные идентификаторы не будут существовать, когда одна из задач будет убита.
Я думаю, что вы сможете поразить базу данныходин раз для каждой записи вы можете просто выполнить это суррогатное обогащение ключей без MapReduce в одном потоке.
В любом случае, создание суррогатных ключей или автоматических счетчиков в Hadoop нелегко из-за того, что эта вещь не используется для совместного использования.