2015-12-08 3 views
1

Я использую apache pig для индексации некоторых документов в elasticsearch, но когда я все электронные письма выглядят как хешированная строка символов. Ex.Индексирование для поиска elastics имеет странное поведение с неожиданным результатом

"_index": "es_test", 
    "_type": "base", 
    "_id": "AVGCeBXUxBi_sF1H5RcL", 
    "_source": { 
     "Email": "UmF3QHNoYXcuY2E=", 

Это моя свинья сценарий до сих пор

REGISTER /home/PigDump/elasticsearch-hadoop-2.1.1.jar; 
DEFINE EsStorage org.elasticsearch.hadoop.pig.EsStorage('es.nodes=http://10.0.2.2:9200'); 
Customer = LOAD '/home/PigOut/Base.json/part-r-00000' USING JsonLoader(); 
STORE Customer INTO 'es_test/base' USING EsStorage; 

Все остальные поля выглядят хорошо. Кто-нибудь знает, почему электронные письма перепутались?

Когда я делаю DUMP это пример вывода:

([email protected],2008-05-14T01:32:00.000Z,60+,garden city,john Smith,remodeling,id,n,po box 555555,,some company, llc,usa,,555-555-5555,123-123-5555,83714,,002,160,100,159,,,,,,1) 

Я изменил некоторые данные, чтобы защитить идентичность, но вы получите суть и несколько запятых от некоторых полей, являющихся нуль.

И чтобы сделать вещи более запутанными, я могу установить идентификатор в качестве сообщения электронной почты, используя es.mapping.id=Email, и это работает отлично, и письмо не хешировано.

+0

Я не испытывал ничего подобного. Вы уверены, что ваши исходные данные верны? Вы пытались свалить часть ее только для проверки? Можете ли вы поделиться некоторыми примерами входных данных? – kecso

+0

Да, я пробовал это, и все данные выглядят нормально. Его, как и электронная почта, получает хеширование, когда оно индексируется, и я так смущен, почему. –

+0

Это может быть что-то испорченное в моей схеме? –

ответ

0

Таким образом, ответ лежит в файле схемы, который свиньи генерирует с данными, которые я использовал. В файле схемы тип для электронной почты был 50, который является массивом байтов. Когда я изменил его на 55, массив символов, индексирование работает отлично. Итак, то, что выглядело как хэшированные значения, на самом деле было просто байтами. Я добавлю следующий вопрос о том, какие типы схем относятся к полям и связать их позже.

+0

Да, я ожидал чего-то подобного, я рад, что вы поняли это и надеюсь, что я тоже немного помог :) – kecso

Смежные вопросы