Первый взгляд

 

По гибкости возможностей сервер превосходит базы данных для настольных систем и не требует расходов на серверную часть

 

Пакет Sybase SQL Anywhere 5.0 (прежде носивший название Watcom SQL) после косметического ремонта и перемены имени искусно заполняет пробел между СУБД для настольных систем и серверами баз данных (БД). Этот продукт фирмы Sybase может служить отличным сервером БД на уровне рабочей группы, особенно в тех организациях, где используется Sybase SQL Server.

 

Сервер типа SQL Anywhere хорошо подходит для организаций, которым нужны более гибкие возможности, чем могут предоставить СУБД для настольных систем, и желающих при этом избежать расходов на внедрение полноценных серверов. В отличие от СУБД для настольных систем серверы для рабочих групп позволяют масштабировать сервер баз данных, не перепрограммируя при этом пользовательских приложений.

 

Цена на поступивший в продажу в январе Sybase SQL Anywhere составляет $599 за версию для четырех пользователей и $4999 за версию для неограниченного числа пользователей. Sybase также предлагает одиночную версию SQL Anywhere за $179 и ее же, но без возможностей удаленной связи за $119 (чтобы узнать об этих версиях подробнее, читайте статью "Серверы баз данных работают на настольных системах независимо" во врезке).

 

SQL Anywhere может масштабироваться до Sybase System 10 и 11. Пользуясь версией 5.0, разработчики могут при переносе приложений на Sybase SQL Server не прибегать к перепрограммированию пользовательских приложений, как это было бы в случае с СУБД для настольных систем.

 

SQL Anywhere выпускается в самых разнообразных конфигурациях, что делает её необычайно гибкой. В стандартной поставке серверная часть Concurrent Server поддерживает Windows NT, Windows 95, OS/2 и NetWare (как NLM-модуль NetWare). 32-разрядное клиентское ПО SQL Anywhere работает под Windows и DOS, но NetWare не поддерживает.

 

Некоторые из инструментов администрирования, входящих в этот сервер БД фирмы Sybase для рабочих групп, оказались самыми простыми в использовании из всех виденных нами. В пакет внесен ряд улучшений, которые делают SQL Anywhere совместимым с Sybase System 11, включая интеграцию Transact-SQL, процедурного языка сервера. В версии 5.0 также используется мощная технология репликации, которая может конкурировать с аналогичными технологиями, используемыми в Oracle7 и Personal Oracle7.

 

Сотрудники Тестового центра PC Week Labs протестировали версию Concurrent Server пакета SQL Anywhere, которая по возможностям сопоставима с Oracle7 Workgroup Server.

 

Управление

 

SQL Central, входящий в SQL Anywhere,  -  мощный инструмент администрирования баз данных (DBA)  -  упрощает выполнение самых распространенных задач администрирования. С его помощью мы создавали и уничтожали таблицы, делали выборки и кодировали хранимые процедуры, не выходя из графической среды SQL Central.

Сотрудники PC Week Labs воспользовались входящим в Sybase SQL Anywhere

инструментом администрирования SQL Central, чтобы графическим методом

создать триггер для обновления таблицы клиентов

 

Интерфейс SQL Central очень напоминает Windows 95 Explorer корпорации Microsoft и также разделен на окна. В левом окне отображаются объекты базы данных (таблицы, подключенные пользователи и выборки), а в правом  -  их содержимое.

 

В окне содержания SQL Central размещаются агенты  -  ряд шаблонов, помогающих пользователям справиться с созданием связанных объектов. Например, чтобы создать таблицу, мы щелкали на агенте Add Table (добавить таблицу). Затем мы настраивали поисковую таблицу, хотя и не имели возможности добавить колонки, ключи и индексы. Чтобы сделать это, нужно было получить доступ к самим этим объектам базы данных.

 

Нас удивило, что добавлять и модифицировать столбцы при использовании шаблона Add Table можно было только по отдельности. Мы были бы рады возможности изменять всю структуру таблицы из единого окна  -  такая функция присутствует во многих СУБД для настольных систем и инструментах DBA.

 

Поддержка функции "перетащи и оставь" в SQL Anywhere, напротив, позволила нам сэкономить массу времени. Мы "перетаскивали" таблицы из одной базы данных в другую, и сервер баз данных автоматически создавал пустую таблицу с теми же названием и свойствами.

 

Нам также понравился входящий в SQL Anywhere ассистент Foreign Key Wizard, который запускался автоматически, если мы "перетаскивали" таблицу и "бросали" ее в другой таблице той же базы данных. Ассистент помогал нам организовывать весь процесс настройки внешнего ключа.

 

SQL Central также позволил нам создавать встроенные процедуры и новые, определяемые пользователем, типы данных SQL Anywhere; их можно использовать для того, чтобы сделать базу данных более цельной. Например, мы создали тип данных "адрес" на основе строки в 40 символов.

 

Чтобы разработать встроенную процедуру, мы просто щелкали на кнопке Add Procedure (добавить процедуру) и вводили код в редакторе процедур. В отличие от других агентов SQL Central кнопка Add Procedure не обеспечивает помощи на всех этапах работы. Впрочем, редактор с выделением кода цветом, используемый также для триггеров и выборок, позволял нам легко отличать друг от друга комментарии, ключевые слова и константы.

 

Управлять пользователями и группами при помощи SQL Central легко. В него входят "мастера" (Wizard) для определения пользователей и групп, он дает администраторам возможность давать и уничтожать разрешения на доступ при помощи кнопок с независимой фиксацией.

 

Sybase SQL Anywhere обеспечивает мощные функции резервного копирования и восстановления через SQL Central. Чтобы начать оперативное резервное копирование, мы просто "переносили" базу данных к программе Backup Database в папке Database Utilities.

 

Версия 5.0 поддерживает резервное копирование в интерактивном и неинтерактивном режимах и обладает достаточной гибкостью при резервном копировании файлов регистрации транзакций. Например, мы уничтожили текущий файл регистрации транзакций и начали новый. При желании мы могли бы сохранить и текущий файл регистрации транзакций.

 

К сожалению, в SQL Anywhere не входит инструмент планирования для автоматического резервного копирования во время наименьшей загруженности.

 

Производительность

 

Одним из достоинств серверов БД на уровне рабочих групп является возможность масштабирования от независимой СУБД для настольных систем до сервера БД рабочей группы. Например, разработчики могут установить SQL Anywhere на блокнотный ПК и разрабатывать приложения, которые можно переносить в среду рабочих групп с минимальными изменениями или вообще без них.

 

В SQL Anywhere входит несколько функций, облегчающих его масштабирование до уровня Sybase SQL Server System 10 или 11. Например, SQL Anywhere поддерживает Open Server Gateway фирмы Sybase  -  набор интерфейсов, позволяющих клиентским приложениям взаимодействовать с сервером.

 

Как мы и ожидали от сервера БД, эта программа фирмы Sybase обладает отличными возможностями мониторинга производительности. К сожалению, самые мощные функции действуют только в среде Windows NT.

 

Так, используя встроенный монитор производительности Windows NT, мы внесли статистические данные для мониторинга сетевых пакетов, записей с использованием кэша, текущих запросов и открытых курсоров. Кроме этого, в SQL Anywhere входят десятки других статистических функций.

 

Под другими операционными системами мы смогли получить доступ к большинству статистических функций, используемых в мониторе производительности NT, хотя некоторые виды сетевой статистики отсутствовали. Используя монитор производительности SQL Anywhere, мы смогли отобразить статистические данные графически, в виде диаграмм.

 

Поскольку этот сервер БД также представляет эти статистические данные в виде функций, разработчики могут получить к ним доступ из клиентских приложений, просто вызвав нужную функцию.

 

SQL Anywhere обладает хорошими возможностями для точной настройки сервера БД после определения причин падения производительности. Мы устанавливали размер кэша базы данных при помощи командной строки. Кроме того, мы изменяли размер страницы базы данных, хотя для этого нам приходилось выгружать базу данных и загружать ее опять.

 

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

 

Серверная архитектура

 

Интегрированный в программу язык Transact SQL сервера Sybase SQL Server и усиленная поддержка Watcom SQL ("родной" диалект SQL программы SQL Anywhere) делают процедурный язык сервера баз данных SQL Anywhere достаточно мощным.

 

Что еще более важно, разработчики могут использовать Transact SQL и Watcom SQL во время одной и той же сессии. Впрочем, из-за небольшой разницы этих языков им придется выполнять несколько основных правил, описанных в инструкции.

 

Многие улучшения, внесенные в процедурный язык SQL Anywhere, были сделаны в Watcom SQL, чтобы приблизить его к Transact SQL.

 

Например, теперь Watcom SQL поддерживает триггеры на уровне операторов, запускаемые после того, как оператор будет выполнен, и подключаемые процедуры на уровне ряда, которые выполняются только при обновлении рядов. Transact SQL не поддерживает подключаемых процедур на уровне рядов.

 

Watcom SQL также поддерживает новые встроенные функции, в том числе некоторые функции преобразования типов данных.

 

Одна из наиболее мощных функций SQL Anywhere  -  репликация, хотя ее настройка при помощи SQL Anywhere оказалась долгим, но логичным процессом.

 

Чтобы разрешить репликацию, мы внесли таблицы, которые хотели продублировать, в папку SQL Remote. Они превратились в публикации. Мы добавили в эти таблицы подписчиков и скопировали им реплику базы данных. Затем мы использовали программу dbremote, чтобы начать сессию реплицирования с использованием Messaging API.

 

Разработчики могут также подключать SQL Anywhere к Replication Server фирмы Sybase  -  это сложная задача, требующая специальной подготовки.

 

Установка и изучение

 

Нам удалось легко установить SQL Anywhere на системы под Windows 95 и Windows NT. Во время инсталляции SQL Anywhere предложил нам указать операционную систему, а затем выбрать из списка компоненты для инсталляции.

 

Документация к программе SQL Anywhere состоит из двух инструкций с перекрестными ссылками. В них предлагаются подробное объяснение и полезные примеры. Несколько разделов инструкции необходимо прочесть, в частности тот, который относится к реплицированию. Текст печатных инструкций присутствует и в системе оперативной помощи SQL Anywhere.

 

Кроме того, в этот сервер баз данных на уровне рабочих групп входят прекрасные обучающие материалы, в которых описаны действия, необходимые для выполнения задач, а также объясняются лежащие в основе ее работы концепции. Обучающие материалы по настройке SQL Remote показались нам просто незаменимыми.

 

Джон Ташек

Что нового в SQL Anywhere 5.0

 

- Возможности двустороннего реплицирования

 

- Новый графический инструмент администрирования SQL Central

 

- Повышена функциональность хранимых процедур и триггеров

 

- Новая поддержка определяемых пользователем функций

 

- Интеграция процедурного диалекта Transact SQL фирмы Sybase

 

- Поддержка ODBC 2.5 уровня 2

 

- Поддержка больших файлов (более 2 Гб) под Windows NT

 

- Интеграция с утилитой Performance Monitoring в Windows NT

МЕТОДИКА ТЕСТИРОВАНИЯ

 

Сотрудники PC Week Labs протестировали версию Concurrent Server программы SQL Anywhere 5.0 фирмы Sybase, создавая таблицы, пользователей и встроенные процедуры. Мы инсталлировали клиентскую часть сервера БД на машину Dimension XPS 466V корпорации Dell Computer на базе 66 МГц процессора 486DX2, с 16 Мб ОЗУ и 400 Мб жестким диском. Система работала под Windows 95. Серверную часть программы мы установили на рабочую станцию на 66 МГц процессоре 486DX2 с 32 Мб ОЗУ и двумя 400 Мб жесткими дисками под Windows NT 3.51 Server.

CORPORATE SCOREBOARD

 

Sybase SQL Anywhere 5.0

 

Sybase

+-----------------------------------------------------------+

|УПРАВЛЕНИЕ                                                 |

+------------------------------------------+----------------+

|- Инструментарий   администрирования   баз|    ОТЛИЧНО     |

|данных                                    |                |

+------------------------------------------+----------------+

|- Резервное копирование и восстановление  |     ХОРОШО     |

+------------------------------------------+----------------+

|- Планирование                            |   НЕДОСТУПНО   |

+------------------------------------------+----------------+

|ПРОИЗВОДИТЕЛЬНОСТЬ                                         |

+------------------------------------------+----------------+

|- Масштабируемость                        |     ХОРОШО     |

+------------------------------------------+----------------+

|- Мониторинг производительности           |    ОТЛИЧНО     |

+------------------------------------------+----------------+

|- Настройка функций                       |     ХОРОШО     |

+------------------------------------------+----------------+

|СЕРВЕРНАЯ АРХИТЕКТУРА                                      |

+------------------------------------------+----------------+

|- Процедурный язык                        |    ОТЛИЧНО     |

+------------------------------------------+----------------+

|- Репликация                              |     ХОРОШО     |

+------------------------------------------+----------------+

|ЛЕГКОСТЬ ИСПОЛЬЗОВАНИЯ И ИЗУЧЕНИЯ                          |

+------------------------------------------+----------------+

|- Процесс инсталляции                     |     ХОРОШО     |

+------------------------------------------+----------------+

|- Документация                            |     ХОРОШО     |

+------------------------------------------+----------------+

|- Оперативная помощь                      |     ХОРОШО     |

+------------------------------------------+----------------+

|- Обучающие материалы                     |     ХОРОШО     |

+------------------------------------------+----------------+

Sybase SQL Anywhere 5.0

 

Sybase

 

(800) 879-2273

 

(510) 922-3500

 

http://www.sybase.com

 

Достоинства: Отличный графический инструмент администрирования упрощает выполнение многих задач, в том числе создание и удаление таблиц и управление пользователями; возможности репликации облегчают связь с удаленными пользователями и синхронизацию серверов баз данных; интеграция Transact SQL и Open Client позволяет разрабатывать приложения для Sybase System 10 и 11 на локальной системе; требует меньше ОЗУ, чем конкурирующие продукты.

 

Недостатки: Отсутствуют графические инструменты массового копирования и экспорта; нет интегрированных дизайнера форм и инструментов создания отчетов.

 

Резюме: Функции удаленной репликации Sybase SQL Anywhere и низкие требования к памяти на клиентской машине делают этот продукт идеальной программой для больших организаций, уже использующих Sybase SQL Server и желающих подключить удаленных пользователей и офисы к корпоративному серверу. Этот сервер БД представляет собой также хороший недорогостоящий сервер для сред на уровне рабочих групп под Windows 3.х, Windows 95, Windows NT или NetWare 3.х и 4.х, а также для независимой клиент-серверной разработки.

 

Версия для печати