Server design
Коллега показал прекрасную иллюстрацию к современному положению вещей с многоядерными и многонитевыми (thread) процессорами. Попытка сделать прорыв (надавить) по одному из направлений немедленно приводит к тому, что остальные поршни в картинке начинают "отъезжать". Чтобы как то отвлечь вас от этого несложного факта оперируют термином performance.
На самом деле когда вы слышите это слово, вы должны всегда уточнить, что имеется в виду
- single thread performance, те ваша однопоточная задача очень быстро посчитает свой pl/sql цикл (на картинке thread speed)
- total throwout, те много сразу ваших задачек смогу считать свои циклы, но не так быстро как в предыдущем случае (thread count)
- эффективность использования кэша потоком (effective cache/thread)
И исходя из вашего приложения решить, что является приоритетным. Но мы же знаем, что все хорошие идеи рубятся на стадии бюджета. Так что нужно считать цену решения. И тут, слава богу все просто - Oracle стоит больше, чем любое железо для него -)
SPARC T4-4 - $194K, SUN Storage 2540 - $262K (данные из TPC-H), Oracle Database + partitioning на 16 процессоров = (47,500 +11,500)x16 = $944K (Oracle price list)
Сервер можете взять любой -). Соотношение не сильно изменить. Так что на первое место сейчас выходит виртуализация, возможность выполнять много задачек с разными приоритетами по процессорному времени в рамках одного физического сервера. Надежность этого сервера, решения по построению HA и DR.
Мой совет - постарайтесь рассматривать не один сервер- одна задача, а смотреть немного шире. В конечном этоге это дает большую экономию. Все это требует разумного и понимающего вас бизнеса -)
Картинка из документа Fit for Purpose: Workload Based Platform Selection (С) IBM
Update 1. Подтверждение, что картинка качественно правильно описывает современное положение дел можно найти в документе Oracle's SPARC T4-1, SPARC T4-2, SPARC T4-4, and SPARC T4-1B Server Architecture. Как вы помните, в T4 по сравнению с T3 существенно (1.65 -> 2.8/3) увеличили частоту и уменьшили кол-во ядре (с 16 до 8 на процессор), что привело, цитаты:
- (T4) Maintain the computational capabilities to meet the growing demand from Web applications by providing equivalent throughput of the SPARC T3 processor.
- (T4) Provide networking performance equivalent to the SPARC T3 CPU to serve network-intensive workloads.
PS Легко увидеть что в TPC-H цена на Oracle не $944K, а $380K. Там просто рассчитали врменные лицензии на 3 года. Так тоже можно делать в TPC-H. Но в жизни чаще считают по другому.
На самом деле когда вы слышите это слово, вы должны всегда уточнить, что имеется в виду
- single thread performance, те ваша однопоточная задача очень быстро посчитает свой pl/sql цикл (на картинке thread speed)
- total throwout, те много сразу ваших задачек смогу считать свои циклы, но не так быстро как в предыдущем случае (thread count)
- эффективность использования кэша потоком (effective cache/thread)
И исходя из вашего приложения решить, что является приоритетным. Но мы же знаем, что все хорошие идеи рубятся на стадии бюджета. Так что нужно считать цену решения. И тут, слава богу все просто - Oracle стоит больше, чем любое железо для него -)
SPARC T4-4 - $194K, SUN Storage 2540 - $262K (данные из TPC-H), Oracle Database + partitioning на 16 процессоров = (47,500 +11,500)x16 = $944K (Oracle price list)
Сервер можете взять любой -). Соотношение не сильно изменить. Так что на первое место сейчас выходит виртуализация, возможность выполнять много задачек с разными приоритетами по процессорному времени в рамках одного физического сервера. Надежность этого сервера, решения по построению HA и DR.
Мой совет - постарайтесь рассматривать не один сервер- одна задача, а смотреть немного шире. В конечном этоге это дает большую экономию. Все это требует разумного и понимающего вас бизнеса -)
Картинка из документа Fit for Purpose: Workload Based Platform Selection (С) IBM
Update 1. Подтверждение, что картинка качественно правильно описывает современное положение дел можно найти в документе Oracle's SPARC T4-1, SPARC T4-2, SPARC T4-4, and SPARC T4-1B Server Architecture. Как вы помните, в T4 по сравнению с T3 существенно (1.65 -> 2.8/3) увеличили частоту и уменьшили кол-во ядре (с 16 до 8 на процессор), что привело, цитаты:
- (T4) Maintain the computational capabilities to meet the growing demand from Web applications by providing equivalent throughput of the SPARC T3 processor.
- (T4) Provide networking performance equivalent to the SPARC T3 CPU to serve network-intensive workloads.
PS Легко увидеть что в TPC-H цена на Oracle не $944K, а $380K. Там просто рассчитали врменные лицензии на 3 года. Так тоже можно делать в TPC-H. Но в жизни чаще считают по другому.
А как откачать голубую жидкость? :)
ОтветитьУдалитьP.S. Против IBM ничего не имею
Ага, откачать голубую и залить красную :))
ОтветитьУдалитьПро цвет - понравилось -)
ОтветитьУдалитьЕсть комментарий по ценам...
ОтветитьУдалитьДля справедливости, надо уточнить, что для такой машинки, применять процессорное лицензирование - излишество.
Даже при именованных пользователях (NU Plus) получаются достойные 400 пользователей, которых IMHO(!) хватит для нормальной нагрузки такого железа.
И при этом, Oracle EE+Partition обойдётся в $472000 (это как и в твоём примере, без поддержки и НДС).
Что вполне соизмеримо с ценой железа (194+262=$456K)