SELTA/requirements

Материал из Etersoft wiki
Версия от 21:53, 13 мая 2012; СтаниславКоробейников (обсуждение | вклад) (Import from wiki.etersoft.ru)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигацииПерейти к поиску
Wackowiki-logo.png Blue Glass Arrow.svg MediaWiki logo.png
Эта страница была автоматически перемещена с old.wiki.etersoft.ru.
Эта страница наверняка требует чистки и улучшения — смело правьте разметку и ссылки.
Просьба по окончанию убрать этот шаблон со страницы.


Требования к продукту

Конечный продукт должен удовлетворять следующим требованиям:

  • Скорость работы в худшем случае должна быть не более чем на 10-15% меньше, по сравнению с работой с MS SQL Server (при том же количестве подключенных пользователей на том же оборудовании)
  • Не должны производится никакие изменения в самой программе 1С.
  • Желательно избежать изменений в коде сервер PostgreSQL.
  • Конечный продукт должен быть очень хорошо оттестирован, т.к. ошибки при работе с базой данных могут привести к очень плачевным результатам.


Что сделано

В качестве альтернативной базы была выбрана PostgreSQL, на данный момент это одна из лучших бесплатных баз данных, которая способна составить конкуренцию продукту MS SQL Server. Так же учитывалось, что в сторону этой базы свой выбор уже сделала компания 1С, поддержав PostgreSQL в версии 1С 8.1. Это позволяет надеяться, что качество работы PostgreSQL будет на высоте.


Было принято решение, что сам транслятор будет подключаться к ODBC драйверу на клиентских машинах:

Мы модифицировали стандартный ODBC драйвер для PostgreSQL так, чтобы на запросы 1С он выдавал себя за драйвер MS SQL Server (в частности, возвращается другая версия продукта), согласно лицензии PostgreSQL все исходные коды модифицированного драйвера будут выложены в открытый доступ. В код драйвера ODBC добавлена загрузка дополнительной dll (закрытая часть) при помощи которой преобразуются SQL-запросы из диалекта T-SQL (используемого в MS SQL Server) в pl/pgSQL (PostgreSQL).