BSP 1С Франчайзинг - SQL-версии "1С:Предприятия"
[index.htm] Надежные партнеры Индивидуальный подход Команда профессионалов Акции и бонусы Главная Компания BSP О компании Новости Наши партнеры Наши клиенты Обратная связь Контакты Продукция Прайс лист Описание Демо версии Вопросы и ответы Статьи Авторизированный доступ Для партнеров Для клиентов SQL-версии "1С:Предприятия" Что такое SQL? Structured Query Language, или язык структурированных запросов, - это стандартный язык манипулирования данными в реляционных базах данных. Название он получил за решение очень важной задачи - выдавать в распоряжение пользователя нужную информацию по его запросу. Причем делать это так, чтобы не блокировать таблицы другим пользователям на время, пока информация нужна другому. А практика показывает, что почти все пользователи "набрасываются" на одни и те же таблицы (например, таблицу товаров или заказов). После появления языка был выпущен первый продукт SQL - реляционная СУБД* Oracle. В ней появился сервер (то есть "обслуживатель") базы данных, который выполняет распоряжения на этом языке. Теперь приложения не должны сами размещать свои данные и заботиться о них. Они адресуют SQL-серверу запросы или команды и сервер сам работает с базой данных. * СУБД - система управления базами данных. Как работает SQL-сервер Если хотите понять, что делает сервер, представьте, что у вас есть гардероб. Пока он действительно невелик, вы сами легко сможете находить нужную вещь, даже если она хранится в не совсем удобном месте. По мере роста количества вещей придется отвести отдельную комнату и подумать о порядке хранения. Но если вы вынуждены иметь несколько тысяч костюмов, вы станете перед выбором - либо заниматься только ими и ничем больше (согласитесь, это нелепо), либо нанять костюмера, который будет следить за вещами, чистить, ремонтировать, хранить и по вашему запросу выдавать те, которые нужны, или по вашему требованию ими распоряжаться, например, выбросит часть. Считайте, что роль костюмера играет SQL-сервер. Для чего нужны SQL-версии? Ответим на вопрос сразу: SQL-версии "1С:Предприятия", в отличие от обычных (файл-серверных), работают не с данными на диске, а с сервером базы данных MS SQL Server. Использование специального сервера базы данных обеспечивает высокую надежность работы и хорошую масштабируемость системы. Конкретные реализации SQL-серверов Многие компании имеют продукты типа сервера баз данных, но не любой сервер может претендовать на звание SQL-продукта. Для этого нужно выполнить требования стандарта ANSI. Все ведущие производители СУБД - компании Oracle, Microsoft, Informix, IBM, Sybase - выпускают свои реализации языка и сервера баз данных, которые несколько отличаются, но соответствуют стандарту ANSI. Программа "1С:Предприятие 7.7" работает только с Microsoft SQL Server. ANSI (Американский национальный институт стандартов) разрабатывает соответствующие стандарты для самых различных отраслей промышленности. Язык SQL, основанный на реализации IBM, был одобрен в 1986 году и с тех пор считается стандартным языком коммуникации реляционных баз данных. В 1987 году Международной организацией по стандартизации (ISO) стандарт ANSI SQL был принят в качестве международного стандарта. В настоящее время действует стандарт SQL/92. Технология "клиент-сервер" Совсем не так давно (лет десять назад), с распространением персональных компьютеров, стала распространяться архитектура "клиент-сервер". В системах этого типа к главному компьютеру (серверу) по локальной (реже - глобальной) вычислительной сети, которая обеспечивает обмен информацией, подключены персональные компьютеры (ПК-клиенты) или другие серверы. ПК-клиенты выполняют собственные процессы, оставаясь при этом открытыми для доступа по сети со стороны сервера. На сервере находятся источники данных, СУБД и связующее программное обеспечение. Если при этом имеется программный слой типа сервера базы данных, то мы получим современную трехуровневую архитектуру "клиент - сервер - сервер базы данных". В трехуровневой архитектуре не только клиентская, но и серверная часть программ никогда напрямую не работает с информацией, а только с сервером баз данных. Применительно к популярной программе "1С:Предприятие7.7" клиент-серверную модель поддерживает "1С:Предприятие для SQL". "1С:Предприятие7.7 для SQL". Что это? Одним из основных принципов архитектуры "1С:Предприятия" является одинаковое функционирование конфигурации при работе с базами данных в формате dbf/cdx и в формате SQL. Функциональная часть конфигурации работает одинаково с любой версией платформы "1С:Предприятия" - от однопользовательской до SQL-версии. Однако нельзя сказать того же о внутренних режимах и конкретных алгоритмах. Однопользовательскую, трехпользовательскую, сетевую версии "1С:Предприятия 7.7" называют "файл-серверными" версиями. На сервере хранятся только файлы данных. При необходимости произвести обработку данных эти данные сначала перекачиваются на ПК клиента, там обрабатываются и затем опять сохраняются на сервере. При этом по локальной сети в оба направления перемещаются значительные объемы информации. На время этих действий блокируются таблицы, в которых она содержится. Версию "1С:Предприятия для Microsoft SQL Server" называют клиент-серверной версией. В SQL-версии с ПК-клиентов приходят запросы на обработку данных и на них отправляются результаты обработки. Таким образом получена практически трехуровневая архитектура. Откровенно говоря, поскольку изначально "1С:Предприятие 7.7" не проектировалось для трехуровневой архитектуры, всех преимуществ работы с сервером достичь не удалось. В версии 8.0, которая сейчас вышла на рынок, такая архитектура заложена изначально. В ней есть клиентская часть (конфигурации), серверная (платформа). Специальный программный слой платформы транслирует команды либо в команды для MS SQL Server, либо в команды V8 DBEngin - собственного продукта, который предназначен для управления базой данных. Когда нужно переходить на "1С:Предприятие7.7 для SQL" Основные проблемы, которые призвана решить эта версия, возникают при многопользовательской работе с большими объемами данных. Существуют три "если": если размер базы данных превышает 150 МБ, то желательно переходить на SQL-версии "1С:Предприятия". При размере базы данных более 200 МБ переход на SQL-версию становится практически обязательным. Обычные версии с базой данных такого объема начинают работать медленно, и при существенном превышении базой данных объема 200 МБ вообще могут перестать работать. При использовании SQL-версии "1С:Предприятия" размер базы данных может превышать 2 ГБ; если в локальной сети работают с "1С:Предприятием" более 10 рабочих станций одновременно; а когда число одновременно работающих с "1С:Предприятием" рабочих станций превышает 15, то установка SQL-версии становится крайне желательной; если требуется повышенная надежность работы системы. Что вы получите вместе с SQL-версией При работе с SQL-версией появляются два важных преимущества: высокая надежность работы. В случае возникновения сбоя на любой рабочей станции (сбоя операционной системы, перерыва в электроснабжении, ошибки пользователя) не происходит повреждения данных в самой базе данных. SQL-сервер обеспечивает сохранность данных "до последней транзакции*". Восстановить придется только последнее действие. При таких сбоях в обычных версиях, если не удалось переиндексировать таблицы, придется восстанавливать архивную копию, при этом будет потеряна вся работа со времени последней архивации; масштабируемость (иногда говорят "быстродействие", но речь идет о меньшей чувствительности к количеству пользователей). Если вы добавите к своим пятнадцати еще пяток пользователей, замедления работы не заметите. При использовании клиент-серверной версии по сети передаются только команды и выборки данных, а не целые таблицы, поэтому меньше загружается сеть. Недостаток у "1С:Предприятия для SQL" в основном один - обходится дороже. Примерно вдвое дороже стоит сама система "1С:Предприятие", нужно приобретать MS SQL Server (в комплекте приобретать дешевле), и очень желателен сам выделенный сервер - "железо". В принципе, иногда на сервере можно работать, но это считается моветоном. Если вы перешли на SQL-версию, вы сразу увидите надежную работу. И типовые конфигурации тоже будут обязательно работать. В заключение отметим: сегодня считается, что использование клиент-серверной модели в системах управления базами данных позволяет эффективно управлять своими данными и строить мобильный бизнес. BSP ™ 1С Франчайзинг 2006