Netezza Deep Dive
Коллеги отвечающие за продвижение Netezza подготовили (специально для блога -)) перевод достаточно глубокой технической презентации. Очень рекомендую ее просмотреть.
Для затравки расскажу про основную особенность - "специальный соус" - которым так гордятся разработчики: обработка данных практически на уровне дискового контроллера. FPGA - это field programmable gate array, который разработчики Netezza научили..ну почти sql!
Этот самый FPGA реально занимается декомпрессией и фильтрацией данных, те 'понимает' sql выражения. Достоинствам такого подхода является то, что память и процессоры S-Blade работают уже с отфильтрованными данными, что значительно упрощает обработку. Ну и конечно же обратите внимание на колоночное сжатие, ZoneMaps, управление нагрузкой. В презентации вы найдете небольшой экскурс в историю Netezza, где показывается что уже несколько лет Netezza показывает значительный рост производительности только с помощью обновления ПO (слайд 95)
Зачем бы компаниям, уже использующим Oracle могла понадобиться Netezza? Ответ не очевиден, однако есть по крайне мере две причины.
Первая - основана на простоте Netezza. Как вы увидели из презентации там практически нечего администрировать. Многие компании использую Oracle как хранилище данных, они просто складывают туда данные и извлекают, используя далеко не все возможности Oracle. У них даже может не быть собственно DBA - как правило такую роль берет на себя кто-то из продвинутых разработчиков. На sql.ru каждую неделю можно видеть посты типа "я тут просто код пишу, помогите восстановить БД". Их нельзя бросать в пасть Рачку - сожрет. Сюда же могу отнести случаи когда Oracle используется в ISV разработках, скажем 1C или SAP и требуется построить хранилище для обработки данных из них. Оба продукта не требуют наличия штата квалифицированных DBA (ок, до поры до времени по крайней мере), они (1С и SAP) все делают с БД сами. Администраторы больше занимаются приложением. Теперь когда нужно строить хранилище и стоит выбор между серьезным увеличением штата DBA и их квалификации для использования Exadata или приобретением коробки к которой есть sql интерфейс и которая почти не требует этого самого администрирования.
Вторая - проста и понятна бизнесу: цена. К сожалению политика IBM требует обращения к партнеру за ценой, так что мои измышления по поводу Netezza, будут основаны на публичных источниках. Ecли внимательно приглядеться, то на уровне 10 Tb можно будет увидеть разницу примерно в 10 раз по сравнению с конкурентами ($125,000 против $1.6 mln). По прайс-листу, без учета производительности. Косвенно это подтверждает и Monash Research - у Netezza одна из самых низких в индустрии стоимость владения per terabyte . Eще раз повторю - я опустил момент производительности и скидок, но руководство может заинтересовать такая разница. Кстати доказать, кто производительнее оказалось не такой простой задачей, как думали некоторые -) Чуть не забыл очень важный момент - сложить данные в СУБД это всего лишь маленькая часть задачи. Основная задача - аналитика. У Netezza весьма развитые средства аналитики, включая OLAP, Spatial, Data Mining, Open Source и если я не ошибаюсь, все это уже включено в стоимость. Ссылка про R.
Для организаций у которых уже есть штат квалифицированных DBA, которые привыкли на обед съедать по Рачку - путь тоже очевиден: Exadata, они там все знают и понимают. Разные опции для разных случаев.
Update 1. Netezza & Oracle.
Для затравки расскажу про основную особенность - "специальный соус" - которым так гордятся разработчики: обработка данных практически на уровне дискового контроллера. FPGA - это field programmable gate array, который разработчики Netezza научили..ну почти sql!
Этот самый FPGA реально занимается декомпрессией и фильтрацией данных, те 'понимает' sql выражения. Достоинствам такого подхода является то, что память и процессоры S-Blade работают уже с отфильтрованными данными, что значительно упрощает обработку. Ну и конечно же обратите внимание на колоночное сжатие, ZoneMaps, управление нагрузкой. В презентации вы найдете небольшой экскурс в историю Netezza, где показывается что уже несколько лет Netezza показывает значительный рост производительности только с помощью обновления ПO (слайд 95)
Зачем бы компаниям, уже использующим Oracle могла понадобиться Netezza? Ответ не очевиден, однако есть по крайне мере две причины.
Первая - основана на простоте Netezza. Как вы увидели из презентации там практически нечего администрировать. Многие компании использую Oracle как хранилище данных, они просто складывают туда данные и извлекают, используя далеко не все возможности Oracle. У них даже может не быть собственно DBA - как правило такую роль берет на себя кто-то из продвинутых разработчиков. На sql.ru каждую неделю можно видеть посты типа "я тут просто код пишу, помогите восстановить БД". Их нельзя бросать в пасть Рачку - сожрет. Сюда же могу отнести случаи когда Oracle используется в ISV разработках, скажем 1C или SAP и требуется построить хранилище для обработки данных из них. Оба продукта не требуют наличия штата квалифицированных DBA (ок, до поры до времени по крайней мере), они (1С и SAP) все делают с БД сами. Администраторы больше занимаются приложением. Теперь когда нужно строить хранилище и стоит выбор между серьезным увеличением штата DBA и их квалификации для использования Exadata или приобретением коробки к которой есть sql интерфейс и которая почти не требует этого самого администрирования.
Вторая - проста и понятна бизнесу: цена. К сожалению политика IBM требует обращения к партнеру за ценой, так что мои измышления по поводу Netezza, будут основаны на публичных источниках. Ecли внимательно приглядеться, то на уровне 10 Tb можно будет увидеть разницу примерно в 10 раз по сравнению с конкурентами ($125,000 против $1.6 mln). По прайс-листу, без учета производительности. Косвенно это подтверждает и Monash Research - у Netezza одна из самых низких в индустрии стоимость владения per terabyte . Eще раз повторю - я опустил момент производительности и скидок, но руководство может заинтересовать такая разница. Кстати доказать, кто производительнее оказалось не такой простой задачей, как думали некоторые -) Чуть не забыл очень важный момент - сложить данные в СУБД это всего лишь маленькая часть задачи. Основная задача - аналитика. У Netezza весьма развитые средства аналитики, включая OLAP, Spatial, Data Mining, Open Source и если я не ошибаюсь, все это уже включено в стоимость. Ссылка про R.
Для организаций у которых уже есть штат квалифицированных DBA, которые привыкли на обед съедать по Рачку - путь тоже очевиден: Exadata, они там все знают и понимают. Разные опции для разных случаев.
Update 1. Netezza & Oracle.
> Ну и немного юмора в конце - на этой странице утверждают что среди заказчиков Netezza - Oracle UK -)
ОтветитьУдалитьШутка юмора в том что Orange <> Oracle?
>Orange <> Oracle?
ОтветитьУдалитьСпасибо вам - удалил этот текст. Заработался. Извините.
> Oracle: несколько часов
ОтветитьУдалитьБред сивой кобылы, а не сравнение? Нужно объяснять почему или ты сам посоветуешь слайд убрать?
Ты все вычитай. Презентация-то плохая.
ОтветитьУдалить>Нужно объяснять почему или ты сам посоветуешь слайд убрать?
ОтветитьУдалитьконечно нужно объяснять, коллегам будет весьма полезно.
>Ты все вычитай. Презентация-то плохая.
Спасибо за ваше мнение. Теперь пожалуйста поконкретнее. Номер слайда, что не так.
Я напишу запрос сейчас абстрактный, запущу его на Oracle/Exadata, MS SQL server, MySQL, и проч. и просто скажу в какой-то другой презентации, что такой же на Netezza работает 3 часа. Не указав почему он работает 3 часа, не сравнив и показав где реально Oracle, MySQL, MySQL, и прочие тратят время и где Netezza реально "побеждает". То что указано на том слайде это тип псевдо-технического, неполноценного сравнения, а это еще хуже чем просто маркетинговая информация. Исправлять за тебя слайды никто не будет, потрудись сам разобраться в той переведенной чепухе и в абсолютно непрезентабельном изложении материала. Их читать невозможно.
ОтветитьУдалить"Отказы дисков не влияют на запросы и транзакции" - где я могу увидеть статисткику показывающую сколько времени ушло на "понимание" того что диск битый и влияние этого на время отклика. Слова "не влияют" - это бред. Где цифры в миллисекундах?
"Отказавшие диски автоматически восстанавливаются" что будет если произойдет сбой во время восстановления? Как ускорить (дать больше ресурсов) на операцию восстановления?
"Транзакции и загрузка прерываются" "Загрузка данных перезапускается с последней контрольной точки" противоречит "Отказы дисков не влияют на запросы и транзакции" они влияют имменно потому что чудес не бывает и время отклика при сбойном диске (или другом элементе программно-аппаратного комплекса) увеличится.
Это не "глубокое погружение", это убогий "технической маркетинг".
>Исправлять за тебя слайды никто не будет, потрудись сам разобраться
ОтветитьУдалитьСпасибо за потраченное время, действительно есть что улучшать. К сожалению в пылу вы явно забыли прочитать кто делал эту презентацию, хотя это написано в первой строке поста. Я занимаюсь Oracle, это база данных такая
>Не указав почему он работает 3 часа
Думаю что слайд не очень конечно. Следовало привезти customer case, например вот такой http://www.netezza.com/documents/ibasis_casestudy.pdf
>где я могу увидеть статисткик
>Где цифры в миллисекундах?
Диски в Netezza зеркалированы, поэтому если не удасться считать данные с одного диска данные будут считываться с другого. Придется повторить операцию чтения, 10 ms на этом будет потеряно. Но Netezza это DWH и время запросов измеряется минутами, поэтому ms никого не волнуют
> Что то будет если произойдет сбой во время восстановления?
> Как ускорить операцию восстановления?
В Netezza есть hot spare диски, данные копируются на новый диски, если восстановление на старом невозможно. Не знаю как ускорить и не знаю зачем это нужно, работает с максимальной скоростью которой может автоматически.
>"Транзакции и загрузка прерываются" противоречит "Отказы дисков не влияют на запросы и транзакции"
Вы запутались в слайдах 36 и 37. На 36 идет речь про отказ диска, он не влияет скорость запросов. На слайде 37 речь идет про отказ s-blade. Конечно при отказе s-blade транзакция останавливается и будут продолжены с контрольной точки.
>Это не "глубокое погружение"
Спасибо еще раз за ваше анонимное мнение.
Добрый День!
ОтветитьУдалитьНасчет сравнения времени выполнения запросов в презентации действительно написано немного голословно, но это действительно правда что системы MPP гораздо производительнее в аналитических запросах, могу утверждать по опыту.
Отказы дисков действительно не влияют на запросы и транзакции - все диски зеркалированы, во всех моделях кроме самой младшей имеются запасные диски (hot spares). Именно эти диски и используются для операции восстановления, которая происходит в бэкграунде.
Как управлять ресурсами, выделенными на восстановление если честно, не знаю, но мог бы выяснить если была бы необходимость.
"Транзакции и загррузка прерываются", и "Загрузка данных перезапускается с последней контрольной точки" - это было не про отказы дисков, а про отказы S-Blades, так что противоречия тут нет.
Буду рад ответить на другие вопросы если есть.
Андрей Выходцев
По приведенной ссылке Netezza & Oracle есть как минимум 1 ошибка (даже не ошибка, а скорее неточность):
ОтветитьУдалитьGoldenGate не умеет складывать данные напрямую в Netezza. Интеграция с Netezza делается через плоские файлы. А вот с Exadata и Teradata - интеграция делается напрямую - GoldenGate льет изменения прямо в базу данных.
>GoldenGate не умеет складывать данные напрямую в Netezza
ОтветитьУдалитьАлександр, спасибо !
Дима, ты так долго занимался критикой маркетингового булшита от Oracle, а вывеcил презу Netezza, в качестве технической, где этого булшита огромное количество :)
ОтветитьУдалитьНо все равно преза интересная, спасибо!
В качестве конструктивной критики - слайды, где есть системы ETL содержат упоминания о Sunopsis и Hyperion, как отдельных компаниях.
Они уже куплены Oracle более 4 лет назад, что говорит о том, что слайды с тех пор не менялись.
>ты так долго занимался критикой маркетингового булшита
ОтветитьУдалитьЯ против булшита во всех компаниях -) И вывесил я презентацию именно с целью искоренить его. По результатам замечаний будет update.
>преза интересная, спасибо!
Всегда пожалуйста
>где этого булшита огромное количество
Slide by Slide, номер слайда, в чем булшит ? Ребята все поправят без проблем, я думаю.
>В качестве конструктивной критики..Они уже куплены Oracle более 4 лет назад
Принято
Секретная ссылочка на цены Netezza
ОтветитьУдалитьhttp://netezza-twinfin.com/
>Секретная ссылочка
ОтветитьУдалитьсупер. Помните только что это цены от некоторого партнера, а не IBM.
> И вывесил я презентацию именно с целью искоренить его. По результатам замечаний будет update.
ОтветитьУдалитьа мне кажется, что преза была сюда вывешена, чтобы мы ее оценили, вы ее поправили и пошли с ней по заказчикам :)
>Помните только что это цены от некоторого партнера, а не IBM.
не потому ли, что ни один из партнеров в России пока еще не имеют право продавать netezza?
>а мне кажется, что преза была сюда вывешена
ОтветитьУдалитьМожет быть и так тоже. Только я не хожу по заказчикам с Netezza, я занимаюсь Oracle Database. Oracle RAC.
> написано немного голословно
ОтветитьУдалитьНаписано не "немного голословно", а написана откровенная чепуха.
> но это действительно правда что системы MPP гораздо производительнее в аналитических запросах, могу утверждать по опыту.
Просили указать на чепуху, а не на твой конкретный опыт, про который в презентации не говориться.
> Отказы дисков действительно не влияют на запросы и транзакции
Прочитай очень внимательно, очень, о чем было написано. И поймешь что ты пишешь чепуху. Они не могут не влиять. Они влияют. Это влияние имеет характеристики. Эти характеристики в нормальных документах указывают.
> Именно эти диски и используются для операции восстановления, которая происходит в бэкграунде.
Что будет если сбой произойдет во время операции восстановления? Как это мониторится? Что делать?
> Как управлять ресурсами, выделенными на восстановление если честно, не знаю, но мог бы выяснить если была бы необходимость.
Речь не о тебе, а о том что в презентации. Если там написана фигня, то ее нужно исправить.
> "Транзакции и загррузка прерываются", и "Загрузка данных перезапускается с последней контрольной точки" - это было не про отказы дисков, а про отказы S-Blades, так что противоречия тут нет.
См. выше. Хватит писать чепуху.
Мы работаем в данный момент с потенциальными партнерами. Только на этой неделе было 5 встреч.
ОтветитьУдалить> Что будет если сбой произойдет во время операции восстановления? Как это мониторится? Что делать?
ОтветитьУдалитьДавайте обратимся к слайду номер 36, на котором нарисованы разделы диска (primary, mirror, temp.
Если происходит сбой диска, то происходит следующее: а) данные продолжают считываются с другого диска, который содержит раздел с его зеркалом; б) В это время система копирует на запасной (hot spare disk) этот раздел с зеркалом сбойного диска в качестве основного (primary) раздела, а в качестве mirror раздела копируется раздел того диска, с которого происходило копирование.
Если во время этой процедуры произошел сбой, то процесс копирования начнется по-новой.
Мониторить этот процесс можно при помощи специальных утилит - nzsystem и nzAdmin.
Буллшит, говорите? Ну, хорошо.
ОтветитьУдалитьСлайд 4: teradata и exadata - тоже интегрированные решения, netezza не уникальна. К тому же у Informatica есть опция push-down optimization, заставляющая выполняться etl-процессы прямо в терадате, не гоняя данные по сети и не нагружая ETL-сервер. У SAS есть scoring accelerator и analytics accelerator, также позволяющие проводить промышленный скоринг и обучение моделей силами терадаты. Так что в отношении интеграции netezza не уникальна, а терадате даже проигрывает.
Слайд 19: длинный курс обучения говорит об обилии возможностей, в аналитической БД совсем не лишних. Сомнительный плюс.
Слайд 29: "секретная железка" - хорошо, но дорого. В exadata и teradata практически всё железо стандартное (за исключением flash cache и BYNET). Как только netezza составит упомянутым решениям хоть сколько-нибудь серьёзную конкуренцию, цену можно будет мгновенно снизить за счёт скидок на ПО. А вот железом торговать себе в убыток вряд ли долго получится.
Слайд 62, zone maps: в exadata есть, только называется по-другому.
Владимир, привет!
ОтветитьУдалитьНе спора ради, а информации для:
Informatica может делать PDO и в Netezza. SAS accelerator'ы для Netezza тоже есть, работают приблизительно так же. И тоже есть SAS Access for Netezza и SQL pushdown тоже работает.
Насчет курсов обучения - так и есть, чем длиннее курс, тем больше фич, однако в Netezza пошли путем максимального упрощения и выноса логики в аппаратный уровень, что сокращает время на обучение (могу сказать по личному опыту, что мне понадобилось на изучение Netezza гораздо меньше времени чем на изучение Teradata и Oracle)
FPGA это не совсем секретная железка, это программируемый чип, про него даже в википедиях написано .
И стоит тоже недорого, особенно в сравнении.
В Exadata есть фича, поразительно похожая на zone maps - называется Exadata Storage Indexes. Там вся магия происходит внутри Exadata Storage Server Grid, на который сверху смотрит RAC Database Server Grid. В Netezza сделано по-другому, там shared nothing, нагрузка распределяется равномерно между процессинговыми юнитами (SPU), которые читают с диска при помощи FPGA, в котором и происходит фокус с zone maps, а так же много других вещей - декомпрессия, фильтрация колонок, и т.п.
Надеюсь, ничем не оскорбил твои религиозные чувства :)
С уважением, Андрей.