Чи замінює Amazon RedShift Hadoop для даних ~ 1XTB?


12

Навколо Хадоопа та його екосистеми є багато шуму. Однак на практиці, де багато наборів даних знаходяться в терабайтному діапазоні, чи не розумніше використовувати Amazon RedShift для запитів великих наборів даних, а не витрачати час і зусилля на створення кластера Hadoop?

Крім того, як Amazon Redshift порівнюється з Hadoop щодо складності, вартості та продуктивності налаштування?


Ви маєте на увазі Hadoop або маєте на увазі конкретного аналога Redshift, як Імпала?
Шон Оуен

@SeanOwen у своєму питанні я мав на увазі Apache Hadoop. Хоча було б цікаво зробити і порівняння Імпали.
триєдизм

Відповіді:


12

tl; dr: Вони суттєво відрізняються у багатьох аспектах, і я не можу подумати, що Redshift замінить Hadoop.

-Функція
На Redshift ви не можете запустити нічого, крім SQL. Мабуть, найголовніше, що ви не можете запускати на Redshift будь-який тип користувацьких функцій. У Hadoop можна, використовуючи багато мов (Java, Python, Ruby .. ви її називаєте). Наприклад, NLP в Hadoop простий, тоді як в Redshift це більш-менш неможливо. Тобто, у Hadoop можна багато чого зробити, але не на Redshift. Це, мабуть, найважливіша відмінність.

-Виконання профільного
запиту на Redshift в більшості випадків значно ефективніше, ніж на Hadoop. Однак ця ефективність виходить із індексування, яке робиться під час завантаження даних у Redshift (тут я використовую термін indexingдуже вільно). Тому чудово, якщо ви завантажуєте свої дані один раз і виконуєте кілька запитів, але якщо ви хочете виконати лише один запит, наприклад, ви можете фактично втратити ефективність.

-Cost Profile
Яке рішення виграє у вартості, залежить від ситуації (наприклад, продуктивності), але вам, мабуть, потрібно досить багато запитів для того, щоб зробити його дешевшим за Hadoop (точніше зменшити Elastic Map Amazon). Наприклад, якщо ви робите OLAP, дуже ймовірно, що Redshift вийде дешевше. Якщо ви робите щоденні партії ETL, Hadoop швидше вийде дешевше.

Сказавши це, ми замінили частину нашого ETL, яка була зроблена в Hive to Redshift, і це був досить чудовий досвід; переважно для зручності розвитку. Система запитів Redshift заснована на PostgreSQL і дуже зріла, порівняно з Hive's. Його кислотні характеристики полегшують міркування про це, а швидший час реакції дозволяє зробити більше тестування. Це чудовий інструмент, але він не замінить Hadoop.

EDIT : Щодо складності налаштування, я б навіть сказав, що з Hadoop простіше, якщо ви використовуєте EMR AWS. Їх інструменти настільки зрілі, що безглуздо легко запустити роботу Hadoop. Інструменти та механізми, що впливають на функціонування Redshift, ще не такі зрілі. Наприклад, Redshift не може впоратися з завантаженням дрібниць, і, отже, вам доведеться придумати щось, що перетворює це в пакетне навантаження, що може додати певної складності вашому ETL.


2
easier to develop because of Redshift's maturityсуперечить Redshift isn't that mature yetтому, який ваш вирок?
М. Мімпен

@ M.Mimpen: Відредагована відповідь буде більш конкретна
Енно Шіоджі

5

Поточна межа розміру для Amazon Redshift - 128 вузлів або 2 PB стислих даних. Можливо, близько 6PB нестиснений, хоча пробіг змінюється для стиснення. Ви завжди можете повідомити нам, якщо вам потрібно більше. anurag @ aws (я запускаю Amazon Redshift і Amazon EMR)


3

Особисто я не думаю, що створити кластер hadoop не все так складно, але я знаю, що іноді боляче, коли ти починаєш працювати.

Обмеження розміру HDFS значно перевищують туберкульоз (чи ти мав на увазі екзабайт?). Якщо я не помиляюся, це масштабується до йоттабайтів чи інших вимірювань, про які я навіть не знаю цього слова. Як би там не було, воно справді велике.

Такі інструменти, як Redshift, мають своє місце, але я завжди хвилююся щодо конкретних рішень для постачальників. Моя головна турбота - це завжди "що мені робити, коли я незадоволений їх обслуговуванням?" - Я можу перейти до google і перенести свою роботу з аналізу в їх парадигму, або я можу перейти до hadoop і перенести цю саму роботу в ту систему. Так чи інакше, мені доведеться дізнатися щось нове і зробити багато роботи над перекладом речей.

Попри це, приємно мати можливість завантажувати набір даних та швидко працювати - особливо, якщо те, що я роблю, має короткий життєвий цикл. Amazon зробив хорошу роботу щодо вирішення проблеми безпеки даних.

Якщо ви хочете уникнути hadoop, завжди знайдеться альтернатива. Але з цим не все так складно працювати, як тільки ти розпочнеш з цим.


3
Я припускаю, що посилання ОП на туберкульоз означає "для даних про малий кінець того, для чого ви можете використовувати Hadoop". Якщо у вас кілька петабайт або більше, Redshift явно не підходить. (Я вважаю, що це обмежено ста вузлами 16 ТБ.)
Тім Гудман
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.