2012-06-06 3 views
1

от ОЙ FAQ Амазонки:Как использовать внешние данные с эластичным MapReduce

Q: Могу ли я загрузить свои данные из Интернета или где-нибудь кроме Amazon S3?

Да. Ваше приложение Hadoop может загружать данные из любого места в Интернете или из других служб AWS. Обратите внимание: если вы загружаете данные из Интернета, взимается плата за пропускную способность EC2. Amazon Elastic MapReduce также обеспечивает доступ к данным в DynamoDB на основе Hive.

Каковы спецификации для загрузки данных из внешних (не-S3) источников? Кажется, что существует нехватка ресурсов вокруг этого варианта и, похоже, не документирована в какой-либо форме.

+0

Не уверен, что я понимаю вопрос, вы говорите: «Как загружать данные из Интернета в экземпляр Hadoop на основе EMR?» –

+0

@ ChrisWhite да, это именно то, что я прошу. EMR позволяет получать данные из мест, отличных от S3, но не объясняет, как это сделать. –

ответ

2

Если вы хотите сделать это «хаосом», вы должны внедрить DFS поверх своего источника данных или поместить ссылки на исходные URL-адреса в некоторый файл, который будет вводиться для задания MR.
В то же время hadoop рассказывает о перемещении кода к данным. Даже EMR по сравнению с S3 не является идеальным в этой перспективе - EC2 и S3 - это разные кластеры. Поэтому трудно определить эффективную обработку MR, если источник данных физически находится за пределами центра обработки данных.

0

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

+0

+1: так просто! –

0

Я знаю, что Cassandra пакет для Java имеет один источник пакет с именем org.apache.cassandra.hadoop и есть два класса в нем, которые необходимы для получения информации от Кассандры, когда вы работаете в AWS Elastic MapReduce.

Основные классы: ColumnFamilyInputFormat.java и ConfigHelper.java

Перейти к this link, чтобы увидеть пример того, что я говорю.