Microsoft SQL Server

Материал из Википедии — свободной энциклопедии
(перенаправлено с «MS SQL Server»)
Перейти к: навигация, поиск
Microsoft SQL Server
SQLServer2008Logo.png
Тип

Реляционная СУБД

Разработчик

Microsoft

Написана на

C, C++, C#

Операционная система

Microsoft Windows

Последняя версия

2012 (01 апреля 2012)

Лицензия

Microsoft EULA

Сайт

http://sqlserver.net

Microsoft SQL Serverсистема управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Основной используемый язык запросов — Transact-SQL, создан совместно Microsoft и Sybase. Transact-SQL является реализацией стандарта ANSI/ISO по структурированному языку запросов (SQL) с расширениями. Используется для работы с базами данных размером от персональных до крупных баз данных масштаба предприятия; конкурирует с другими СУБД в этом сегменте рынка.

Содержание

[править] История

[править] Предыстория (1986-1988)

В 1986 году все разработки Microsoft были ориентированы исключительно на домашние компьютеры, а самым прибыльным продуктом являлась ОС MS-DOS. Клиент-серверная обработка данных на ПК еще не получила широко распространения, и по этой причине лежала вне интересов Microsoft. Для обработки данных как правило использовались электронные таблицы типа Lotus 1-2-3, возможности которых были сильно ограничены. По этой причине СУБД dBase (а именно, dBase II и dBase III) компании Ashton-Tate быстро получили признание, что, несмотря на наличие конкурентов (MicroRim с собственной разработкой Rbase, а также Paradox, разработанный Ansa Software), сделало Ashton-Tate ведущим поставщиком решений по работе с данными для ПК.

Годом ранее, в августе 1985 года, Microsoft заключила соглашение с IBM о совместной разработке «операционных систем и прочих программных продуктов», результатом которого стал анонс новой ОС OS/2 в апреле 1987 года (версия 1.0 была выпущена в декабре того же года). Вскоре после объявления, IBM анонсировало ещё и специальную, усовершенствованную версию этой ОС — OS/2 Extended Edition. Эта версия должна была комплектоваться с СУБД OS/2 Database Manager и несколькими другими сетевыми и серверными решениями. И хотя Database Manager был более ориентирован на мэйнфреймы, а не на ПК, тем не менее, на базе их общей разработки IBM могла предложить покупателям более выгодный продукт, нежели Microsoft. Необходимость в собственных разработках в области управления базами данных стала для Microsoft очевидной и весьма актуальной.

Для решения этой проблемы Microsoft обратилась к Sybase, которая на тот момент ещё не выпустила коммерческую версию своего продукта DataServer (это произошло чуть позже, в мае 1987 года и только для рабочих станций Sun под управлением UNIX). Причиной обращения было то, что предрелизная версия DataServer хоть и не была продуктом, рассчитанным на широкое применение, тем не менее за счёт реализации новых идей (клиент-серверной архитектуры, в частности) новая СУБД получила весьма неплохие отзывы. В результате подобного соглашения Microsoft получила бы эксклюзивные права на версию DataServer для OS/2 и всех ОС, разработанных самой Microsoft, а Sybase помимо роялти от Microsoft получила бы доступ к части рынка, занимаемого продуктами Microsoft (в том числе и новой OS/2). Поскольку производительность домашних ПК невысока, то Sybase рассматривала данный сегмент рынка как основу для последующих продаж своего продукта для более производительных систем на базе ОС UNIX, тем более, что MIcrosoft благодаря своей налаженной сети дистрибьюции могла обеспечить значительно более высокие продажи DataServer, чем сама Sybase. 27 марта 1987 года президент Microsoft Джон Ширли и один из основателей Sybase Марк Хофманн (являвшийся на тот момент и президентом компании) подписали договор.

На тот момент львиную долю рынка СУБД для ПК занимала компания Ashton-Tate со своей dBASE. Поскольку DataServer обладал несколько иными возможностями по сравнению с dBASE, то данные продукты в качестве потенциальных конкурентов не рассматривались. Это позволило Microsoft заключить сделку с Ashton-Tate, согласно которой последняя должна была заняться продвижением DataServer среди сообщества пользователей её dBASE.

[править] SQL Server 1.0 (1989)

В 1988 году был анонсирован новый продукт Ashton-Tate/Microsoft SQL Server. (Это было первое использование названия SQL Server. Sybase впоследствии переименовала версию DataServer для UNIX и VMS в Sybase SQL Server, а позже — и в Sybase Adaptive Server.) Sybase же, несмотря на то, что её название в наименовании нового продукта не фигурировало, являлась по сути главным разработчиком из всей троицы компаний. Вклад же Microsoft, напротив, был весьма невелик. В Sybase уже была сформирована небольшая команда, задачей которой было портирование движка DataServer на OS/2, а также перенос клиентского интерфейса DB-Library на MS-DOS и OS/2. Microsoft же отвечала за тестирование и проект-менеджмент, а также разработала несколько дополнительных утилит, облегчавших установку и администрирование SQL Server 1.0.

Новый продукт задумывался как порт Sybase DataServer на OS/2, продажами которого должны были заняться как Microsoft, так и Ashton-Tate. Параллельно разрабатываемая Ashton-Tate новая версия dBASE IV также должны была быть доступной в серверном варианте, что позволило бы использовать язык и средства разработки dBASE IV для создания клиентских приложений, способных работать с новым SQL Server. Новая клиент-серверная модель должна была дать возможность dBASE выйти на новый уровень производительности, предоставив возможность работать с данными гораздо большему количеству пользователей, чем это могла позволить распространённая на тот момент модель работы с общими файлами.

Первая бета-версия Ashton-Tate/Microsoft SQL Server была выпущена осенью 1988 года. Microsoft продавала её по номинальной стоимости разработчикам, желавшим изучать и в дальнейшем работать с новым продуктом. Продукт поставлялся как набор инструментов, именуемый NDK (от англ. network development kit, набор инструментов для сетевой разработки). Данный набор содержал все необходимые программные компоненты (ориентированные на разработку на языке Си) для разработки сетевых приложений, способных работать с клиент-серверной моделью. В частности, в набор входили предрелизные версии SQL Server, Microsoft LAN Manager, and OS/2 1.0. NDK обладал большим количеством ошибок и недостатков, тем не менее он работал на домашних компьютерах (с процессором, например, Intel 80286 с частотой 10МГц, 6 Мб оперативной памяти и жёстким диском объёмом 50 Мб).

В мае 1989 года начались поставки Ashton-Tate/Microsoft SQL Server 1.0. Профильная пресса отзывалась достаточно положительно о новом продукте, тем не менее продажи были весьма невыскоими. Кроме того, разочаровывали и продажи OS/2, поскольку многие пользователи не пожелали переходить с MS-DOS на OS/2. Картину довершала возможность создавать приложения для SQL Server лишь на языке Си, поскольку выход обещанного dBASE IV Server Edition от Ashton-Tate был отложен, и аналогичная ситуация была и со сторонними разработчиками инструментов для SQL Server.

К 1990 году ситуация лучше не стала. Планы по совместному продвижению продукта, в результате чего SQL Server должен был завоевать позиции в большом сообществе dBASE-разработчиков, провалились. Несмотря на перенос сроков выхода десктопной версии dBASE IV (вышла в 1989 году), она всё же содержала большое количество ошибок, благодаря чему заслужила дурную репутацию. Серверная версия (Server Edition), которая должна была упростить разработку высокопроизводительных приложений для SQL Server так и не вышла. Разработка приложений в dBASE для SQL Server стала представлять собой проблему, поскольку разработка однопользовательского запись-ориентированного прилоежния кардинально отличалась от разработки многопользовательских приложений, для которых нужно ещё было решать возникающие проблемы с параллельным выполнением задач, корректной параллельной работой с данными, а также невысокой пропускной способностью тогдашних локальных сетей. Первые попытки соединить инструменты dBASE с SQL Server приводили к неэффективной совместной работе этих продуктов (так, например, построчный запрос данных превращался в проблему, а курсоров с произвольным переходом по строкам тогда ещё не существовало).

В результате, Ashton-Tate, двумя годами ранее занимавшая лидирующие позиции на рынке СУБД для домашних ПК, ныне была вынуждена бороться за своё существование, что в свою очередь вынудило её вновь переключиться на свой основной продукт dBASE. Microsoft же тем временем запустила в продажу OS/2 LAN Manager под собственной торговой маркой (тогда как изначально планировалось лишь поставлять OEM-версии), и ей необходимо было, чтобы SQL Server помог заложить фундамент для разработки клиент-серверных инструментов, способных работать с Microsoft LAN Manager и Microsoft OS/2. Всё это привело к принятию решения о прекращении совместного продвижения SQL Server, после чего данный продукт был немного изменён и представлен уже как Microsoft SQL Server.

[править] SQL Server 1.1 (1990)

Microsoft SQL Server 1.1 вышел летом 1990 года как обновление для Ashton-Tate/Microsoft SQL Server 1.0, продававшегося в 1989 году. Новая версия начала продаваться через недавно сформированную сеть сбыта (Microsoft Network Specialist channel), главной задачей которой до этого была продажа Microsoft LAN Manager. На момент выхода версии 1.1 Microsoft всё ещё не рассматривала SQL Server как продукт, способный приносить прибыль сам по себе — именно по этому он являлся лишь одним из приложений к LAN Manager. Возможности SQL Server 1.1, в целом, были аналогичны возможностям версии 1.0, но при этом новая версия содержала множество исправлений ошибок, проявлявшихся в версии 1.0. Кроме того, SQL Server 1.1 поддерживал ещё и новую клиентскую платформу - Microsoft Windows 3.0, поставки которой начались в мае 1990 года и вызывали ощутимую реакцию в компьютерной индустрии. SQL Server 1.1 поддерживал интерфейс, позволявший приложениям, ориентированным на Windows 3.0, эффективно работать с СУБД. Ещё одной проблемой был чрезвычайно маленький объём оперативной памяти (50 Кбайт), которые получал разработчик при использовании статических библиотек DB-Library, шедших в комплекте с SQL Server 1.0. В комплекте с SQL Server 1.1 поставлялся полностью переписанный Microsoft интерфейс работы с памятью, предоставлявший разработчикам уже 250 Кбайт для их приложений. Такая ранняя и полная поддержка приложений для Windows 3.0 обусловила и успех Microsoft SQL Server, а кроме того очевидный успех Windows как платформы также потребовал изменений как в SQL Server, так и в самой Microsoft. В частности, команда в Microsoft, занимавшаяся портированием чужого продукта, перешла к полноценному тестированию и проект-менеджменту, а затем - и к разработке собственных инструментов для облегчения установки и администрирования SQL Server.

К началу 1991 года уже несколько десятков сторонних сторонних программных продуктов могли работать с SQL Server. Значительную роль в этом сыграла поддержка со стороны SQL Server динамических библиотек, реализованных в Windows 3.0, причём в SQL Server была реализована эта поддержка практически с самого начала продаж Windows 3.0. Благодаря этому Microsoft SQL Server планомерно начал завоевывать позиции лидера среди СУБД, ориентированных на Windows-платформу. Тем не менее, несмотря на улучшение ситуации, всё ещё актуальной оставалась проблема с наличием инструментов, поддерживающих разработку на языках, отличных от Си.

Вместе с SQL Server 1.1 Microsoft поставляла клиентское ПО и утилиты, программные бибилиотеки, а также инструменты для администрирования. При этом движок SQL Server по-прежнему писался компанией Sybase, тогда как у Microsoft не было даже доступа к исходному коду. Подобная модель предусматривала, что для выполнения каких-либо запросов на изменение в функционале SQL Server (в том числе и для исправления ошибок) Microsoft должна была направлять эти запросы Sybase, которая и вносила соответствующие изменения. Microsoft же стремилась к созданию полноценной и самостоятельной команды поддержки SQL Server, для чего нанимала на работу инженеров, имевших опыт работы с базами данных. Но, не имея доступа к исходному коду, команда столкнулась с невозможностью решать критичные для клиентов вопросы поддержки продукта. Кроме этого существовала проблема с зависимостью Microsoft от Sybase в вопросах исправления ошибок в продукте, следствием чего являлась недостаточная скорость исправления Sybase критичных ошибок, заявленных Microsoft.

В начале 1991 года Microsoft и Sybase достигли соглашения, согласно которому первая получала доступ к исходному коду SQL Server, но исключительно в режиме чтения (т.е. без возможности вносить изменения). Это соглашение дало возможность команде, занимавшейся поддержкой продукта (т.н. англ. SQL Server group), читать код для лучшего понимания логики работы продукта в каких-либо неочевидных ситуациях. Помимо этого, Microsoft, воспользовавшись удобным случаем, собрала небольшую команду разработчиков, которые занялись изучением исходного кода SQL Server. Эта группа занималась построчным исследованием кода в тех частях программы, где было подозрение на наличие ошибки, и делала "виртуальные исправления ошибок" (поскольку возможности вносить изменения в код SQL Server у них по-прежнему не было). Однако, когда подобные отчеты с разбором исходного кода стали направляться в Sybase, то исправление критичных для Microsoft ошибок, стало происходить существенно быстрее. Спустя несколько месяцев в подобном режиме работы, в середине 1991 года Microsoft наконец-то получила возможность исправлять ошибки напрямую в коде. Но поскольку исходный код продукта по-прежнему контролировала Sybase, то все изменения в коде предварительно отправлялись ей на проверку. В итоге, разработчики Microsoft стали экспертами по коду SQL Server, что позволило с одной стороны улучшить его поддержку, а с другой - больше внимания уделять его качеству.

[править] SQL Server 1.11 (1991)

Схема работы Microsoft SQL Server 1.11 в локальной сети Netware при помощи Microsoft Named Pipes API и стека протоколов Netware IPX/SPX

В 1991 году Microsoft выпустила промежуточную версию — SQL Server 1.11. Данный выпуск был обусловлен тем, что список пользователей к тому моменту уже значительно расширился. Несмотря на то, что клиент-серверная архитектура по-прежнему не была широко распространенной, клиенты всё же постепенно переходили на неё. Но, несмотря на положительную критику от профильной прессы, продажи SQL Server по-прежнему оставляли желать лучшего. По большей части это было связано с провалом OS/2. Пользователи домашних ПК вместо ожидаемого перехода с MS-DOS на OS/2 предпочитали переходить на Windows 3.0. Как следствие, продажи Windows 3.0 были весьма высоки.

Как писал журнал InfoWorld в конце июля 1991 года, Microsoft при анонсе новой версии SQL Server делала упор на улучшенную работу с сетью и новое Windows-приложение для администрирования БД. В частности, Microsoft обещала в течение года предоставить копию утилиты SQL Commander для зарегистрированных пользователей SQL Server для OS/2. Инструмент под названием SQL Commander был представлен ранее, в мае 1990 года компанией Datura Corp. (ранее известной как Strategic Technologies Group). Данная утилита упрощала администраторам БД управление аккаунтами пользователей, индексами таблиц, триггерами и сложными запросами. Однако, как отмечали критики, данный инструмент практически полностью совпадал по функционалу с другой утилитой от Microsoft — Server Administration Facility tool, поставлявшейся в комплекте с SQL Server. Кроме того, в SQL Server 1.11 была добавлена поддержка инструментов для администрирования сетей Novell, новейший на тот момент инструмент OS/2 Requester 1.3 и детальная техническая документация для пользователей продукции Novell. Улучшение работы с сетью включало в себя улучшение работы с сетями фирмы Novell, добавленную поддержку протоколов Banyan VINES 4.10, а также клиентское взаимодействие с Sybase SQL Server на UNIX- или VMS-машинах. Изменения затронули и лицензионную политику: версия для 5 пользователей была заменена на десятипользовательскую версию, а пользователи SQL Server 1.1 с неограниченным количеством пользователей могли получить версию 1.11 бесплатно[1].

Но с другой стороны, SQL Server 1.11 обладал весьма ощутимыми ограничениями, в том числе и масштабируемости. Это был 16-битный продукт, поскольку OS/2 поддерживала лишь 16-битное адресное пространство для приложений, а его производительность была ограничена отсутствием механизмов высокой производительности в самой OS/2, как например, асинхроного ввода-вывода. Несмотря на то, что SQL Server на OS/2 на тот момент мог справиться с большинством задач, тем не менее существовал некий предел, после которого сервер просто начинал «захлёбываться». Чётко установленной границы не существовало, но SQL Server на OS/2 использовался для рабочих групп, численностью до 50 человек. Для более крупных групп существовала версия Sybase SQL Server для высокопроизводительных систем на базе ОС UNIX или VMS. И вот здесь как раз и проходила граница продаж между Microsoft и Sybase. Клиенты, выбирающие продукт от Microsoft хотели быть уверены, что их запросы не «перерастут» его. Большое число программных инструментов, разработанных для Microsoft SQL Server, работали без серьёзных доработок с Sybase SQL Server, а приложения, запросы которых уже не могли быть удовлетворены OS/2, легко могли быть перенесены на более мощную UNIX-систему. Подобная взаимосвязь была выгодна обеим компаниям, поскольку большое число программных инструментов для Microsoft SQL Server как правило без проблем работало и с Sybase SQL Server, а приложения, которым производительности OS/2 уже было недостаточно, легко работали и с UNIX-серверами.

[править] SQL Server 4.2 (1992)

Тем временем конкуренция на рынке СУБД постепенно росла равно как и требования клиентов к выбираемому ими ПО, результатом чего при разработке следующей версии SQL Server для Microsoft на первый план вышли вопросы совместимости и взаимодействия, а также необходимость реализации нового функционала, дабы удовлетворить запросы клиентов. Поскольку новая версия продукта нужна была как можно быстрее, то Microsoft вскоре после выхода версии SQL Server 1.11 приступила к разработке следующей версии.

Однако возник вопрос о следующем номере новой версии. Дело в том, что параллельно с продажами Microsoft SQL Server 1.0 велись продажи и Sybase SQL Server 3.0, который привнес некоторые весьма используемые механизмы на рынок СУБД для ПК, как например, типы данных text и image, а также режим просмотра данных (англ. browse mode). И следующей версией Sybase SQL Server стала версия 4.0 для наиболее распространённых платформ, и версия 4.2 — для менее распространённых. Таким образом, разработка новой версии Microsoft SQL Server фактически велась на базе исходного кода Sybase SQL Server 4.2. Соответственно, для маркетинговых целей новая версия Microsoft SQL Server также получила номер 4.2.

Однако, ещё в мае 1991 года Microsoft и IBM объявили о прекращении совместной разработки OS/2, поскольку к тому времени уже стало очевидным, что пользователи предпочитали Windows, а не OS/2. Таким образом, Microsoft решила сосредоточиться на дальнейшем развитии Windows, равно как и на ПО для них. К этому времени Microsoft уже вела разработку новой версии ОС на базе микроядра под кодовым названием NT (сокр. от англ. new technology — «новая технология»). Изначально предполагалось, что это будет новая версия OS/2 (иногда даже упоминалась как OS/2 3.0). После прекращения совместной разработки проект было решено переориентировать на Windows, то есть добавить пользовательский интерфейс в стиле Windows и программный интерфейс Win32 API, в результате чего проект получил новое название — Microsoft Windows NT.

Согласно имевшимся на тот момент планам, первая версия Windows NT должна была выйти не ранее чем через 2 года, а Microsoft SQL Server в конечном счёте должен был быть перенесён на Windows NT, что выглядело как не самый разумный ход. Однако, при всём при этом Microsoft приходилось поддерживать и разработку SQL Server для OS/2, при том что OS/2 теперь была по сути конкурентным продуктом для самой же Microsoft. Microsoft же пошла на это, поскольку альтернативы у неё на тот момент не было.

Microsoft разрабатывала SQL Server 4.2 для грядущей OS/2 2.0, первой 32-битной версии OS/2. Поскольку SQL Server 4.2 должен был стать 32-битным, то его портирование с линейки для UNIX представлялось более простым, поскольку в этом случае проблема с сегментацией памяти не была насущной. Теоретически, 32-битный SQL Server должен был стать и более производительным. В прессе появлялось множество статей, посвящённых сравнению производительности на 16- и 32-битных платформах, и практически все авторы были уверены, что переход на 32-битность даст существенный прирост производительности (хотя в некоторых статьях и приводилось уточнение, при каких условиях это будет (или не будет) именно так). В качестве главного источника прироста производительности рассматривалась адресация памяти. Для её выполнения в 16-битном сегментированном адресном пространстве OS/2 линейки 1.x требовались как минимум 2 инструкции: первая инструкция загружала нужный сегмент памяти, сторая — загружала нужный адрес в данном сегменте. При 32-битной адресации отпадала необходимость в инструкции для загрузки сегмента, и таким образом память могла адресоваться лишь одной инструкцией. Согласно некоторым расчётам, благодаря этому потенциальный общий прирост производительности мог составить до 20 %.

На тот момент множество людей ошибочно полагало, что SQL Server должен быть запущен на полноценной 32-битной платформе, чтобы иметь возможность адресовать более 16 Мб памяти. Будучи запущенным на OS/2 1.x, приложение получало доступ лишь к 16 Мб реальной памяти. И хотя там была возможность получить более 16 Мб виртуальной памяти, но тогда начинала оказывать свое негативное влияние подкачка страниц. В OS/2 2.0 приложение могло адресовать более 16 Мб памяти и при этом избежать её подкачки. В свою очередь, это позволяло SQL Server иметь большой кэш и получать все необходимые данные из памяти быстрее, чем с диска, что очень положительно влияло на прирост производительности.

[править] Ключевые разработчики

  • Чжаохуэй Тан (англ. Zhaohui Tang) — работал ведущим менеджером по программам в команде Microsoft SQL Server Data Mining. В Microsoft пришёл в 1999 году, работал над проектированием возможностей data mining в SQL Server 2000 и SQL Server 2005[2].
  • Джейми МакЛеннан (англ. Jamie MacLennan) — руководил разработкой движка Data Mining Engine в SQL Server. В Microsoft пришёл в 1999 году, занимался проектированием и реализацией функционала data mining совместно с подразделением Microsoft Research[2].

[править] Функциональность

Сервер баз данных Microsoft SQL Server в качестве языка запросов использует версию языка SQL, получившую название Transact-SQL (сокращённо T-SQL). Язык T-SQL является реализацией SQL-92 (стандарт ISO для языка SQL) с множественными расширениями. T-SQL позволяет использовать дополнительный синтаксис для хранимых процедур и обеспечивает поддержку транзакций (взаимодействие базы данных с управляющим приложением).

При взаимодействии с сетью Microsoft SQL Server и Sybase ASE используют протокол уровня приложения под названием Tabular Data Stream (TDS, протокол передачи табличных данных). Протокол TDS также был реализован в проекте FreeTDS с целью обеспечить различным приложениям возможность взаимодействия с базами данных Microsoft SQL Server и Sybase.

Для обеспечения доступа к данным Microsoft SQL Server поддерживает Open Database Connectivity (ODBC) — интерфейс взаимодействия приложений с СУБД. Версия SQL Server 2005 обеспечивает возможность подключения пользователей через веб-сервисы, использующие протокол SOAP. Это позволяет клиентским программам, не предназначенным для Windows, кроссплатформенно соединяться с SQL Server. Компания Microsoft также выпустила сертифицированный драйвер JDBC, позволяющий приложениям под управлением Java (таким как BEA и IBM WebSphere) соединяться с Microsoft SQL Server 2000 и 2005.

Также SQL Server поддерживает зеркалирование и кластеризацию баз данных. Кластер сервера SQL — это совокупность одинаково конфигурированных серверов; такая схема помогает распределить рабочую нагрузку между несколькими серверами. Все сервера имеют одно виртуальное имя, и данные распределяются по IP-адресам машин кластера в течение рабочего цикла. Также в случае отказа или сбоя на одном из серверов кластера доступен автоматический перенос нагрузки на другой сервер.

SQL Server поддерживает избыточное дублирование данных по трем сценариям:

  • Снимок: Производится «снимок» базы данных, который сервер отправляет получателям.
  • История изменений: Все изменения базы данных непрерывно передаются пользователям.
  • Синхронизация с другими серверами: Базы данных нескольких серверов синхронизируются между собой. Изменения всех баз данных происходят независимо друг от друга на каждом сервере, а при синхронизации происходит сверка данных. Данный тип дублирования предусматривает возможность разрешения противоречий между БД.

В SQL Server 2005 встроена поддержка .NET Framework. Благодаря этому хранимые процедуры БД могут быть написаны на любом языке платформы .NET, используя полный набор библиотек, доступных для .NET Framework, включая Common Type System (система обращения с типами данных в Microsoft .NET Framework). Однако, в отличие от других процессов, .NET Framework, будучи базисной системой для SQL Server 2005, выделяет дополнительную память и выстраивает средства управления SQL Server вместо того, чтобы использовать встроенные средства Windows. Это повышает производительность в сравнении с общими алгоритмами Windows, так как алгоритмы распределения ресурсов специально настроены для использования в структурах SQL Server.

[править] Разработка приложений

Microsoft и другие компании производят большое число программных средств разработки, позволяющих разрабатывать бизнес-приложения с использованием баз данных Microsoft SQL Server. Microsoft SQL Server 2005 включает в себя также Common Language Runtime (CLR) Microsoft .NET, позволяющий реализовывать хранимые процедуры и различные функции приложениям, разработанным на языках платформы .NET (например, VB.NET или C#). Предыдущие версии средств разработки Microsoft использовали только API для получения функционального доступа к Microsoft SQL Server.

[править] SQL Server Express Edition

Microsoft SQL Server Express является бесплатно распространяемой версией SQL Server, развитием системы MSDE. Данная версия имеет некоторые технические ограничения. Такие ограничения делают её непригодной для развертывания больших баз данных, но она вполне годится для ведения программных комплексов в масштабах небольшой компании. Содержит полноценную поддержку новых типов данных, в том числе XML-спецификации. Фактически, это полноценный MS SQL Server, включая все его компоненты программирования, поддержку национальных алфавитов и Unicode. Поэтому используется в приложениях, при проектировании или для самостоятельного изучения. Нет никаких препятствий для дальнейшего развёртывания накопленной базы данных на более функциональных типах Microsoft SQL Server. В 2007 году Microsoft выпустила отдельную утилиту с графическим интерфейсом для администрирования данной версии, которая также доступна для бесплатного скачивания с сайта корпорации.

Ограничения
  • 1 поддерживаемый процессор (но может быть установлен на любой сервер)
  • 1 Гб адресуемой памяти
  • 4 Гб максимальный размер базы (10 Гб для версий SQL Server 2008 R2 и SQL Server 2012 RC0)
  • Через интерфейс SQL Server Management Studio 2005 нет возможности экспорта/импорта данных (в версиях 2008 и 2012 эта возможность присутствует)

[править] Версии для Windows

Основная статья: Список версий Microsoft SQL Server

[править] Релизы

  • 1992 — SQL Server 4.2
  • 1993 — SQL Server 4.21 под Windows NT
  • 1995 — SQL Server 6.0, кодовое название SQL95
  • 1996 — SQL Server 6.5, кодовое название Hydra
  • 1998 — SQL Server 7.0, кодовое название Sphinx
  • 1999 — SQL Server 7.0 OLAP, кодовое название Plato
  • 2000 — SQL Server 2000 32-bit, кодовое название Shiloh (версия 8.0)
  • 2003 — SQL Server 2000 64-bit, кодовое название Liberty
  • 2005 — SQL Server 2005, кодовое название Yukon (версия 9.0)
  • 2008 — SQL Server 2008, кодовое название Katmai (версия 10.0)
  • 2010 — SQL Server 2008 R2, (версия 10.5)
  • 2011 — SQL Server 2012 RC0 кодовое название Denali (версия 11.0.1750.32)
  • 2012 — SQL Server 2012

[править] SQL Server 2000

  • Enterprise Edition
  • Standard Edition
  • Personal Edition
  • Developer Edition
  • Desktop Engine
  • Windows CE Edition

[править] SQL Server 2005

Версии:

  • Enterprise Edition
  • Standard Edition
  • Workgroup Edition
  • Developer Edition
  • Express Edition
    • SQL Server Express with Tools
    • SQL Server Express with Advanced Services
  • Mobile Edition
  • Compact Edition

Утилиты:

[править] SQL Server 2008

Последняя версия SQL Server — SQL Server 2008 R2. Была выпущена 21 апреля 2010 года.

Версии:

  • Express Edition (бесплатная)
  • Web Edition
  • Workgroup Edition
  • Standard Edition
  • Developer Edition (по функциональным возможностям совпадает с Enterprise Edition, но лицензия накладывает дополнительные эксплуатационные ограничения)
  • Enterprise Edition
  • Compact Edition

Для второго выпуск (R2) также доступные следующие расширенные по функциональным возможностям (по сравнению с Enterprise) редакции:

  • Datacenter
  • Parallel Data Warehouse

SQL Server 2008 направлен на то, чтобы сделать управление данными самонастраивающимся, самоорганизующимся и самообслуживающимся механизмом — для реализации этих возможностей были созданы технологии SQL Server Always On. Это позволит уменьшить до нуля время нахождения сервера в нерабочем состоянии.

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

Кроме этого, были включены специализированные форматы даты и времени и пространственный (англ. Spatial) тип для пространственно зависимых данных. Для неструктурированных данных были добавлены специализированные типы, например, тип File.

Для повышения эффективности администрирования в SQL Server были включены библиотеки Declarative Management Framework, позволяющие распределять полномочия для баз данных или отдельных таблиц. Были улучшены методы компрессии данных. SQL Server Katmai поддерживает набор библиотек ADO.NET Entity Framework и средства оповещения, репликации и определения данных.

[править] См. также

[править] Примечания

  1. Scott Mace SQL Server sports better LAN supports. Microsoft offers SQL Commander. // InfoWorld : журнал. — США: InfoWorld Media Group, Inc., 1991. — Т. 13. — № 30. — С. 33. — ISSN 0199-6649.
  2. 1 2 Author Information  (англ.)

[править] Литература

[править] Ссылки

Личные инструменты
Пространства имён

Варианты
Действия
Навигация
Участие
Печать/экспорт
Инструменты
На других языках