IT-мифология
У нас тут на этой неделе и далее, в ближайшее время, ожидается много интересного, поэтому традиционный сегодняшний, понедельничный пост я потрачу на общекультурную тематику.
Давно у меня зреет тема поговорить о бурно цветущей в наше время так называемой IT-мифологии.
Удивительным, казалось бы на первый взгляд, образом, такая высокотехнологичная отрасль, на мой взгляд, пропитана суевериями и обрядами, которые мы, подчас, просто не замечаем, считая нормой.
Впрочем, этот парадокс присущ не только одному IT, столь же парадоксальным образом дико суеверны и подвержены обрядам космонавты (почти все знают про “Белое солнце пустыни”, меньше про “пописать на колесо автобуса”, про запретные даты и ракету ТАНЯ) и летчики, хотя, казалось бы, “технологическое острие прогресса” и все дела. Лично у меня есть теория, что таким образом человеческое сознание и восприятие защищается от переизбытка нового и необычного, увязывая это, по своей природе с какими-то привычными простыми обрядами. Так что погодите негодовать, видя батюшку, брызгающего на ракету. :) Батюшки там только надводная часть айсберга и “магическое мышление” косит направо и налево.
Неудивительно, что в IT у нас также полно типичных культов и обрядов, которые мы отчего-то называем proven solution. :)
Отдельной темы, однако, достоен Культ карго в российском IT (в форме “если мы будем делать все в точности как у крутых, то от этого сами тоже станем крутыми” и “Раз у них есть мэйнфреймы, джава и файберченнэл, то нам тоже надо мэйнфрэймы, джаву и файберченнэл, потому что, любому ясно, именно это вывело их в Fortune Top, и ничто иное.”), но эта тема все же стоит отдельного исследования.
А сегодня я бы хотел остановиться на небольшом мифе, который, в последнее время, довольно часто попадается мне на глаза, то тут, то там.
Миф этот звучит как: “Апаратное = хорошо, программное = плохо!”
Я даже понимаю, откуда все это проросло. Конечно же из времен трудного детства IT и восьмибитных игрушек процессоров, когда в самом деле для высокой производительности каких-то процессов было необходимо применять специализированные решения “в кремнии”.
Однако с той поры прошло уже лет 20, а миф этот, сформировавшись и набрав силу в сознании, не думает уходить.
Совсем недавно шумно перезапустивший маркетинговую компанию стораджей HP, в хвост и в гриву эксплуатирует этот миф, глубоко укорененный в сознании пользователей, для своих стораджей 3Par.
- У нас внутри ASIC, - говорят они многозначительно поднимая палец, - Заказные микросхемы!
- АППАРАТНОЕ решение, вы понимаете, да?
- Ну-у, и… что? - все еще не поддается обрабатываемый пользователь
- Ну как, “что”, - нервничает пресейл, - Аппаратное, это ж круто, по определению, мощь! Не то что у этих, как их, у них вообще (понижая голос и кривясь), софтверный рэйд… Вы понимаете?
- Ну, конечно, - колеблется кастомер, - софтверный RAID… это - да, это удар, как же это я пропустил, конечно, тут - ASIC, вещь редкая, цены немалой, крутая, а там какой-то программный RAID, м-да…
А несколько месяцев назад мне в одном читаемом мной блоге попалась интересная заметка о том, как устроен parity engine, то есть механизм работы с parity RAID, например RAID-5 или -6 в “традиционных” блочных дисковых массивах NetApp E-series.
Внутри контроллера у них, разумеется, как и у всех, процессор. Процессор на контроллере там Intel Xeon x86, на котором работает OS RT (realtime OS) VxWorks. Для обсчета XOR и Galois Field Multiply контроллер использует аппаратные возможности, встроенные в процессоры Xeon, и специально для этого предназначенные Intel - Crystal Beach 3 DMA.
Однако, при разработке новых систем хранения с этой архитектурой выяснилось, что производительность его недостаточна для производтельности многодисковых систем хранения, в особенности использующих flash/SSD, и поэтому в новых версиях он, честный аппаратный вычислитель XOR был дополнен софтверным механизмом, выполняющемся в среде VxWorks, и считающим XOR и CRC для RAID 5/6 программно, на процессоре, а совсем не в загадочном “аппаратном” Crystal Beach.
Впрочем, следует признаться, что с подобной ситуацией мне уже приходилось сталкиваться, когда я видел попытки пользователей приспособить, допустим, пятилетней давности RAID-контроллер на сервер с новыми, современными процессорами. Парадоксальным, для пользователя, образом, программый RAID на LVM и mdadm вдруг оказывался в разы (буквально) производительнее этого заслуженного и проверенного многолетней службой (и стоившего сумасшедших денег тогда) аппаратного RAID.
Доводилось мне видеть и Hardware iSCSI Accelerator, который в полтора раза тормозил передачу данных по сравнении с Software iSCSI Initiator “из коробки” OS.
Близко к описываемому стоит еще один характерный IT-миф, который я бы назвал “миф про кровь девственницы в полнолуние”, или, в знакомых словах, что для совершения чудесного (”волшебного”) успеха обязательно необходимы редчайшие компоненты, или волшебное, недоступное простым смертным оружие, меч-кладенец, волос из ноздри висельника, глаз белой жабы, процессор Power6, невиданная никем архитектура системы (уж само собой не плебейский x86), а также, обязательно, ??нфинибэнд и HP-UX.
??менно тогда, мистическим образом, эта редкость, никем не виданная, даст ее использующему супер-силу великих свершений, недоступную простым обывателям.
Что любопытно, по мере расширения IT-кругозора, это суеверие меняет набор чудесных ингридиентов, но, обычно, никуда так и не уходит. ?? если в начале пути молодой IT-шник истово молится на малодоступные ему ленточные библиотеки, fibre channel и секретные, открытые только посвященным высокой ступени, ключи компиляции софта, то, взрослея, он лишь меняет набор колдовских итемов на другие (менее доступные в данный момент), однако, фактически, так и не отказываясь о них.
Но погодите смеяться, считая, что вы-то уж точно open-minded, и не подвержены никаким нелепым мифологическим заблуждениям. Может быть я просто не все перечислил? ;) Увы, человеческий мозг все время ищет себе опору для незнакомого и сложного в знакомом и привычном.
А с какими мифами и суевериями в IT встречались вы?