... А что по этому поводу думает товарищ пользователь ?

Владимир Пржиялковский

Независимый консультант, координатор ЕАГПО


Тезис о том, что в спорах не рождается истина, был известен людям достаточно давно (читай Марка Аврелия). Дискуссия о выборе технических критериев и методик оценки СУБД может служить объектом интереса с самых разных точек зрения, но большинству читателей журнала, вероятно, она полезна лишь постольку поскольку (и в той своей части, в которой) помогает описать проблему по возможности более многосторонне. Об одной такой стороне мне хотелось бы замолвить слово: о стороне, представляющей собой часть потребителей СУБД, утилитарно именуемую как "пользователи".

Дело в том, что в рамках подготовки к семинару Московской секции SIGMOD ACM 14 мая с.г. ("Проблема выбора СУБД для реализации проектов крупных информационных систем"), проведенного под впечатлением статьи "Сравнительный анализ и выбор СУБД для автоматизированной системы управления пассажирскими перевозками" в журнале "СУБД" № 4/1997, мною был выполнен мини-опрос пользователей СУБД Oracle, содержание которого можно обозначить как "Взгляд пользователей Oracle на технические аспекты выбора СУБД". В полном виде ответы опубликованы (анонимно) на www.ccas.ru/~prz/ra.htm и www.ccas.ru/~prz/ea.htm. Поскольку тема опроса непосредственно связана с обсуждаемой на страницах СУБД, мне бы хотелось привлечь внимание к полученным ответам еще и здесь.

Мне кажется, "религиозное"1 сознание, просочившееся в дискуссию, имеет смысл осторожно купировать некоторой дозой бытия. Естественно справиться, а что же думают сами пользователи про технические аспекты проблемы выбора (оценки, тестирования) ?

Подготовленные читатели, составляющие регулярную аудиторию журнала СУБД, сходу заметят два уязвимых места опроса. Во-первых, это "непредставительно" малый объем выборки (см. ниже), и во-вторых, не совсем ясное позиционирование опроса в дискутируемой теме (см. выше; мне кажется, не все сойдутся даже в мнении, какой вес имеет мнение пользователей, а тем более по так заданным вопросам и так выборочно представленное). Читатели будут правы: всякая статистика врет, и всякое сказанное слово ("мысль изреченная") есть ложь, и я только надеюсь, что и то и другое в данном случае не абсолютно, а ответы -- вот они, и разумный человек в состоянии сделать "в уме" необходимые примечания.

Некоторые характеристики опроса таковы.

Перечень вопросов представлен на рис. 1. Фактически это четыре последовательно фокусируемых вопроса, плюс приглашение высказать дополнительные соображения. Было получено 16 ответов отечественных пользователей из примерно 270 опрошенных, проходящих по списку рассылки ЕАГПО (группа русскоговорящих пользователей Oracle), и пять ответов зарубежных пользователей из 7 опрошенных2. Диапазон организаций, в которых работают опрошенные, достаточно равномерно заполнен между крупными (отдельно для нас, отдельно для заграницы) и мелкими организациями из разных секторов экономики и из госсектора.

Те, кто интересуется полными ответами, благо их немного, могут обратиться к упомянутым web-страницам. Сводка результатов (еще одна мишень для критики -- я не специалист, и желающие могут потренироваться свести результаты сами) приведена в табл. 1-А, 1-Б, 2-А, 2-Б, 3-А, 3-Б. Хотя изначально такой идеи у меня не было, таблицы представлены парами "ответы наших"/"ответы чужестранцев", поскольку выяснилось, что такая группировка напрашивается сама собой и едва ли не оказывается ключевой для интерпретации результатов.

Представляется, что результаты достаточно красноречивы, но некоторые собственные выводы позволю все же привести.

1. Проблема выбора СУБД действительно возникает в определенный момент перед большинством организаций. Ситуаций с предопределенной (исторически сложившейся) СУБД отмечено немного.

2. Похоже, что для наших пользователей и для зарубежных проблема выбора носит несколько различную окраску. Для наших организаций выбор СУБД в среднем более болезненен, чем для зарубежных. Это следует из таблиц 1-А и 1-Б, откуда видно, что у нас чаще всего используется одна большая СУБД и одна или более малых ("персональных") систем управления данными, в то время как за рубежом более типично наличие более, чем одной "большой" СУБД и отсутствие малых систем вовсе. Данные из табл. 1-Б не противоречат наблюдению, что (а) роль технических аспектов выбора СУБД за границей нередко сознательно принижается в угоду политическим или общесистемным мотивам, как например, желанию иметь в организации системы более чем одного поставщика, и (б) "вторая" (третья и далее) СУБД приобретается под "вторую" (и т.д.) задачу; вообще, СУБД за границей чаще приобретается под новую задачу без однозначной оглядки на уже имеющуюся систему. Данные из табл. 1-А не противоречат наблюдению, что у нас большая СУБД чаще всего выбирается альтернативно, а не дополнительно (особенно для комбинаций типа Oracle/Sybase или аналогичных) и не "под задачу", а "в организацию".

3. Более отчетливо об упомянутом в п. 2: приоритеты выбора в отечественных и зарубежных организациях разные (табл. 2-А и 2-Б). У наших это технические критерии, а за ними финансовые, а у зарубежных впереди равноприоритерная тройка технических критериев, политических соображений и положения СУБД/фирмы-производителя на рынке. Можно предположить, что технические характеристики не столь интенсивно озабочивают западного пользователя, возможно полагающего, что у целого ряда разных СУБД они не так уж радикально разнятся3. Западные пользователи чаще ориентируются на устойчивое положение фирмы-поставщика на рынке (проблема гарантированного будущего) и на политические (тоже внешние по отношению к техническим) мотивы. На уровне тенденции, решение о расходах вторично, проще говоря, "сколько потребуется, столько заплатим, лишь бы это было то, что нужно". У нас аналогом этого утверждения нередко служит: "сколько потребуется, столько заплатим, если эта система действительно такая замечательная".

Еще раз: зарубежные компании не придают рассмотрению технических характеристик столь же важное значение, как наши отечественные, возможно отчасти вследствие подразумеваемого мнения о том, что технические характеристики -- "дело само собой обеспеченное". Безусловно, что только что сказанное справедливо в пределах общности тенденции и является относительным утверждением.

4. Бросается в глаза, что из значимых по мнению отечественных пользователей технических критериев лидируют производительность, надежность и средства разработки (качество с количеством; см. табл. 3-А), а у зарубежных -- переносимость и средства разработки (табл. 3-Б). "Наш" приоритет критериев подтверждает предположительную тенденцию выбора СУБД как "одной и надолго", а зарубежный -- "под проект" и/или как альтернативу. Можно предположить, что парк аппаратных платформ в отечественных фирмах не столь разнообразен, и в типичном случае сводится к NT-серверу (вариант: Unix-серверу) и Wintel-рабочим станциям, а потому переносимость для нас не столь актуальна.

Теперь уже производительность не беспокоит зарубежных заказчиков так сильно, как наших, возможно отчасти вследствие подразумеваемого мнения о том, что теперь уже она -- "дело само собой обеспеченное" (см. выше). (Точность опроса не обеспечивает более детальное рассмотрение понятия производительности.) Любопытный читатель может поинтересоваться, как относительное равнодушие к производительности совмещается с популярностью TPC-тестирования СУБД. Рискну предположить, что TPC-тестирование носит ритуальный характер и основное его содержание сокрыто не в цифрах, а в кодовой посылке клиентам сообщения о том, что "с фирмой/СУБД все в порядке". Это, конечно, не означает, что такое тестирование бесполезно, равно как и сообщить о том, что все в порядке, можно в том числе и другими способами; это лишь говорит о том, как опыт зарубежных пользователей может учить наших пользователей результаты подобного тестирования адекватно воспринимать.

Вот, пожалуй, основные выводы, полученные из маленького эксперимента, и которые не рискну развивать дальше, дабы не уподобиться немцу, делающему "из шляпы идею" (в то время как его сосед-англичанин рядом делает "из идеи шляпу"). Я еще раз надеюсь, что читатель сделает свои поправки на приведенные здесь обобщающие суждения и не забудет, что в жизни встречаются случаи, не попадающие под типичные схемы, как впрочем и то, что подобные случаи -- нередко исключения. И еще раз благодарю всех, ответивших на вопросы, и проявивших таким образом полезную активность.


Примечания

1. Характеристика, примененная Г. М. Ладыженским в статье "О сравнительном анализе СУБД" в СУБД № 5-6/1997.

2. A propos, в цифрах нет ошибки: англоговорящие пользователи оказались более, чем в 10 раз отзывчивее русскоговорящих !

3. Этому предположению есть подкрепление, правда несколько устаревшее, но с другой стороны. В 1993 году мне пришлось принять активное участие в составлении обзора 10 ведущих СУБД мира, осуществлявшегося в МКЦ Вариант. Базой для обзора послужили, естественно, литературные источники (а не практическое изучение), и сложившееся от рассмотрения этих источников впечатление было отмечено в предисловии к обзору: технические характеристики небольшой группы ведущих СУБД разнятся не очень уж сильно. Жесткая конкуренция приводит к тому, что если в одной из систем вдруг появляется что-нибудь выдающееся, то оно очень быстро подхватывается другими СУБД. Существенных провалов в технических характеристиках не допускает ни одна из ведущих СУБД.


max=16
Oracle 16
Foxpro 5
Access 4
Clipper 3
MS SQL Server 2
SQLBase 2
Paradox 2
DB2 1
ADABAS 1
Sybase SQL Anywhere 1
Informix 1
FoxBase 1
Clarion 1
DB Vista 1
Btrieve 1

Таблица 1-А. Наличие разных типов СУБД в опрошеных отечественных организациях.

max=5
Oracle 5
Sybase 3
DB2 3
MS SQL Server 2
Informix 1
Progress 1
Access 1
Visual FoxPro 1
CA-IDMS 1

Таблица 1-Б. Наличие разных типов СУБД в опрошенных зарубежных организациях.

max=16
технические характеристики 11
финансовые критерии 7
наличие документации и книг 5
выбора не делалось 4
распространенность 4
сопровождение 3
наличие инструментария 3
политические мотивы 3
наличие разработчиков 2
успешный опыт других 1
курсы на русском языке 1
простота использования 1
локализованность 1

Таблица 2-А. Упомянутые опрошенными отечественными организациями критерии выбора СУБД.

max=5
Technical 4
Market position 4
Political 4
Financial 3
Support 2
Documentation 1
Users community 1

Таблица 2-Б. Упомянутые опрошенными зарубежными организациями критерии выбора СУБД.

max=16
производительность 8
надежность 7
средства разработки 6
масштабируемость 5
функциональные возможности 4
администрирование 3
мобильность 3
средства распределенной БД 3
предсказуемость 2
клиент-сервер 1
аппаратные требования 1
безопасность данных 1
параллельная обработка 1

Таблица 3-А. Упомянутые в отечественных организациях значимые технические критерии выбора.

max=5
Portability 3
Tools 3
Client/Server 2
SQL 2
Maintainability 2
Performance 2
Administration 2
ODBC 1
Internet/Intranet 1
Networking 1

Таблица 3-Б. Упомянутые в зарубежных организациях значимые технические критерии выбора.

1. Какие СУБД кроме Oracle используются в вашей организации ?
2. Сталкивалась ли ваша организация с проблемой выбора СУБД ?
3. Если "да", то по какими критериям выполнялся анализ ? (технические характеристики, финансовые критерии, политические мотивы, техподдержка, документация, что-то еще)
4. Если при отборе принимались во внимание технические характеристики, то какие из них были для вас главными ?
5. (Здесь можно дополнительно высказать свою точку зрения на проблему выбора СУБД)

Рисунок 1. Заданные вопросы (приводится русский вариант).