Разделение входа в подстроки у СВИНЬИ (Hadoop)

Для сжатия JS & CSS регистрирует Вас, на самом деле должны обработать это на уровне IIS, так как эти файлы представляются непосредственно без времени выполнения ASP.NET.

Вы могли сделать JSX & расширение CSSX, отображающееся в IIS на aspnet_isapi.dll и затем, использует в своих интересах Ваш почтовый индекс, но IIS, вероятно, сделает лучшее задание этого для Вас.

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

Принятый закодированный параметр кэша там так, чтобы кэшированная версия gzipped содержания не была отправлена в браузер, который запросил только текст/HTML.

5
задан skaffman 9 September 2009 в 14:52
поделиться

3 ответа

Нильс, TOKENIZE принимает аргумент-разделитель, поэтому вы можете разделить каждую букву; однако я не могу придумать, как заставить его производить перекрывающиеся токены.

Однако написать UDF в Pig довольно просто. Вы просто реализуете простой интерфейс под названием EvalFunc (подробности здесь: http://wiki.apache.org/pig/UDFManual ). Pig был построен на идее, что пользователи пишут свои собственные функции для обработки практически всего, и поэтому написание собственных UDF - обычное и естественное занятие.

Еще более простой вариант, хотя и не такой эффективный, - использовать потоковую передачу Pig. для передачи ваших данных через сценарий (я считаю, что создание быстрого сценария на Perl или Python быстрее, чем реализация классов Java для разовых заданий). Вот пример этого: http: //www.cloudera.

6
ответ дан 18 December 2019 в 09:51
поделиться

Вот как вы можете сделать это с потоковой передачей свиней и Python без написания пользовательских UDF:

Предположим, ваши данные - это всего лишь 1 столбец слов. Сценарий python (назовем его wordSeq.py) для обработки вещей будет выглядеть следующим образом:

#!/usr/bin/python
### wordSeq.py ### [don't forget to chmod u+x wordSeq.py !]
import sys
for word in sys.stdin:
  word = word.rstrip()
  sys.stdout.write('\n'.join([word[:i+1] for i in xrange(len(word))]) + '\n')

Затем в своем сценарии pig вы говорите pig, что используете потоковую передачу с указанным выше сценарием и что вы хотите отправить свой сценарий по мере необходимости:

-- wordSplitter.pig ---
DEFINE CMD `wordSeq.py` ship('wordSeq.py');
W0 = LOAD 'words';
W = STREAM W0 THROUGH CMD as (word: chararray);
6
ответ дан 18 December 2019 в 09:51
поделиться

Используйте библиотеку piggybank.

http://hadoop.apache.org/pig/docs/r0.7.0/api/org/apache/pig/piggybank/evaluation/string/SUBSTRING.html

Используйте вот так:

REGISTER /path/to/piggybank.jar;
DEFINE SUBSTRING org.apache.pig.piggybank.evaluation.string.SUBSTRING();

OUTPUT = FOREACH INPUT GENERATE SUBSTRING((chararray)$0, 0, 10);
5
ответ дан 18 December 2019 в 09:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: