Microsoft SQL Server

Поделись знанием:
Перейти к: навигация, поиск
Microsoft SQL Server
Тип

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

Разработчик

Sybase,
Ashton-Tate,
Microsoft

Написана на

C, C++, C#

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

UNIX,
OS/2,
Windows

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

SQL Server 2014 (22 мая 2014 год)

Лицензия

Microsoft EULA

Сайт

[www.microsoft.com/sqlserver/en/us/default.aspx rosoft.com/sqlserver/en/us/default.aspx]

К:Википедия:Статьи без изображений (тип: не указан)

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

История выпусков SQL Server
Версия Год Название Кодовое имя
1.0 (OS/2) 1989 SQL Server 1.0 (16 bit) Ashton-Tate / MS SQL Server
1.1 (OS/2) 1991 SQL Server 1.1 (16 bit) -
4.21 (WinNT) 1993 SQL Server 4.21 SQLNT
6.0 1995 SQL Server 6.0 SQL95
6.5 1996 SQL Server 6.5 Hydra
7.0 1998 SQL Server 7.0 Sphinx
- 1999 SQL Server 7.0 OLAP Tools Palato mania
8.0 2000 SQL Server 2000 Shiloh
8.0 2003 SQL Server 2000 64-bit Liberty
9.0 2005 SQL Server 2005 Yukon
10.0 2008 SQL Server 2008 Katmai
10.25 2010 Azure SQL DB Cloud Database or CloudDB
10.50 2010 SQL Server 2008 R2 Kilimanjaro (aka KJ)
11.0 2012 SQL Server 2012 Denali
12.0 2014 SQL Server In-Memory OLTP Hekaton
14 2016 SQL Server 2016




Предыстория (по 1986)

Развитие клиент-серверных технологий во второй половине 80-х было обусловлено развитием двух ключевых направлений, активно разрабатываемых с конца 70-х годов: персональных компьютеров с одной стороны, и компьютерных сетей — с другой. Долгое время СУБД были доступны лишь для мэйнфреймов, и лишь благодаря росту производительности процессоров для домашних компьютеров и мини-ЭВМ разработчики СУБД (как, например, Oracle) начали создавать соответствующие версии своих продуктов. Одной из первых СУРБД для ПК стала Oracle v3, выпущенная в 1983 году. На тот момент немногочисленные владельцы ПК использовали их в основном для разработки приложений и тестирования[1].

Одним из ключевых этапов в развитии СУБД стал 1986 год. К этому времени появилось еще несколько компаний-разработчиков СУБД, одной из самых заметных из них стала компания Sybase, основанная двумя годами ранее. К 1986 году Sybase начала комплектовать интеллектуальные рабочие станции (как правило, разработки Sun Microsystems или Apollo Computer) с серверами базы данных (разработанных, например, Oracle). При этом сама клиент-серверная технология сделала возможным отделение модулей обработки информации (т. н. back end) от модулей интерфейса (т. н. front end). Учтя постоянный рост проникновения компьютерных сетей, поставщики решений перешли к задачам распределения остальных задач (например, форматирование отчётов, проверка данных и т. д.) среди рабочих станций сети, оставив серверу выполнять лишь задачи, требующие централизованного решения (хранение и защита данных, оптимизация потока выполнения запросов и т. д.)[1].

Существенную роль в переходе от иерархических БД к реляционным сыграли и сами разработчики СУБД. Так, IBM к этому времени уже постепенно переводила своих клиентов с иерархических СУБД (как, например, IMS) на СУРДБ DB2 и SQL/DS. Новые СУБД хотя и уступали в скорости IMS, но превосходили её в легкости программирования и обслуживания. Поставки DB2 быстро превзошли ожидания, захватив значительную долю рынка в первый же год продаж. В сентябре 1986 года Gupta Technologies представила свою разработку SQL Base, заключающую в себе концепт сервера базы данных для ПК, объединённых в сеть. Также Gupta одной из первых реализовала прозрачный доступ к мэйнфреймам IBM с запущенными на них DB2, предоставив прямой доступ к хранившимся там данным без необходимости скачивания файлов или таблиц на рабочую станцию пользователя[1].

К концу 1986 года использование языка SQL в качестве основного для работы с данными в СУБД стало практически повсеместным. IBM, Oracle, Sybase и Gupta использовали схожий синтаксис языка SQL для отправки сообщений от клиентской части СУБД (front end) к серверной (back end), что позволяло сочетать клиентские и серверные части разных производителей. В том же году Американский национальный институт стандартов утвердил версию языка SQL в качестве международного стандарта обработки данных, что поставило под угрозу благополучие СУБД, не обладавших поддержкой языка SQL. Так, например, компания Cullinet хотя и анонсировала поддержку языка SQL в своих СУБД для мини-компьютеров, но из-за задержки в её реализации потеряла свою долю рынка СУБД, уступив IBM и её продукту DB2[1].

Первые шаги (1985—1987)

К этому моменту все имевшиеся у Microsoft разработки были ориентированы исключительно на домашние компьютеры, а её самым прибыльным продуктом являлась операционная система MS-DOS. Клиент-серверная обработка данных на персональных компьютерах к 1986 году только набрала популярность и по этой причине лежала вне интересов компании К:Википедия:Статьи без источников (тип: не указан)[источник не указан 4360 дней]. Годом ранее, в июне 1985 года, IBM и Microsoft подписали соглашение о совместной разработке (англ. Joint Development Agreement, сокр. JDA), содержащее лишь общие положения о будущей кооперации. В августе 1985 года JDA был дополнен документом под кодовым обозначением «Этап II» (англ. Phase II), содержавшим в себе планы по разработке OS/2. На тот момент продукт указывался как CP/DOS (англ. Control Program/DOS в соответствии с политикой именования продуктов IBM для мэйнфреймов, Microsoft же указывала продукт как DOS 5. В конце 1986 — начале 1987 года проект был официально переименован в OS/2 для придания схожести названия с линейкой компьютеров IBM PS/2[2].

2 апреля 1987 года OS/2 была анонсирована (версия 1.0 согласно пресс-релизу должна была выйти в первом квартале 1988 года, но в конечном итоге была выпущена в декабре 1987 года)[2]. Согласно заявленным в апреле 1987 года планам, IBM планировала добавить функциональность СУБД в OS/2, причём с использованием концепции, разработанной компанией Gupta Technologies, и заключающуюся в отправке персональным компьютером SQL-запросов к хосту через сетевые маршрутизаторы и возврате в качестве ответа лишь результатов выполнения запроса. Несмотря на то, что на протяжении уже нескольких лет разработчики ОС включали некоторые функции СУБД в свои продукты, идея IBM о реализации полноценной СУБД, встроенной в ОС, заставила многих менеджеров пересмотреть свою точку зрения на ПК как подходящую платформу для реализации многопользовательских приложений и концепции клиент-серверной технологии[1].

Вскоре после объявления, IBM анонсировало ещё и специальную, усовершенствованную версию этой ОС — OS/2 Extended Edition. Эта версия должна была комплектоваться с СУБД OS/2 Database Manager и несколькими другими сетевыми и серверными решениями. И хотя Database Manager был более ориентирован на мейнфреймы, а не на персональные компьютеры, тем не менее, на базе их общей разработки IBM могла предложить покупателям более выгодный продукт, нежели конкуренты. Необходимость в собственных разработках в области управления базами данных стала для 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 (1988—1989)

Разработка

13 января 1988 года в Нью-Йорке состоялась пресс-конференция, на которой было объявлено о союзе Ashton-Tate и Microsoft для разработки нового продукта, получившего название Ashton-Tate/Microsoft SQL Server. В этот же день был выпущен совместный пресс-релиз с анонсом нового продукта, основанного на разработках Sybase. Предварительной датой выхода продукта указывалась вторая половина 1988 года[3]. Что касается ролей компаний в разработке и продвижении продукта, то согласно пресс-релизу Ashton-Tate должна была отвечать за контроль разработки в области баз данных (а также предоставить собственные разработки в этой области), а Microsoft же была отведена аналогичная роль в области технологий для работы в локальных сетях. После выхода SQL Server Ashton-Tate должна была получить лицензию на продукт у Microsoft и заняться розничными продажами по всему миру (как в виде отдельного продукта, так и в комплекте с будущими версиями dBASE), а Microsoft — поставлять продукт для OEM-производителей аппаратного обеспечения[4].

SQL Server уже сразу позиционировался как реляционная СУБД с поддержкой языка SQL и возможностью работы по локальной сети. Кроме того, была заявлена поддержка совместной работы SQL Server с dBASE или любым другим ПО для рабочей станции. Большой упор делался на клиент-серверную архитектуру продукта, благодаря которой должны были разделиться функции клиентского приложения (англ. front-end), в котором пользователи будет видеть нужные ему данные, и серверной части (англ. back-end) в которой эти данные будут храниться. Также Ashton-Tate и Microsoft заявляли о «трёх главных новшествах в области технологий реляционных баз данных»: поддержка хранимых процедур, компилируемых SQL Server и благодаря которым будет «значительно ускорена» выборка данных, а также поддерживаться целостность данных при работе в многопользовательской среде. Вторым новшеством была заявлена постоянная доступность ядра (не прерывая действий пользователей) для административных задач, таких как создание резервных копий данных (бэкап) и их восстановлений. Третьим новшеством была заявлена поддержка технологии, выполняющей роль моста между системами обработки онлайн-транзакций и базами данных на ПК. Сам же SQL Server должен был быть основан на архитектуре «открытой платформы», что дало бы возможность сторонним разработчикам ПО создавать прикладные программы, использующие сетевые и многопользовательские возможности SQL Server. При этом Билл Гейтс, на тот момент являвшийся председателем совета директоров Microsoft, назвал сеть «самой важной вычислительной платформой для новых и инновационных прикладных программ». Запускаться SQL Server должен был на любых сетевых серверах на базе OS/2, включая Microsoft OS/2 LAN Manaqer и IBM LAN Server, а взаимодействовать должен был с рабочими станциями под управлением OS/2, PC-DOS или MS-DOS[4].

Ashton-Tate рассматривала SQL Server как возможность завоевания рынка СУБД для домашних компьютеров, не отказываясь при этом от дальнейшего развития dBASE. При этом оба продукта должны были предлагаться и корпоративным заказчикам. Microsoft рассчитывала на продвижение SQL Server как основу транзакционно-ориентированных систем, включая различные системы учёта, библиотеки документов, системы управления исследованиями и другие. Для продвижения нового продукта обеими компаниями был намечен ряд различных семинаров и конференций, первой из которых стала конференция Microsoft Advanced Network Development Conference, назначенная на 30 марта-1 апреля в Сан-Франциско и 13-15 апреля в Нью-Йорке[4].

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 была выпущена 31 октября 1988 года в составе набора инструментов для сетевой разработки SQL Server Network Developer’s Kit (сокр. MDK). Данный набор содержал предрелизную версию SQL Server, документацию, программные библиотеки прикладного интерфейса для SQL Server, а также [en.wikipedia.org/wiki/LAN_Manager Microsoft OS/2 LAN Manager]. Программные библиотеки были предназначены для компиляции (компилятором языка Си от самой Microsoft) MS-DOS-, Windows- или OS/2-приложений, предназначенных для работы с SQL Server по локальной сети. Набор продавался исключительно для разработки ПО, но при этом к нему прилагался специальный купон, позволявший покупателям обновить версию SQL Server до полноценной после её выхода[5].

MDK продавался напрямую Ashton-Tate на территории США и Канады (а также Microsoft на территории США) по сниженной цене. Microsoft при этом предлагала существенную скидку разработчикам, которые уже приобрели набор инструментов Microsoft OS/2 Software Developer’s Kit или посетили одну из конференций Microsoft Advanced Network Development Conference. В свою очередь, Ashton-Tate также предлагала аналогичную скидку разработчикам, посетившим в 1988 году конференцию Ashton-Tate Developer’s Conference[5].

MDK обладал большим количеством ошибок и недостатков, тем не менее он работал на домашних компьютерах (с процессором, например, Intel 80286 с частотой 10МГц, 6 Мб оперативной памяти и жёстким диском объёмом 50 Мб).

Выход

29 апреля 1989 года началась официальная продажа Ashton-Tate/Microsoft SQL Server 1.0. Члены команды, занимавшейся SQL Server, на специальном мероприятии по сертификации команд, проходившем в Торрансе, надели майки с надписью «Ashton-Tate SQL Server: сделал вовремя и горжусь этим» (англ. Ashton-Tate SQL Server: On-Time and Proud of it)[3].

Тесты журнала Infoworld показывали, что Ashton-Tate/Microsoft SQL Server 1.0 даже при работе в сети с 24 рабочими станциями справлялся с нагрузкой быстрее, чем обычная база данных с многопользовательским режимом (наиболее распространённый тип БД на тот момент), а при использовании хранимых процедур удавалось достичь скорости отклика менее двух секунд. Также журналисты отмечали лёгкость и удобство написания тестового кодаК:Википедия:Статьи без источников (тип: не указан)[источник не указан 4363 дня].

Профильная пресса отзывалась достаточно положительно о новом продукте, тем не менее продажи были весьма невысокими. Кроме того, разочаровывали и продажи OS/2, поскольку многие пользователи не пожелали переходить с MS-DOS на OS/2. Картину довершала возможность создавать приложения для SQL Server лишь на языке Си, поскольку выход обещанного dBASE IV Server Edition от Ashton-Tate был отложен, и аналогичная ситуация была и со сторонними разработчиками инструментов для SQL ServerК:Википедия:Статьи без источников (тип: не указан)[источник не указан 4383 дня]. Кроме того, свою роль сыграла и конкуренция: на рынке СУБД для ПК-платформ к этому времени уже существовали XDB от компании XDB, SQLBase от Gupta Technologies и OS/2 Extended Edition (в однопользовательском режиме) от IBM[3].

К 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)

Ещё до выхода версии 1.1 официальные представители Microsoft (в отличие от независимых аналитиков) предсказывали резкий рост продаж новой версии продукта, однако их надежды не оправдались. Microsoft SQL Server 1.1 вышел в августе 1990 года как обновление и замена для Ashton-Tate/Microsoft SQL Server 1.0, продававшегося в 1989 году[6]. На момент выхода версии 1.1 Microsoft всё ещё не рассматривала SQL Server как продукт, способный приносить прибыль сам по себе — именно поэтому он являлся лишь одним из приложений к LAN Manager (Microsoft даже начала создавать для партнёров каналы продаж обоих продуктов, хотя ранее никогда не занималась продажами в розницу решений для ЛВС). Положительную роль должен был сыграть скорый выход клиентских приложений (англ. front ends) от Borland и DataEase International (англ.), тем более, что в течение года ожидалась ещё несколько подобных решений (на тот момент их условно называли «вторым поколением»). Но при этом, не менее важная часть SQL Server — пакет устанавливаемых протоколов — всё ещё находился в разработке. TCP/IP-версия библиотеки Net-Library, первая из данного пакета, всё ещё находилась на этапе альфа-тестирования, а её DEC-NET- и SPX-версии вообще находились на этапе разработке без каких-либо объявленных сроков выхода. Кроме того, очевидная сложность клиент-серверных вычислений и ещё продолжающаяся эволюция серверных и клиентских приложений привели к тому, что первые продажи SQL Server 1.1 были весьма невысокими[7].

Возможности SQL Server 1.1, в целом, были аналогичны возможностям версии 1.0, но при этом новая версия содержала множество исправлений ошибок, проявлявшихся в версии 1.0. Кроме того, SQL Server 1.1 поддерживал обмен информацией ещё и с новой клиентской платформой — Microsoft Windows 3.0, поставки которой начались в мае 1990 года и вызывали ощутимую реакцию в компьютерной индустрии. SQL Server 1.1 теперь можно было значительно удобнее настраивать для совместной работы с LAN Manager, кроме того была усовершенствована установка продукта для работы с сетями Novell и в качестве отдельной системы разработки ПО. В комплект была включена библиотека Basic Library for SQL Server, представлявшая собой интерфейс между SQL Server и Microsoft Basic Professional Development System. Благодаря этой библиотеке была впервые добавлена поддержка этого языка[6].

Клиентская часть SQL Server 1.1 могла работать с новой версией DB-Library, интерфейса между клиентской частью и SQL Server, которая рассылалась некоторым разработчикам за месяц до выхода новой версии самого SQL Server. Новая версия DB-Library представляла собой практически полностью переписанный вариант предыдущей версии, благодаря чему она стала занимать лишь 40 Кбайт вместо прежних 80 Кб, оставляя больше памяти для DOS-приложений на клиентских системах (теперь разработчик получал 250 Кбайт для своего приложения вместо прежних 50 Кбайт, получаемых при использовании статических библиотек DB-Library, шедших в комплекте с SQL Server 1.0). Архитектура устанавливаемого протокола соединения в DB-Library теперь могла взаимодействовать с клиентами на DOS, Windows и OS/2, а также поддерживала доступ к Sybase SQL Server на других платформах. Впрочем, согласно информации от самих Microsoft и Sybase, эти драйверы всё ещё находились в стадии активной разработки[6].

Лицензирование SQL Server 1.1 предусматривало следующие варианты[6]:

  • полнофункциональная версия для 5 пользователей (с возможностью дополнительного увеличения числа пользователей до 10);
  • полнофункциональная версия для неограниченного количества пользователей;
  • обновление версии для 5 пользователей до версии для неограниченного количества пользователей;
  • обновление для версии SQL Server 1.0.

Возможность работы с SQL Server 1.1 клиентских систем разных производителей позволило последним продавать Microsoft SQL Server 1.1 наряду с собственными разработками. Первыми членами партнёрской программы SQL Business Partner Program стали Ashton-Tate, Blyth Software, Dataease International, Revelation Technologies и Sybase. Эти компании могли совершать продажи через незадолго до этого сформированную специальную сеть сбыта (англ. Microsoft Network Specialist channel), главной задачей которой до этого была продажа Microsoft LAN Manager, либо продавать конечным пользователям напрямую. Из этих пяти партнёров на момент выхода новой версии лишь Ashton-Tate могла предложить пользователям клиентскую часть для SQL Server — SQL Link for Framework III (всего же на рынке на тот момент было доступно около 40 подобных решений). Dataease International заявляла, что её решение Dataease SQL 1.0 станет доступным для покупки с 14 сентября того же года. По информации от Microsoft, оставшиеся два партнёра планировали выпустить свои решения (MS-SQL Server Bond for Advanced Revelation от Revelation Technologies и Omnis 5 от Blyth Software) в третьем квартале того же года. Выпуск Dbase IV 1.1 Server Edition производства Ashton-Tate, который должен был поддерживать и SQL Server, ожидался до конца 1990 года. В первой четверти 1991 года должны были выйти и серверные интерфейсы для поддержки прочих клиентских систем Dbase, а именно Arago Dbxl и Arago Quicksilver производства Wordtech Systems[6].

В третьей четверти 1990 года состоялся выход Access SQL (производства Software Products International) и Q+E (производства Pioneer Software), предназначенные для организации прямой связи между Microsoft Excel и SQL Server[6]. В частности, Q+E предоставлял возможность по сути всем Windows-приложениям (в том числе для версии Windows 3.0), способным работать с соединениями по технологии Dynamic Data Exchange, взаимодействовать и с SQL Server. С точки зрения пользователя, Q+E 2.5 позволял пользователям просматривать, объединять и сортировать информацию в базах данных без написания соответствующих SQL-запросов. А поскольку DDE-вызовы были встроены в само приложение Q+E, то пользователи, например, Excel могли выполнять последующую обработку данных[8].

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

В целом, политика ранней и полной поддержки приложений для Windows 3.0 обусловила и успех Microsoft SQL Server, а кроме того очевидный успех Windows как платформы также потребовал изменений как в SQL Server, так и в самой Microsoft. В частности, команда в Microsoft, занимавшаяся портированием чужого продукта, постепенно перешла к полноценному тестированию и проект-менеджменту, а затем — и к разработке собственных инструментов для облегчения установки и администрирования SQL Server. Но несмотря на то, что вместе с 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)

В 1991 году Microsoft выпустила промежуточную версию — SQL Server 1.11. Данный выпуск был обусловлен тем, что список пользователей к тому моменту уже значительно расширился. Несмотря на то, что клиент-серверная архитектура по-прежнему не была широко распространенной, клиенты всё же постепенно переходили на неё. Но, несмотря на положительную критику от профильной прессы, продажи SQL Server по-прежнему оставляли желать лучшего. По большей части это было связано с провалом OS/2. Пользователи домашних ПК вместо ожидаемого перехода с MS-DOS на OS/2 предпочитали переходить на Windows 3.0. Как следствие, продажи Windows 3.0 были весьма высоки. Чтобы подстегнуть продажи SQL Server и LAN Manager Microsoft объявила о начале специальной программы поддержки независимых производителей ПО, в рамках которой каждый разработчик, удовлетворяющий определённым требованиям, мог лицензировать урезанные версии этих продуктов (эти версии позволяли лишь функционировать стороннему ПО, т. н. англ. run-time versions) с 40 % скидкой и при этом получить полгода бесплатной поддержки, а также некоторые другие преимущества[9].

Как писал журнал 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, добавленную поддержку протоколов [en.wikipedia.org/wiki/Banyan_VINES Banyan VINES] 4.10, а также клиентское взаимодействие с Sybase SQL Server на UNIX- или VMS-машинах. Изменения затронули и лицензионную политику: версия для 5 пользователей была заменена на десятипользовательскую версию, а пользователи SQL Server 1.1 с неограниченным количеством пользователей могли получить версию 1.11 бесплатно[10].

Но с другой стороны, 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 (1991—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 иметь большой кэш и получать все необходимые данные из памяти быстрее, чем с диска, что очень положительно влияло на прирост производительности. Однако, с точки зрения приложений, вся память в OS/2 была виртуальной (как в версии 1.х, так и в 2.х), поэтому даже 16-битная версия SQL Server могла воспользоваться преимуществами OS/2 2.0 для получения доступа к большему пространству реальной памяти. С этой точки зрения 32-битная версия была просто не нужна.

Однако, как оказалось, первые бета-версии OS/2 2.0 были значительно медленнее OS/2 1.x, сводя на нет все преимущества нового подхода к адресации памяти. В результате, пользователи вместо ожидаемого прироста производительности наблюдали её серьёзное падение при запуске первых сборок 32-битного SQL Server 4.2 на OS/2 2.0 (по сравнению с SQL Server 1.1).

Неожиданно, планы по выходу OS/2 2.0 к концу 1991 года подверглись пересмотру. Фактически, стало непонятно, будет ли IBM вообще заниматься выпуском версии 2.0. То есть, выхода OS/2 2.0 ранее конца 1992 года ждать не приходилось. В виду этой ситуации, Microsoft вынуждена была вернуться к 16-битной реализации SQL Server и перенацелить её на OS/2 1.3. На возврат обратно к 16-битной реализации разработчикам из Microsoft потребовалось около трёх месяцев, но тут возникла другая проблема: поставляемая IBM версия OS/2 1.3 работала только на её лицензионных компьютерах. Теоретически, сторонние производители ПК могли лицензировать OS/2 у Microsoft и поставлять её как часть OEM-соглашения. Однако спрос на OS/2 упал настолько, что большинство OEM-производителей предпочли не связываться с ней, в результате чего покупка OS/2 для сторонних ПК превратилась в проблему. В качестве временного решения проблемы Microsoft создала урезанную версию OS/2 версии 1.3 (кодовое название Tiger), которая поставлялась в одной коробке с Microsoft SQL Server и Microsoft LAN Manager. При этом всё очевиднее становился тот факт, что OS/2 — это уже «мёртвая» ОС.

Бета-тест Microsoft SQL Server 4.2 начался осенью 1991 года, а в январе 1992 года на Сан-Францисской конференции для разработчиков ПО, использующих Microsoft SQL Server, Билл Гейтс, тогдашний глава (CEO) Microsoft, и Боб Эпстейн, основатель и руководитель Sybase, официально анонсировали продукт. Версия 4.2 стала первой поистине совместно разработанной версией. Движок, работающий с БД, был портирован из исходного кода версии 4.2 для UNIX, причём над портированием и исправлением ошибок инженеры Microsoft и Sybase работали совместно. Более того, Microsoft создала библиотеки клиентского интерфейса для MS-DOS, Windows и OS/2, а также впервые в комплект поставки вошёл инструмент с графическим интерфейсом Windows для упрощения администрирования. Исходный код объединялся в штаб-квартире Sybase, а файлы исходного кода пересылались туда по модемной связи или через копирование и отправку магнитных лент.

Поставки Microsoft SQL Server 4.2 начались в марте 1992 года. Критика в профильной прессе была довольно благосклонной, равно как и отзывы покупателей продукта. Тем не менее, после начала поставок в 1992 году многие задавались вопросом о сроках выхода 32-битной версии SQL Server. Как показали дальнейшие события, данная версия движка стала последней версией, полученной Microsoft от Sybase (не считая нескольких исправлений ошибок, которыми компании ещё некоторое время продолжали обмениваться).

SQL Server for Windows NT (1992—1993)

В начале 1992 года команда разработчиков SQL Server оказалась на распутье. С одной стороны, уже имелась клиентская база SQL Server, у которых СУБД была установлена на OS/2. Эти клиенты уже ждали 32-битную версию SQL Server, причём версию для OS/2 2.0 и желательно сразу после её выпуска OS/2 2.0 корпорацией IBM, то есть они желали оставаться на OS/2 в обозримом будущем. Но проблема была в том, что не было точно известно, когда же выйдет OS/2 2.0. Представители IBM заявляли, что выпуск новой версии состоится осенью 1992 года. Многие воспринимали эти слова со скепсисом. Так например, Стив Баллмер, старший вице-президент Microsoft, публично поклялся, что он съест флоппи-диск, если IBM выпустит свой продукт в 1992 году.

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

Кроме того, хотя Microsoft и решила в 1991 году вернуться к 16-битной версии SQL Server, но при этом работа над 32-битной версией не прекращалась. К марту 1992 года, когда только вышла версия 4.2, тесты показывали, что обе версии (и 16-битная и 32-битная) на бета-версиях OS/2 2.0 работают медленнее по сравнению с 16-битной версией, запущенной на OS/2 1.3. Возможно, после официального выхода OS/2 2.0 ситуация и изменилась бы, но имевшиеся на тот момент бета-версии указывали скорее на обратное. По факту работа получалась менее производительной и менее стабильной.

Поскольку ресурсы для разработки были ограниченными, то в текущей ситуации Microsoft не могла позволить себе заниматься разработкой под обе платформы сразу. В противном случае разработчики столкнулись бы еще с дополнительным ворохом проблем, а именно им пришлось бы добавлять в продукт абстрактный слой, который скрыл бы различия между операционными системами либо вести параллельную разработку двух версий продукта. Таким образом, разработчики в Microsoft приняли решение прекратить работу над 32-битной версией SQL Server для OS/2 2.0, вместо этого они вплотную занялись разработкой продукта для Windows NT. При разработке новой версии внимания переносимости SQL Server на OS/2 или другие ОС не уделялось, вместо этого решено было воспользоваться всеми преимуществами Windows NT. Соответственно, подобный подход фактически положил конец разработке SQL Server для OS/2 вообще, за исключением поддержки уже выпущенных версий и исправления в них ошибок. Microsoft же начала информировать своих клиентов о том, что появление будущих версии (в том числе 32-битной версии) SQL Server для OS/2 2.0 будет зависеть от наличия и объёма спроса покупателей, тогда как она сама переориентировалась на Windows NT. Восприятие клиентами подобной новости было различным: некоторые отнеслись с пониманием к подобной позиции, другим, чей бизнес напрямую зависел от OS/2, такая новость не понравилась.

Тем временем, Sybase так же работала над новой версией своей СУБД, которая должна была получить название System 10. В данной ситуации, как и в случае с разработкой версии 4.2, разработчикам нужно было чтобы новая версия Microsoft SQL Server была совместима с System 10 и имела тот же порядковый номер, что и продукт Sybase, выпущенный для UNIX. Таким образом, сложилась ситуация когда для Microsoft главной целью стала победа Windows NT над OS/2, а для Sybase — успех её System 10.

Несмотря на то, что System 10 еще не была даже переведена на этап бета-тестирования, уже имелись расхождения в планировании обеими компаниями выпуска новых версий продукта. Так, например, Microsoft желала как можно скорее портировать Microsoft SQL Server на Windows NT, равно как и получить версию System 10 для Windows NT, OS/2 2.0 или обеих сразу. В результате было достигнуто соглашение о том, что Microsoft портирует SQL Server 4.2 для OS/2 на Windows NT, причём начнёт это незамедлительно, а Sybase включит Windows NT в список приоритетных ОС для System 10. Таким образом, Windows NT станет одной из первых ОС, для которых будет выпущена соответствующая версия System 10. В свою очередь, Microsoft возобновит поддержку OS/2 для Sybase, так чтобы клиенты, желающие остаться на OS/2 вполне могли это сделать. Хотя Microsoft и надеялась, что большинство клиентов мигрирует на Windows NT, но было ясно, что на все 100 % этого не произойдёт. Поэтому в этом отношении подобная договорённость была даже выгодна Microsoft.

Кроме того, подобный план действий имел дополнительные преимущества с точки зрения разработки. Команда разработчиков Microsoft должна была работать над стабильной и проверенной версией 4.2, в которой они к тому времени уже превосходно разбирались, что сильно облегчало задачу её переноса на новую ОС. Sybase же в свою очередь могла полностью сконцентрироваться на разработке новой версии, не беспокоясь о проблемах, связанных с предварительными версиями ОС. В итоге, согласно имевшемуся на тот момент (1992 год) плану должны были выйти обе версии (System 10 и SQL Server для Windows NT), а компании продолжить совместную разработку продукта.

Команда в Microsoft, занимавшаяся разработкой SQL Server, приступила к ускоренной разработке первой версии SQL Server для Windows NT, поскольку команда должна была выпустить продукт в течение 90 дней после выхода Windows NT, но согласно поставленным планам они должны были уложиться в 30 дней. Тут расчёт был на то, что Windows NT теперь фактически являлась единственной платформой для SQL Server, а значит разработчикам не было нужды беспокоиться о проблемах, связанных с портированием, и в частности не нужно было заниматься разработкой абстрактного слоя для сокрытия различий операционных систем. Роль абстрактного слоя должна была сыграть сама Windows NT, которая изначально планировалась как портируемая ОС, то есть предполагалось выпустить её версии для различных машинных архитектур.

Как следствие, разработчики сделали плотную привязку функциональности SQL Server к функциональности Windows NT, например, обработку событий в едином месте, установку SQL Server в качестве службы Windows NT, экспорт статистики производительности СУБД в Windows NT Performance Monitor и т. д. Так как Windows NT предусматривала возможность запуска приложениями динамического кода (при помощи динамических библиотек), то для SQL Server была предусмотрена возможность создавать сторонними разработчиками собственные динамические библиотеки. В результате подобных изменений Microsoft SQL Server для Windows NT сильно стал отличаться от исходной версии 4.2 для OS/2, так как оказалось, что Microsoft фактически переписала ядро SQL Server (часть программы, отвечающей за взаимодействие с ОС) для работы с Win32 API напрямую.

Ещё одной задачей при разработке SQL Server для Windows NT было облегчение перехода с имеющихся установок на OS/2 на новую версию SQL Server и ОС. Разработчики желали, чтобы все приложения, написанные для SQL Server 4.2 для OS/2 смогли работать без изменений на SQL Server для Windows NT. Поскольку для Windows NT планировалась возможность двойной загрузки с MS-DOS или OS/2, то команда решила, что SQL Server для Windows NT должен обладать способностью напрямую читать и писать в базы данных, созданные в SQL Server для OS/2. Для достижения поставленных целей разработчики переработали внутреннюю архитектуру SQL Server, добавив при этом множество функций для администрирования, работы по сети и расширяемости, тогда как от добавления внешних функций в ядро движка пришлось отказаться. Также задачей стала совместимость диалектов языка SQL и возможностей версий СУБД для Windows NT и OS/2, тогда как новые возможности предполгалось добавить в версию, которая была бы разработана на основе System 10. Для разграничения совместимости с версией 4.2 для OS/2 и новыми разработками Sybase, Microsoft приняла решение назвать свою новую версию SQL Server для Windows NT 4.2 (то есть добавив номер версии), при этом маркетинговое название продукта должно было выглядеть как Microsoft SQL Server for Windows NT, а внутреннее обозначение — SQL NT.

В июле 1992 года Microsoft провела конференцию для разработчиков ПО для платформы Windows NT и раздала альфа-версии Windows NT участникам конференции. Несмотря на то, что новая версия SQL Server не имела статус даже «беты-версии», Microsoft всё же незамедлительно обнародовала через CompuServe 32-битные программные библиотеки, необходимые разработчикам для портирования своих приложений с OS/2 и 16-битных версий Windows на Windows NT. Сделано это было с учётом успеха распространения NDK среди разработчиков ПО для Windows 3.0 в 1990 году, Microsoft же надеялась повторить тот успех, снабдив разработчиков всеми необходимыми инструментами для разработки ПО под Windows NT.

В октябре 1992 года Microsoft выпустила первую бета-версию SQL Server для Windows NT. Данная версия обладала всем основным (из заявленного) функционалом, а все его компоненты обладали полной поддержкой Win32. Данная версия распространялась при помощи более ста сайтов. Для СУБД подобное количество сайтов являлось беспрецедентным, поскольку типичное количество сайтов, выделяемых для распространения этого типа ПО, как правило не превышало 10.

Параллельно с рассылкой NDK всё ещё продолжались поставки версии SQL Server для OS/2 (они продолжились и в следующем году). К марту 1993 года Microsoft выпустила бета-версию продукта. Данную версию (SQL Server Client/Server Development Kit (CSDK)) можно было свободно купить за небольшую плату. Для его поддержки MIcrosoft организовала открытый форум на CompuServe и не требовала с тех, кто к ней обращался, подписания соглашения о неразглашении сообщаемых сведений. Таким образом удалось реализовать более трёх тысяч комплектов CSDK. К маю 1993 года количество обращений за поддержкой предварительной версии продукта превысило количество обращений по поводу версии для OS/2. Несмотря на количество заявок, общая реакция на предварительную версию продукта была довольно положительной.

В июле 1993 года Microsoft выпустила Windows NT 3.1. В течение 30 дней после её выхода команда разработчиков SQL Server выпустила первую версию Microsoft SQL Server для Windows NT. Выход был весьма успешен: росли продажи как самой СУБД, так и ОС для неё.

К началу декабря 1993 года значительная доля клиентов мигрировала с OS/2-версии на SQL Server для Windows NT. Опросы свидетельствовали о том, что те, кто ещё не перешёл на новую версию для Windows NT, планировали это сделать даже невзирая на объявление Sybase о намерении разрабатывать System 10 для OS/2. Переход с версии SQL Server для OS/2 на версию для Windows NT для приложений происходил довольно безболезненно, а кроме того при переходе на новую версию наблюдался рост производительности. Как следствие, через 9 месяцев продажи SQL Server уже в два раза превосходили продажи на начало этого периода. При этом 90 % продаж приходилось на новую версию для Windows NT, тогда как на старую версию для OS/2 — оставшиеся 10 %.

Внутренние тесты Microsoft показывали, что ориентация на единственную платформу (Windows NT) дала свои плоды: SQL Server для Windows NT (запущенный на более дешёвом оборудовании) превосходил по производительности СУБД, работавших на UNIX и более дорогом оборудовании. В сентябре 1993 года Compaq Computer Corporation опубликовала первые результаты проведённого теста Transaction Processing Council (TPC). На тот момент, согласно тестам TPC-B, наиболее распространённым показателем являлся $1000/TPS (англ. transactions per second, транзакций в секунду). SQL Server, запущенный на машине с двумя процессорами Pentium с частотой 66 МГц, показал результат в 226 TPS при показателе $440 на транзакцию, что стало вполовину дешевле по сравнению с ранее опубликованными тестами. При этом большинство файл-серверов, работавших на мини-компьютерах под управлением UNIX, демонстрировали результаты, не превосходящие 100 TPS. И хотя были такие СУБД, которые демонстрировали значительно более высокие показатели, но и их ценовой эквивалент значительно превышал показатель в $440/TPS. Для сравнения, 18 месяцами ранее показатель производительности в 226 TPS являлся самым высоким из когда-либо достигнутых мэйнфреймами или мини-компьютерами.

SQL Server 6.0 (1993—1995)

Успех Microsoft вызвал рост напряжённости в отношениях с Sybase. Ситуация на рынке СУБД в конце 1993 года уже сильно отличалась от ситуации 1987 года, когда Microsoft и Sybase подписывали контракт. В 1993 году Sybase уже являлась успешной софтверной компанией, на рынке СУБД уступая лишь корпорации Oracle. Аналогично, за прошедшее время с 1987 года значительно выросла и Microsoft. Вместе с ней выросла и команда разработчиков SQL Server (в 1990 году их было около дюжины человек, а в 1993 году — уже более 50), не считая тех, кто занимался маркетингом и поддержкой продукта. Эти разработчики уже вполне хорошо знали внутренние механизмы SQL Server, а также обладали большим опытом по разработке аналогичной версии для Windows NT. Таким образом, Microsoft уже обладала всеми необходимыми ресурсами для самостоятельной разработки SQL Server, но соглашение с Sybase 1987 года связывало её, поскольку контракт подразумевал лишь лицензирование ею разработок у Sybase. Согласно действовавшим ограничениям этого контракта, Microsoft не могла добавлять новую функциональность или вносить любые другие изменения в код, не согласовав их предварительно с Sybase.

Ещё одним поводом для взаимного недовольства стало окончательное расхождение в потребностях при разработке SQL Server. Например, разработчики Microsoft желали интегрировать в SQL Server поддержку MAPI (Messaging API), но поскольку данная возможность была специфичной для Windows, то разработчики Sybase не спешили давать добро на её внедрение, поскольку в сфере интересов Sybase была разработка продукта для UNIX, а не для Windows NT. Поскольку Sybase с портирования своего продукта под прочие ОС не получала никакой выгоды, то инициативы Microsoft начали встречать у неё всё большее сопротивление. Фактически, перенос версии 4.2 на Windows NT уже был предметом разногласий, поскольку добавление специфичной для Windows NT функциональности версии 4.2 существенно тормозило разработку System 10 для прочих платформ. Sybase разрабатывала свою System 10 уже с прицелом на упрощение дальнейшего портирования на различные ОС (в том числе и Windows NT), но с точки зрения Microsoft это означало отказ от максимально возможного использования средств Windows NT, поскольку System 10 не могла и не смогла бы при подобном подходе работать на Windows NT также эффективно, как если бы она изначально именно для неё и разрабатывалась.

Всё это привело к тому, что теперь уже обе компании не особо нуждались друг в друге, а их соглашение 1987 года уже фактически перестало действовать. Microsoft SQL Server для Windows NT уже был вполне жизнеспособной альтернативой Sybase SQL Server, работавшему на UNIX, Novell NetWare и VMS. Теперь клиенты могли приобрести Microsoft SQL Server по стоимости, равной части стоимости подобного решения для UNIX, причём MS SQL Server можно было запустить на менее мощном (а значит и более дешёвом оборудовании) и для его администрирования требовался менее квалифицированный специалист. Роялти же от Microsoft составили бы лишь небольшую долю доходов Sybase от продаж её продуктов для UNIX. Так что обе компании уже боролись фактически за одних и тех же клиентов, но при этом уже обе понимали, что пришло время менять характер их отношений.

12 апреля 1994 года Microsoft и Sybase объявили об окончании совместной разработки SQL Server. Каждая компания решила продолжить работу над собственной версией SQL Server. Microsoft получила возможность самостоятельно, без оглядки на Sybase, разрабатывать Microsoft SQL Server. Sybase теперь без помех могла заняться портированием System 10 на Windows NT (впервые SQL Server с логотипом Sybase стал бы доступен на платформе Windows NT, поскольку их соглашение подразумевало исключительно права Microsoft на разработку под свою платформу). При этом оба продукта должны были поддерживать обратную совместимость с существовавшими на тот момент приложениями для SQL Server, однако в дальнейшем эта идея никак не поддерживалась из-за слишком различающихся целей. Sybase разрабатывала свой продукт ориентируясь в первую очередь на его совместимость с версиями для UNIX, а Microsoft — совместимость с Windows NT. Вскоре, обе линейки SQL Server стали напрямую конкурировать друг с другом, причём Microsoft вновь попала в двойственную ситуацию: ей пришлось заниматься поддержкой конкурирующего продукта (System 10) на платформе Windows NT, поскольку доступность различных продуктов позитивно влияла на продажи ОС.

В начале 1994 года команда разработчиков SQL Server для новой версии планировала взять исходный код Sybase System 10, но разрыв соглашения полностью изменил эти планы. Если не считать пары исправлений, то последние исходники от Sybase были получены в начале 1992 года (версия 4.2 для OS/2). С учётом того, что Sybase собиралась выпустить System 10 для Windows NT к концу этого года, то с точки зрения пользователей это стало бы неплохим поводом обновить свою версию СУБД, перейдя с версии Microsoft SQL Server 4.2 на Sybase System 10. В свою очередь, для Microsoft это означало потерю клиентской базы, а следовательно нужно было быстро готовить ответный шаг.

В Microsoft был быстро запланирован амбициозный релиз, содержащий множество улучшений производительности и функциональности. Будущий релиз получил кодовое обозначение SQL95, намекая на запланированный к выходу релиз Windows 95. В 1994 году был актуален вопрос репликации данных средствами СУБД, поэтому репликация стала краеугольным камнем будущего релиза. То же касалось и позиционируемых курсоров — механизм, по мнению разработчиков, просто необходимый для преодоления разрыва между приложениями, ориентированными на работу со множеством записей, и реляционной БД. Ни одна из распространённых СУБД на тот момент ещё не обладала полнофункциональной реализацией позиционируемых курсоров для клиент-серверной архитектуры, и команда разработчиков SQL Server считала, что данный механизм положительно скажется на репутации их продукта. Кроме того, шла работа над абсолютно новым набором инструментов управления под кодовым названием Starfighter (впоследствии получивший название SQL Server Enterprise Manager), который планировалось включить в следующую версию. Список новых возможностей постепенно всё более расширялся.

Общая реакция клиентов на новость о планах Microsoft самостоятельно разрабатывать SQL Server была довольно негативной. 14 июня 1994 года в Сан-Франциско Microsoft провела общую конференцию для клиентов, аналитиков и журналистов. Джим Алчин, на тот момент занимавший должность старшего вице-президента Microsoft, рассказал о планах на будущее и о планируемом выпуске SQL95. Представленные планы и проекты были восприняты с одобрением, но многие открыто высказывали скепсис в отношении сроков выхода, сомневаясь в том, что Microsoft сможет выпустить обещанный продукт к концу 1995 года. В прессе новый релиз даже саркастически именовали SQL97 и даже SQL2000. Согласно же внутренним планам, разработчики готовились представить релиз в первой половине 1995 года. Первую бета-версию выпустили в октябре 1994 года. На этот момент Starfighter ещё не был закончен, но сам сервер был уже завершён, а поскольку именно при скачивании сервера создаётся наибольшая нагрузка на сайты с бета-версиями, то было решено выпустить его бета-версию в первую очередь. После выпуска последовала череда обновлений, продолжавшаяся несколько месяцев, параллельно с увеличением количества сайтов, достигшим показателя в 2000 сайтов.

Кроме того, ещё в 1993 году Microsoft приняла решение, что базы данных будут ключевой технологией в полной продуктовой линейке, и в конце 1994 года Microsoft начала заказывать экспертные консультации со стороны DEC и других ключевых вендоров рынка для команд разработчиков, работавших над проектами Microsoft Jet and SQL Server. Целью данных консультаций являлось планирование компонентов для нового поколения продуктов для работы с базами данных. В течение 1995 года параллельно с выпусками основной командой SQL Server 6.0 и SQL Server 6.5, вторая команда разработала новый процессор запросов как часть компонента, который впоследствии превратился в Microsoft Data Engine (MSDE). Параллельно с разработкой MSDE велась работа и над OLE DB, набором интерфейсов, который позволил бы разрабатывать элементы основного продукта SQL Server как независимые компоненты. Такие компоненты обладали бы возможностью взаимодействовать друг с другом, используя слой OLE DB.

Примерно в течение девяти месяцев работа над SQL Server велась и по ночам. 14 июня 1995 года продукт был выпущен под названием Microsoft SQL Server 6.0, таким образом уложившись во внутрикорпоративные сроки. Вслед за выпуском версии последовало множество положительных публикаций в профильной прессе. Журнал InfoWorld по результатам второго ежегодного опроса о 100 компаниях с самыми инновационными приложениями в области клиент-серверных технологий поместил Microsoft SQL Server на второе место в рейтинге среди СУБД. При этом SQL Server увеличил свою долю с 15 % до 18 % среди опрошенных, указавших данную СУБД в качестве своего выбора, тогда как доля СУБД Oracle снизилась с 24 % до 19 %, соответственно. Доля Sybase также выросла с 12 % до 14 %. Три из десяти лучших приложений, отмеченных InfoWorld, были созданы с использованием Microsoft SQL Server.

SQL Server 6.5 (1995—1996)

Однако были данные и о том, что доля Microsoft SQL Server на рынке значительно меньше, чем показывали подобные опросы. Одной из проблем оставалось то, что Microsoft всё ещё оставалась новичком в секторе СУБД. На тот момент явным лидером являлась Oracle, и серьёзные позиции были у Sybase, Informix и IBM. На рынке фактически сложилась весьма тревожная ситуация для Microsoft поскольку все эти компании начали выстраивать свои тактики продаж, нацеливая их против Microsoft SQL Server. При этом Sybase, Informix и Oracle планировали выпуск новых версий своих продуктов. В рамках стратегии развития SQL Server Microsoft продолжила активное усиление команды разработчиков SQL Server, история которой на тот момент уже насчитывала более четырёх лет. Были наняты как уже известные профессионалы на тот момент как, например, Джим Грей, Дейв Ломет и [en.wikipedia.org/wiki/Phil_Bernstein Фил Бернштейн], так и менее известные разработчики, в том числе бывшие работники DEC, работавшие над Rdb.

После выхода версии 6.0 началась работа над версией 6.5. В рамках новой версии планировалось реализовать те возможности, которые были отложены при выпуске версии 6.0, тем более, что за 18 месяцев её разработки требования к СУБД существенно подросли. Например, в 1995 году большую роль уже играли Интернет и передача данных. Выпуск версии 6.5 должен был удовлетворить данные запросы. Полнофункциональная бета-версия версии 6.5 была выпущена 15 декабря 1995 года при помощи 150 бета-сайтов. Официальные поставки новой версии начались в апреле 1996, то есть примерно через 10 месяцев после выхода версии 6.0.

В функциональность также были добавлены инструменты для упрощения использования продукта пользователями, расширенная поддержка распределённых транзакций и другие возможности. Также был получен сертификат соответствия стандарту языка ANSI SQL.

Позднее, в декабре 1997 года, параллельно с выходом второй бета-версии SQL Server 7.0 была выпущена и версия SQL Server 6.5 EE, обладавшая поддержкой двухузловых отказоустойчивых кластеров Microsoft Cluster Server, 8 процессоров и адресного пространства 3 Гбайт.

SQL Server 7.0 (1996—1998)

Разработка

В конце 1995 года началась разработка следующей версии SQL Server, получившей кодовое название Сфинкс (англ. Sphinx). Уже на первом этапе в код SQL Server был добавлен код будущего MSDE, а команда разработчиков, работавшая над ним, присоединилась к основной команде разработчиков SQL Server. Разработка нового поколения SQL Server преследовала одну главную цель: перепроектировать весь движок сервера баз данных таким образом, чтобы позволить пользователям масштабировать SQL Server согласно их желаниям. Это подразумевало собой последовательное наращивание возможностей для максимально эффективного использования более быстрых процессоров (а также увеличения их количества) и объёма памяти, доступного операционной системе. Кроме того, такое наращивание не должно было ограничивать возможность добавления новой функциональности в любой из компонентов, например, в код обработчика запросов можно было легко добавить новый алгоритм подключения нового жёсткого диска. Кроме подобного наращивания возможностей, SQL Server должен был поддерживать новые классы приложений для баз данных, а это в свою очередь означало процесс, обратный наращиванию возможностей, а именно урезание требований к аппаратному обеспечению, чтобы продукт смог работать и значительно более слабых системах, как например, домашние ПК или ноутбуки.

В ближайшей перспективе благодаря подобному перепроектированию планировалось достичь двух целей:

  • реализовать полноценную блокировку на уровне строк с наличием интеллектуального менеджера блокировок;
  • создать новый обработчик запросов, поддерживающий такие механизмы, как распределённые гетерогенные запросы, и эффективно обрабатывающий произвольные запросы.

Одной из областей, вызвавшей повышенное внимание при разработке, было улучшение качества работы высокоуровневых приложений, таких как программное обеспечение планирования корпоративных ресурсов. Здесь как раз и требовались масштабируемость и удобство использования вкупе с высокой надежностью ядра базы данных. Также были разработаны несколько алгоритмов, которые автоматизировали большую часть настройки базы данных и позволяли системе самостоятельно решать некоторые вопросы настройки, которые вставали перед администратором базы данных. По данным алгоритмам впоследствии Microsoft получила несколько патентов. Также велась работа и над обеспечением механизма блокировки на уровне записи. Данный механизм позволил бы приложениям обращаться к конкретной строке в таблице, а не к целой странице, что привело бы к значительному уменьшению числа конфликтов при нескольких одновременных изменениях данных в одной таблице. В версии 6.5 данный механизм имел весьма ограниченную реализацию, поэтому в новой версии предполагалась уже реализация полной блокировки на уровне записи[11].

В октябре 1996 года Microsoft приобрела технологию Plato у израильской компании Panorama Software Systems. Данная технология представляла собой одну из реализаций технологий OLAP для СУБД. На тот момент (равно как и к моменту выхода SQL Server 7.0 в 1998 году) технология OLAP считалась весьма сложной в использовании и потому была малоиспользуемой. Тем не менее было принято решение встроить Plato в код SQL Server 7.0, но с учётом требований масштабирования, предъявляемых к новой версии SQL Server, в результате потребовалась переделка Plato для соответствия аналогичным требованиям. Перед разработчиками была поставлена задача превратить её в продукт, который по масштабируемости, удобству использования и интеграции с ПО корпорации не отличался бы от любого продукта Microsoft. В дальнейшем, сервер OLAP, ставший одним из ключевых дополнений SQL Server 7.0, получил название OLAP Services[11].

В декабре 1996 года был выпущен Microsoft Transaction Server 1.0 (кодовое название - Viper), сочетающий функциональность монитора транзакций и брокера объектных запросов.

Бета-версии

В июне 1997 года состоялся ограниченный выпуск первой бета-версии нового SQL Server 7.0. В декабре того же года нескольким сотням пользователей была разослана для тестирования вторая бета-версия продукта. Из-за перехода к новой архитектуре при обновлении версии SQL Server пользователям требовалось полное изменение баз данных и их структур. Для поддержки перехода клиентов на новую версию была объявлена специальная программа 1K Challenge, в рамках которой 1000 клиентов могли прислать разработчикам SQL Server копии своих баз данных для портирования их на версию 7.0. Спецлаборатория для проверки результатов портирования была создана в том же редмондском кампусе, где размещалась команда разработчиков SQL Server. Еженедельно с февраля по август 1998 года четверо или пятеро сторонних компаний-разработчиков ПО на неделю присылали свои группы разработчиков в Microsoft, в течение которой они в лаборатории проверяли, что их продукты будут без каких-либо проблем работать с SQL Server 7.0. При обнаружении каких-либо проблем ведущие разработчики SQL Server сразу занимались их решением, предварительно обсудив варианты решений с гостями.

В июне 1998 года была выложена версия Beta 3 на специально выделенном для этого веб-сайте. Вместе с бета-версией было опубликовано и несколько примеров решений задач, демонстрируюших новые возможности продукта. Кроме того, был запущен специальный новостной сервер, чтобы любой пользователь версии Beta 3 мог сообщить о найденных ошибках или задать вопрос разработчикам о новых возможностях продукта. Всего более 120 тысяч тестировщиков получили SQL Server 7.0 Beta 3. В это число вошли компании, напрямую заказавшие версию через веб-сайт Microsoft, подписчики MSDN, а также участники официальной программы по бета-тестированию Microsoft Beta Program (которые получают бета-версии всех продуктов Microsoft по мере их выхода).

Перед выходом SQL Server 7.0 появились слухи о намерении Microsoft заменить Access упрощенной версией своей реляционной базой данных SQL Server. Корпорация опровергла их, заявляя о том, что в новой версии Access для Office 2000 будет два альтернативных ядра базы данных: Jet, — уже выпускаемая, «родная» среда хранения для Access, и новое MSDE. Согласно представленной тогда информации, MSDE должен был стать не встроенной версией SQL Server, а представлять собой технологию хранения данных, совместимую с SQL Server, имеющим ту же компонентную архитектуру, что в свою очередь позволило бы разработчикам, используя Access в качестве интерфейсного модуля к SQL Server, применять MSDE для создания приложений, которые могли бы масштабироваться от настольной базы данных в реляционного «старшего брата» для SQL Server или SQL Server Enterprise[11].

Выход

16 ноября 1998 года на конференции COMDEX в Лас-Вегасе SQL Server 7.0 был публично представлен. Представлял новую версию лично Стив Балмер. Основной упор в своём выступлении он сделал на повышении производительность SQL Server 7.0 относительно предыдущей версии. Также он отметил и вопросы, связанные с масштабируемостью и готовностью работы с приложениями. По его словам, «такие производители ERP-систем, как Baan, PeopleSoft и SAP, смогут использовать эту СУБД практически во всех своих проектах, за исключением, может быть, самых крупных». По его прогнозам в течение ближайших полутора лет независимыми производителями должно было быть создано около 3 тыс. приложений для SQL Server 7.0. К моменту же выхода данной версии было более дюжины успешных её внедрений, в том числе в таких крупных компаниях как HarperCollins, CBS Sportsline, Comcast Cellular и Southwest SecuritiesК:Википедия:Статьи без источников (тип: не указан)[источник не указан 4392 дня]. Причём 10 из них уже перешли на новую версию, а Pennzoil, Barnes & Noble и HarperCollins Publishers к тому моменту тестировали её уже несколько месяцев. Представители Pennzoil, News America (подразделение HarperCollins) и Barnes & Noble подтвердили возросшую производительность новой версии. Помимо самого продукта SQL Server 7.0 на COMDEX был представлен и специальный сервер для бесперебойной работы SQL Server 7.0, а производитель ERP-систем корпорация Baan представила комплект приложений BaanSeries '99, предназначенный исключительно для SQL Server 7.0[11].

Весь цикл разработки, по словам Дуга Леланда, менеджера по маркетингу SQL Server корпорации Microsoft, длился 3,5 года. Им же новая версия позиционировалась как «первая реляционная СУБД Microsoft, которая поддерживает все её 32-разрядные операционные системы семейства Windows», причём планов по выпуску версий SQL Server для других ОС у Microsoft не было[11].

Выход же версии 7.0 состоялся 2 декабря 1998 года как билд 7.00.623.07, при этом заморозка кода состоялась 27 ноября 1998 года. Для свободного заказа продукт стал доступен в январе 1999 года.

Многие аналитики рассматривали выпуск версии 7.0 как «значительный шаг к завоеванию рынка корпоративных вычислительных систем». По их мнению, Microsoft рассчитывала на то, что благодаря переработанной функциональности SQL Server 7.0 станет корпоративным стандартом на базы данных. Добавление оперативной аналитической обработки в SQL Server 7.0 аналитиками рассматривалось как событие, которое «может стать самым важным событием, произошедшим на рынке OLAP с момента его возникновения». Причиной этого было то, что системы OLAP на тот момент были рассчитаны исключительно на корпоративный сегмент, а поскольку стратегия Microsoft предполагала создание версий и для домашних ПК в том числе, то благодаря этому технологии OLAP становятся доступными и для небольших компаний, что само по себе подразумевает значительную популяризацию OLAP[11].

Ещё одним доводом в пользу «стандартизации SQL Server 7.0» была способность SQL Server интегрироваться с остальными корпоративными системами, что было критически важно в условиях гетерогенных многоуровневых сред и наличии разнородных платформ и хранилищ данных. Для продвижения в этой области Microsoft разработала внутренние стандарты на интеграцию данных, такие как OLE DB и ADO, а также вела работу со сторонними производителями ПО. Однако, конкуренты критиковали подобные стандарты, заявляя, что «некоторые из этих стандартов — сугубо внутренние», что резко ограничивает возможность их применения сторонними заказчиками. Значительной критике подвергся в том числе и стандарт OLE DB for OLAP, который Microsoft предлагала в качестве отраслевого стандарта и вместе с тем как часть своей оболочки для создания хранилищ данных. Так, например, Джефф Джонс, менеджер программы по маркетингу систем управления данными корпорации IBM, в качестве основного недостатка называл то, что данный стандарт разрабатывался Microsoft, а не каким-либо консорциумом по стандартизации, как это широко практиковалось. На подобную критику представители Microsoft отвечали, что стандарт разрабатывался с участием более 60 производителей хранилищ данных[11].

Аналитики отмечали, что у Microsoft были все шансы добиться поставленной цели. В пользу этого говорило и активное стимулирование сторонних производителей создавать программное обеспечение для SQL Server 7.0, и модель распространения выглядела лучше чем у конкурирующих Oracle и IBM, способная в перспективе позволить продавать оптовые партии по более низкой цене и за счет этого стать серьезным игроком на рынке корпоративных баз данных[11].

Продавать новую версию планировалось по всему миру через реселлеров, сначала — оригинальную англоязычную версию, а в течение следующих двух месяцев должны были появиться и версии на французском, немецком, испанском и японском языках. К концу февраля 1999 года Microsoft планировала выпустить также и китайскую версию. С точки зрения версий продукта планировался выпуск стандартной и корпоративной версий в трёх конфигурациях каждая (в зависимости от количества допускаемых пользователй). Кроме того, было объявлено о специальном предложении, благодаря которому пользователи в течение 99 дней с момента объявления могли модернизировать свою систему до SQL Server или перейти на неё с конкурирующих СУБД, заплатив за SQL Server 7.0 всего 99 долларов на пользователя[11].

Аналитики высказывали предположения о том, что эти расценки могут вынудить конкурентов Microsoft в области баз данных снизить традиционно высокую стоимость своих продуктов (тем не менее, Oracle, например, официально отказалась пойти на такой шаг). Также аналитики довольно скептически восприняли новую версию, посчитав, что SQL Server 7.0 был предназначен в первую очередь для систем младшего класса рынка баз данных для Windows NT, тем более, что несколько участников бета-тестирования подтвердили, что новая версия полностью удовлетворяет их требованиям. Так, Херб Эдельштейн, аналитик компании Two Crows, заявил о том, что «низкие цены, установленные Microsoft, направлены на устранение конкуренции на этом рынке», при этом «даже с учётом всех новых возможностей SQL Server 7.0 сможет решить лишь часть задач, стоящих перед пользователями крупных корпораций». Бетси Бартон, аналитик компании Gartner Group, считал, что хотя и дополнения, представленные в новой версии, «заслуживают внимания», тем не менее «общая надежность и масштабируемость системы пока остается под вопросом». Однако, представители компаний, в которых тестировалась новая версия, продолжали положительно характеризовать продукт. Помимо ранее упомянутых компаний, положительно о продукте отозвались и Марк Митчел, системный консультант компании Applied Automation, и Джо Мисяжек, менеджер по поддержке приложений для системы, используемой в Colorado Community College. Они отметили доступную стоимость продукта, хорошую производительность и относительную простоту освоения[11].

Подобные шаги Microsoft вызвала ответную реакцию конкурентов. Так, например, корпорация Oracle вынуждена была изменить свою стратегию продаж. Согласно распростраённому заявлению, корпорация должна была начать продавать свою СУБД, установленную на предварительно сконфигурированных «серверных устройствах», которые используют упрощенную операционную систему, разработанную с участием самой Oracle. Согласно словам главы Oracle Ларри Эллисона, подобные нововведения должны были «снизить стоимость владения СУБД Oracle и в то же время усилить конкурентоспособность продукта в противостоянии с SQL Server компании Microsoft». В середине ноября 1998 года Oracle подписала соглашение с компаниями Dell, Compaq, Hewlett-Packard и Sun Microsystems, в соответствии с которым продажа серверов должна была начаться к концу первого квартала 1999 года. Операционная система, устанавливаемая на новых серверах, содержала компоненты Solaris (в дальнейшем предполагалось использовать компоненты Linux) и была настолько простой, что данная инициатива получила название Raw Iron («Голое железо»). Партнёры Oracle собирались предложить три типа серверов («небольшие, средние и крупные», как назвал их Эллисон), предварительно сконфигурированных для решения конкретных задач, таких как электронная почта и IFS (файловая система Internet). Таким образом, должен был состояться переход от продаж коробочной версии СУБД к продажам серверов, стоимость владения которых намного ниже. Эта стратегия, по мнению Эллисона, должна была помочь переманить часть покупателей SQL Server[11].

SQL Server 2000 (1998—2000)

Как и в предыдущие разы, работа над SQL Server после выхода седьмой версии не остановилась. В версию 7.0 была включена далеко не вся изначально запланированная функциональность, а кроме того имелось ещё несколько разработок, находившихся на финальных этапах, предназначенных для включения в следующий крупный релиз. Таким образом началась разработка двух версий: Шило (англ. Shiloh) — «младший» релиз версии 7.0 (условно говоря 7.5 по аналогии с предыдущим релизом), и Юкон (англ. Yukon) — следующий крупный релиз.

Изначально продукт-менеджеры SQL Server неохотно прогнозировали популярность SQL Server 7.0. Причина этого заключалась в том, что данный релиз основывался на полностью переписанном коде движка сервера, из-за чего многие клиенты рассматривали его лишь как первый релиз и было очевидно, что многие из потенциальных клиентов седьмой версии предпочтут подождать какой-нибудь «исправленной версии» либо хотя бы первого сервис-пака (пакета обновления). Так что Shiloh изначально был запланирован как некий суперсервис-пак, причём в него планировалось включить и функциональность, не вошедшую в версию 7.0 из-за сжатых сроков разработки, а также и исправление всех найденных на тот момент ошибок, что было слишком объёмно для обычной «ненумерованной» версии. Соответственно, планировалось выпустить Shiloh не позже чем через год после выхода SQL Server 7.0.

Однако сразу несколько факторов повлияли на изменение первоначальной концепции Shiloh. Во-первых, вопреки ожиданиям лишь небольшая часть клиентов сомневалась в необходимости перехода на версию 7.0, причём показатели продаж новым клиентам превосходили самые смелые ожидания. Отзывы клиентов также были вполне благожелательными. Даже после выхода SQL Server 7.0 Microsoft продолжала держать лабораторию для разработчиков стороннего ПО, благодаря чему разработчики постоянно получали отзывы и замечания клиентов. Замечания и обнаруженные ошибки легко правились в обычном порядке и пакет исправлений для SQL Server 7.0 был выпущен в мае 1999 года. Второй пакет исправлений вышел в марте 2000 года. Таким образом, необходимость в суперсервис-паке, каким изначально выглядел Shiloh, отпала.

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

Ещё одним фактором была конкуренция между производителями СУБД, требовавшая, чтобы следующий релиз был больше и лучше, чем это изначально планировалось. Большое влияние оказала и «задача на миллион долларов», заданная Ларри Эллисоном из Oracle Corporation, наглядно выявившей ту часть функциональности, что была уже реализована в СУБД Oracle, но всё ещё отсутствовала в SQL Server. Добавление подобной функциональности далеко выходило за рамки простого исправления.

В итоге, было принято решение сделать Shiloh полноценным крупным релизом с 18-месячным циклом разработки, но с сохранением официального номера версии 7.5. Количество изменений на тот момент прогнозировалось с трудом, и единственным изменением, о котором на тот момент было точно известно, это усовершенствование каскадных обновлений и удалений. Вскоре стало ясно, что релиз уже вырастает за рамки первоначальных планов. Параллельно росла и команда разработчиков, переселившаяся из главного кампуса Microsoft в часть офисов сдвоенного здания. Увеличение числа разработчиков позволяло добавить в продукт большое количество средних и мелких доработок без какого-либо существенного сдвига сроков выпуска продукта.

Также разработчики помимо задач улучшения и увеличения функциональности поставили перед собой т. н. «гибкие задачи». Например, он объявили о необходимости добиться 20%-го прироста производительности для всех типов приложений, но для конкретизации задачи производилось сравнение с определёнными приложениями. Так, например, одной из главных целей было улучшение показателей производительности в тесте производительности SAP R/3 Sales and Distribution как минимум на 40 %. Для достижения поставленной задачи разработчиками были сделаны специальные изменения в оптимизаторе, напрямую влияющие на запросы от SAP, но при этом улучшающие и запросы от других приложений. 17 февраля 2000 года на мероприятии в честь выхода Windows 2000 в Сан-Фрациско были объявлены результаты измерения производительности в тесте Sales and Distribution, показавшие допустимую нагрузку в 6700 пользователей, что значительно превзошло показатели SQL Server 7.0 (4500 пользователей) на том же самом тесте и оборудовании (использовалась восьмипроцессорная машина с Pentium III-550). Таким образом, прирост производительности составил 48 %, и значит данная задача была выполнена.

После принятия решения о продлении срока разработки до 18 месяцев было принято ещё одно решение о добавлении новой функциональности. Данное решение содержалось в строжайшем секрете и не обсуждалось даже со многими руководителями в Microsoft. Новая функциональность не упоминалась даже после выхода первой бета-версии в ноябре 1999 года, и была публично представлена лишь в феврале на мероприятии в честь выхода Windows 2000. Этот тайный проект под кодовым именем Койот (англ. Coyote) был нацелен на добавление в SQL Server 2000 поддержки распределённых секционированных представлений, что позволило бы достичь высокой масштабируемости при работе с данными. Именно эта функциональность и позволила поставить мировой рекорд, о котором было объявлено в Сан-Франциско в феврале 2000 года. Изначально данные изменения масштабируемости были задуманы для версии, следующей за Shiloh, но поскольку большинство из необходимых компонентов уже фактически были готовы, то данную функциональность было решено добавить в SQL Server 2000. К этим изменениям относилось и расширение оптимизации объединяющих представлений, а также возможность обновлять такие представления.

Первая бета-версия Shiloh была выпущена для первых испытаний и тестирования бета-тестировщиками в сентябре 1999 года, а вскоре Microsoft объявила, что официальным названием новой версии продукта станет SQL Server 2000. Для подобной смены названий было две основные причины. Во-первых, в виду многочисленных и серьёзных изменений в новой версии было невыгодно выпускать её как промежуточную (7.5), а значит нужен был новый номер. Но во-вторых, если выпустить новую версию как 8.0, то получится, что из всего семейства Microsoft BackOffice это будет единственный продукт, не имеющий приставки 2000 в названии. Чтобы соблюсти единство названий продуктов было решено назвать продукт SQL Server 2000 (при этом внутренний номер версии всё равно выглядел как 8.00.194).

С точки зрения пользователя, SQL Server 2000 предоставлял ему гораздо больше возможностей чем предыдущая версия. SQL Server 7.0 обладал полностью переписанным движком, поддержкой новых хранимых структур, методов доступа к данным, технологий блокировки записей, алгоритмов восстановления, новой архитектурой логирования транзакций, новой архитектурой памяти и оптимизатором. Но несмотря на всё это, с точки зрения разработчика или администратора БД изменения и улучшения языка в SQL Server 7 были минимальными. SQL Server 2000 обладал многочисленными языковыми улучшениями, равно как и серьёзными изменениями в представленных ранее объектах, таких как например, табличные ограничения, представления и триггеры, в которых нуждались все разаботчики и большинство администраторов БД.

Поскольку внутренние изменения в движке были минимальны, то запланированы были лишь две бета-версии. Вторая бета-версия, вышедшая в апреле 2000 года, стала публичной бета-версией и была разослана тысячам заинтересованных пользователей, участникам специализированных конференций, сторонним разработчикам ПО и консультантам. Команда разработчиков заморозила код 6 августа 2000 года на версии 8.00.194.01, и 9 августа продукт был выпущен.

SQL Server 2005 (2000—2005)

Разработка следующей версии SQL Server, получившей кодовое обозначение Yukon, началась параллельно с подготовкой 64-битной версии SQL Server 2000 под кодовым названием Liberty. Liberty по функциональности представляла собой по сути ту же самую 32-битную версию, но отличие заключалось в значительно больших возможностях масштабирования. Новая же функциональность должен был быть реализован в составе Yukon.

В июле 2002 года Microsoft в рамках официальной презентации своей новой платформы .NET Framework объявила о том, что следующая версия SQL Server под кодовым названием Yukon сможет использовать возможности платформы .NET. В частности, было заявлено, что в Yukon будет проще управлять распределёнными данными[12].

24 апреля 2003 года на конференции в Сан-Франциско, посвящённой выходу Windows Server 2003, Microsoft объявила о выходе 64-битной версии SQL Server 2000 (ранее известной как Liberty). Согласно опубликованному пресс-релизу новая версия SQL Server 2000 была рассчитана на работу совместно с 64-битной версией Windows Server 2003. Третьим продуктом, представленным вместе с Windows Server 2003 и новой версией SQL Server 2000 стал Visual Studio .NET 2003. Данное трио продуктов, согласно замыслу Microsoft, представляло собой следующую ступень взаимосвязанности ОС, SQL-сервера и среды разработки, тем самым вплотную подойдя к переходу на единую платформу .NET Framework, что было в гораздо более полной мере реализовано в следующей версии SQL Server. В рамках презентации Стив Баллмер и Пол Отеллини ([en.wikipedia.org/wiki/Paul_Otellini en]) заявили, что сервер с установленной новой версией SQL Server 2000 поставил два новых рекорда согласно результатам тестов некоммерческой организации Transaction Processing Performance Council ([en.wikipedia.org/wiki/Transaction_Processing_Performance_Council en]). Как и в предыдущих случаях, новая версия была заранее установлена для тестирования крупным партнёрам Microsoft, среди которых назывались Корнелльский университет, Information Resources, Inc ([en.wikipedia.org/wiki/SymphonyIRI_Group en]), JetBlue Airways, Liberty Medical Supply ([en.wikipedia.org/wiki/Liberty_Medical en]) и Университет Джонса Хопкинса, в ответ на что официальные представители этих организаций дали положительную характеристику новому продукту[13].

Целью выпуска 64-битной версии было желание начать занимать ту часть рынка, которая раньше полностью принадлежала высокопроизводительным решениям на базе систем под управлением ОС UNIX. Несмотря на то, что функциональность по сути осталась неизменным относительно 32-битной версии, 64-битная версия могла работать со значительно большим объёмом памяти, доступ к которой реализовывала 64-битная система Windows Server 2003, за счёт чего новая версия SQL Server 2000 могла масштабироваться до уровня высокопроизводительных систем, с которыми конкурировать 32-битная версия не могла в силу своих ограничений. Покупателям 32-битной версии переход на новую версию предлагался без дополнительной платы[13].

В ноябре 2003 года на конференции PASS в Сиэттле руководители Microsoft рассказали о новых механизмах ETL, реализуемых в Yukon, при помощи которых реализовывался перенос ранее накопленной информации из существующих приложений в хранилища данных. С точки зрения Microsoft эти механизмы должны были стать одним из аргументов для привлечения корпоративных пользователей. Архитектура SQL Server ETL, реализуемая в Yukon, получила название Data Transformation Services (DTS). Как отметил Гордон Манжионе, вице-президент Microsoft и глава подразделения SQL Server Team, в DTS планировалось реализовать поддержку параллелизма, благодаря чему пользователи смогут одновременно выполнять несколько сложных задач, как например, трансляция данных, их чтение и перезапись в одном потоке[14].

Помимо ETL упор делался и на упрощение конфигурирования и управления СУБД, а также улучшение масштабируемости. В частности, представители Microsoft заявляли, что, к примеру, процесс, охватывающий миллионы колонок данных, благодаря увеличению масштабируемости сможет выполняться в течение нескольких секунд, а не минут. Кроме того, в новую версию SQL Server планировалось включить функции, упрощающие создание хранилищ данных и управление ими, а также выполнение операций, связанных с интеллектуальной поддержкой бизнеса. Разработчикам Microsoft обещала новый API, поддерживающий платформу .NET (и язык Visual Basic в частности), избавляя тем самым от необходимости использовать специфический код DTS[14].

Также во время конференции Манжионе объявил о завершении работ по созданию продукта Best Practices Analyzer для SQL Server 2000, поддерживающий список из 70 правил, составленный совместно разработчиками Microsoft и пользователями SQL Server. Такой список должен был упростить процесс конфигурирования СУБД администраторами баз данных и помочь им избежать самых распространенных ошибок. При этом поддерживались функции резервного копирования и восстановления после сбоев, а также управления СУБД и контроля производительности. Манжионе пообещал, что корпорация будет обновлять этот инструментарий ежеквартально[14].

SQL Server 2008 (2005—2008)

Версия SQL Server, которая должна была заменить SQL Server 2005, получила кодовое имя Katmai. В период активной разработки Microsoft крайне неохотно делилась информацией о новой версии. На презентации SQL Server 2005 Пол Флесснер (на тот момент занимавший пост вице-президента подразделения Microsoft, занимавшегося разработкой SQL Server), уверенно заявил, что выход новой версии состоится не позднее, чем через два года после выхода SQL Server 2005. Однако в апреле 2007 года ещё не было никакой информации о скором выходе продукта, или хотя бы о начале его бета-тестирования. Тем не менее, в австрийском блоге на TechNet была опубликована информация о программе Katmai Technology Adoption Program (сокр. TAP), начало которой было якобы запланировано на июнь 2007 года. Также были упомянуты слухи о том, что новая версия выйдет в 2008 году, но Microsoft на тот момент ни подтверждала, ни отрицала эту информацию. Некоторые источники привязывали выход Katmai к выходу Longhorn Server and Visual Studio Orcas, из-за чего согласно этой информации новая версия должна была выйти в первой половине 2008 года. Microsoft также отказывалась комментировать эту информацию[15].

Тем не менее, некоторые журналисты, общавшиеся с представителями корпорации, заявляли о том, что слухи о выходе Katmai в 2008 году вполне соответствуют внутренним планам самой Microsoft. А отказ корпорации разглашать какую-либо информацию о новой версии связывался с переходом на новую модель разработки, причём именно из-за этого Katmai вряд ли должен был выйти в начале 2008 года. Также упоминалось о том, что Katmai не получит этапа официального бета-тестирования, а вместо этого публичное тестирование пройдёт в рамках программы Community Technology Preview (сокр. CTP). При этом утверждалось, что некоторые клиенты Microsoft уже в апреле 2007 года имели на тестировании некоторые части Katmai, не имея при этом на руках релиза целиком. Что касается функциональности новой версии, то журналисты писали о том, что Katmai будет представлять собой лишь развитие SQL Server 2005, а не новое поколение продукта, которым в своё время как раз и стал SQL Server 2005[15].

SQL Server 2008 R2 (2008—2010)

Разработка

Бета-версии

Выход

SQL Server 2008 R2 официально стала доступна для покупки 21 апреля 2010 года.

В конце 2010 года вице-президент подразделения Microsoft Business Platform Division Тед Каммерт сообщил, что новая версия «внедряется весьма быстро», в частности, за два месяца после выхода продукта «он был загружен по каналам Интернета около 700 тысяч раз», что, по его словам, стало «самым высоким показателем для новой версии SQL Server»[16].

SQL Server 2012 (2010—2012)

Разработка

Параллельно с этим, 30 июня 2010 года Скотт Гатри в своём блоге анонсировал выход новой мобильной версии SQL Server — SQL Server Compact 4.0, ориентированной в первую очередь на веб-приложения, созданные на основе технологии ASP.NET 4. В качестве достоинств новой версии Гатри выделил отсутствие необходимости в установке программы, а также совместимость с API .NET Framework (поддержка технологий ADO.NET, Entity Framework, NHibernate и др., возможность работы с Visual Studio 2010 и Visual Web Developer 2010 Express) и последними на тот момент версиями SQL Server и SQL Azure[17].

7 июля 2010 года Амбриш Мишра, менеджер проекта SQL Server Compact, в официальном блоге команды разработчиков SQL Server CE представил версию CTP1 нового SQL Server Compact 4.0. В качестве нововведений (помимо указанных Скоттом Гатри) указывались повышенная надёжность, улучшение алгоритма шифрования SHA 2, совместимость с файлами БД версии Compact 3.5, упрощение установки (в том числе и поддержка режимов WOW64 и 64-битных естественных приложений), снижение использования виртуальной памяти, технология делегирования полномочий Allow Partially Trusted Caller’s Attribute (APTCA), поддержка WebMatrix Beta и Visual Studio 2010, поддержка Paging Queries в языке T-SQL. При этом версия CTP1 обладала определёнными проблемами (некорректная работа деинсталляции через командную строку, проблемы с совместимостью с актуальной на тот момент версией ADO.NET Entity Framework CTP3 и др.)[18].

Бета-версии

Во время конференции PASS Summit, проходившей с 8 по 11 ноября 2010 года в Сиэттле, её участникам (а также подписчикам MSDN и TechNet) раздавались копии CTP-варианта Denali (через некоторое время эта версия была выложена на официальном сайте Microsoft). На самой конференции Тед Каммерт и Квентин Кларк, генеральный менеджер подразделения Microsoft Database Systems Group, представляя новую версию, рассказали о новой функции AlwaysOn и технологии VertiPac (входящей в состав служб аналитики SQL Server и хранилищ данных). Также упор был сделан на развитие инструментов бизнес-аналитики в новой версии, интерактивных средств виртуализации на базе Web (проект Crescent), а также инструментов для разработчиков под кодовым названием Juneau[16].

22 декабря 2010 года Амбриш Мишра в официальном блоге команды разработчиков объявил о выходе версии SQL Server Compact 4.0 CTP2 и наборе инструментов Visual Studio 2010 для работы с этой версией SQL Sever CE[19].

Финальная версия SQL Server Compact 4.0 официально была выложена на сайте Microsoft 12 января 2011 года, завершив таким образом этап разработки длиной примерно год[20].

11 июля 2011 года команда разработчиков SQL Server в своём официальном блоге объявила о выходе версии Community Technology Preview 3 (сокр. CTP3) и первом сервис-паке для SQL Server 2008 R2[21]. В качестве самых существенных нововведений (относительно SQL Server 2008 R2), реализованных в CTP3-версии нового продукта, аналитики отмечали компонент SQL Server AlwaysOn для создания резервных копий БД, возможность устанавливать SQL Server в среде Windows Server Core, столбцовую организацию хранения данных для ускорения выполнения запросов, усовершенствования языка T-SQL (введение объектов Sequence и оконных функций), возможность отслеживать изменение данных (CDC) для СУБД Oracle, возможность определения пользователем ролей сервера (ранее они были жёстко закреплены), службы управления качеством данных Data Quality Services (базы знаний, определяющие правила метаданных), новый инструмент визуализации данных под названием «Проект Crescent», поддержку автономных баз данных (для перемещения между локальными экземплярами SQL Server и SQL Azure) и новую среду разработки SQL Server Developer Tools под кодовым названием Juneau[22].

SQL Server 2008 R2 SP1 содержал исправления ошибок, на которые Microsoft получила жалобы от клиентов через службу Windows Error Reporting, а также некоторые улучшения функциональности (динамические административные представления (англ. Dynamic Management Views), повышение скорости выполнения запросов при помощи технологии ForceSeek, технология Data-tier Application Component Framework (сокр. DAC Fx) для упрощения обновления БД, контроль доступного места на жёстком диске для PowerPivot)[21].

Выход

SQL Server 2014

В конце 2010 года (то есть до выхода SQL Server 2012) вице-президент подразделения Microsoft Business Platform Division Тед Каммерт в интервью рассказал о планах по дальнейшему развитию продукта (как версии SQL Server 2012, так и будущих версий). В частности, Каммерт рассказал о том, что работа над SQL Server идёт в контексте идей Information Platform Vision, представляющей собой набор разнообразных возможностей, который ложится в основу платформы. SQL Server будет по-прежнему представлять собой единый продукт, реализуемый в настольных системах, в центрах обработки данных и в «облаке» (как в 32-битном, так и 64-битном варианте). Одним из приоритетных направлений по-прежнему останется бизнес-аналитика (англ. business intelligence, BI). С точки зрения Microsoft приоритетом в области бизнес-аналитики останется разработка средств BI, реализующих принцип самообслуживания, а также развитие экосистемы «облачных» вычислений. Кроме того, Microsoft при переносе средств бизнес-аналитики в «облака» по-прежнему работает над реализацией принципа согласованности относительно реализуемых моделей программирования и инструментальных средств (это подразумевает, в частности, наращивание возможностей работы SQL Server Management Studio со средой SQL Azure). Также большое внимание уделено вопросам масштабирования СУБД (при этом лимит системы SQL Server должен быть увеличен до порога в несколько сот терабайтов), виртуализации приложений в среде баз данных, а также пространственному представлению данных[16].

Релиз SQL Server 2014 стал доступен 1 апреля 2014 года.

SQL Server 2016

В настоящее время разрабатывается SQL Server 2016[23], доступен General Availability (GA) релиз для него[24].

Напишите отзыв о статье "Microsoft SQL Server"

Примечания

  1. 1 2 3 4 5 Nicholas Petreley, Alex Khaloghli, Scott Mace [books.google.ru/books?id=pjAEAAAAMBAJ&pg=PT72&dq=SQL+Server&hl=ru&sa=X&ei=PPJpT6rmI46EhQfWz8ipCg&ved=0CF0Q6AEwBjgU#v=onepage&q=SQL%20Server&f=false Ashton-Tate/Microsoft SQL Server: PC databases enter a new era] // InfoWorld : журнал. — США: InfoWorld Media Group, Inc., 1989. — Т. 11, № 41. — С. 55-75. — ISSN [www.sigla.ru/table.jsp?f=8&t=3&v0=0199-6649&f=1003&t=1&v1=&f=4&t=2&v2=&f=21&t=3&v3=&f=1016&t=3&v4=&f=1016&t=3&v5=&bf=4&b=&d=0&ys=&ye=&lng=&ft=&mt=&dt=&vol=&pt=&iss=&ps=&pe=&tr=&tro=&cc=UNION&i=1&v=tagged&s=0&ss=0&st=0&i18n=ru&rlf=&psz=20&bs=20&ce=hJfuypee8JzzufeGmImYYIpZKRJeeOeeWGJIZRrRRrdmtdeee88NJJJJpeeefTJ3peKJJ3UWWPtzzzzzzzzzzzzzzzzzbzzvzzpy5zzjzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzztzzzzzzzbzzzzzzzzzzzzzzzzzzzzzzzzzzzvzzzzzzyeyTjkDnyHzTuueKZePz9decyzzLzzzL*.c8.NzrGJJvufeeeeeJheeyzjeeeeJh*peeeeKJJJJJJJJJJmjHvOJJJJJJJJJfeeeieeeeSJJJJJSJJJ3TeIJJJJ3..E.UEAcyhxD.eeeeeuzzzLJJJJ5.e8JJJheeeeeeeeeeeeyeeK3JJJJJJJJ*s7defeeeeeeeeeeeeeeeeeeeeeeeeeSJJJJJJJJZIJJzzz1..6LJJJJJJtJJZ4....EK*&debug=false 0199-6649].
  2. 1 2 [www.os2museum.com/wp/?page_id=313 OS/2 1.0] (англ.). OS/2 Museum. Проверено 16 мая 2012. [www.webcitation.org/683a25hO5 Архивировано из первоисточника 31 мая 2012].
  3. 1 2 3 Karen Watterson [www.accessmylibrary.com/coms2/summary_0286-9205484_ITM Soul of a new machine] // Data Based Advisor : журнал. — США: Advisor Publications, Inc., 1989. [archive.is/psDrN Архивировано] из первоисточника 16 января 2013.
  4. 1 2 3 [corphist.computerhistory.org/corphist/documents/doc-442db382bbf71.pdf Ashton-Tate and Microsoft form long-term strategic alliance to market SQL Server for local area networks] (англ.). Microsoft, Ashton-Tate (13 January 1988). Проверено 25 апреля 2012. [www.webcitation.org/683a2iuGX Архивировано из первоисточника 31 мая 2012].
  5. 1 2 [corphist.computerhistory.org/corphist/documents/doc-44346c69341c4.pdf Microsoft and Ashton-Tate ship SQL Server Network Developer’s Kit] (англ.). Microsoft, Ashton-Tate (1 November 1988). Проверено 24 апреля 2012. [www.webcitation.org/683a3JxFo Архивировано из первоисточника 31 мая 2012].
  6. 1 2 3 4 5 6 Scott Mace [books.google.ru/books?id=CjwEAAAAMBAJ&pg=PA29&dq=SQL+Server&hl=ru&sa=X&ei=i5hgT5nvM4qB4ATI8q3QCA&ved=0CFUQ6AEwBA#v=onepage&q=SQL%20Server&f=false Microsoft Ships SQL Server 1.1] // InfoWorld : журнал. — США: InfoWorld Media Group, Inc., 1990. — Т. 12, № 34. — С. 29. — ISSN [www.sigla.ru/table.jsp?f=8&t=3&v0=0199-6649&f=1003&t=1&v1=&f=4&t=2&v2=&f=21&t=3&v3=&f=1016&t=3&v4=&f=1016&t=3&v5=&bf=4&b=&d=0&ys=&ye=&lng=&ft=&mt=&dt=&vol=&pt=&iss=&ps=&pe=&tr=&tro=&cc=UNION&i=1&v=tagged&s=0&ss=0&st=0&i18n=ru&rlf=&psz=20&bs=20&ce=hJfuypee8JzzufeGmImYYIpZKRJeeOeeWGJIZRrRRrdmtdeee88NJJJJpeeefTJ3peKJJ3UWWPtzzzzzzzzzzzzzzzzzbzzvzzpy5zzjzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzztzzzzzzzbzzzzzzzzzzzzzzzzzzzzzzzzzzzvzzzzzzyeyTjkDnyHzTuueKZePz9decyzzLzzzL*.c8.NzrGJJvufeeeeeJheeyzjeeeeJh*peeeeKJJJJJJJJJJmjHvOJJJJJJJJJfeeeieeeeSJJJJJSJJJ3TeIJJJJ3..E.UEAcyhxD.eeeeeuzzzLJJJJ5.e8JJJheeeeeeeeeeeeyeeK3JJJJJJJJ*s7defeeeeeeeeeeeeeeeeeeeeeeeeeSJJJJJJJJZIJJzzz1..6LJJJJJJtJJZ4....EK*&debug=false 0199-6649].
  7. Scott Mace [books.google.ru/books?id=CjwEAAAAMBAJ&pg=PA29&dq=SQL+Server&hl=ru&sa=X&ei=i5hgT5nvM4qB4ATI8q3QCA&ved=0CFUQ6AEwBA#v=onepage&q=SQL%20Server&f=false Microsoft's SQL Server Faces Slow Initial Sales] // InfoWorld : журнал. — США: InfoWorld Media Group, Inc., 1990. — Т. 12, № 34. — С. 1, 8. — ISSN [www.sigla.ru/table.jsp?f=8&t=3&v0=0199-6649&f=1003&t=1&v1=&f=4&t=2&v2=&f=21&t=3&v3=&f=1016&t=3&v4=&f=1016&t=3&v5=&bf=4&b=&d=0&ys=&ye=&lng=&ft=&mt=&dt=&vol=&pt=&iss=&ps=&pe=&tr=&tro=&cc=UNION&i=1&v=tagged&s=0&ss=0&st=0&i18n=ru&rlf=&psz=20&bs=20&ce=hJfuypee8JzzufeGmImYYIpZKRJeeOeeWGJIZRrRRrdmtdeee88NJJJJpeeefTJ3peKJJ3UWWPtzzzzzzzzzzzzzzzzzbzzvzzpy5zzjzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzztzzzzzzzbzzzzzzzzzzzzzzzzzzzzzzzzzzzvzzzzzzyeyTjkDnyHzTuueKZePz9decyzzLzzzL*.c8.NzrGJJvufeeeeeJheeyzjeeeeJh*peeeeKJJJJJJJJJJmjHvOJJJJJJJJJfeeeieeeeSJJJJJSJJJ3TeIJJJJ3..E.UEAcyhxD.eeeeeuzzzLJJJJ5.e8JJJheeeeeeeeeeeeyeeK3JJJJJJJJ*s7defeeeeeeeeeeeeeeeeeeeeeeeeeSJJJJJJJJZIJJzzz1..6LJJJJJJtJJZ4....EK*&debug=false 0199-6649].
  8. Scott Mace, Kristi Coale [books.google.ru/books?id=CjwEAAAAMBAJ&pg=PA29&dq=SQL+Server&hl=ru&sa=X&ei=i5hgT5nvM4qB4ATI8q3QCA&ved=0CFUQ6AEwBA#v=onepage&q=SQL%20Server&f=false Q+E 2.5 Delivers DDE Link for Excel-SQL Server] // InfoWorld : журнал. — США: InfoWorld Media Group, Inc., 1990. — Т. 12, № 34. — С. 17. — ISSN [www.sigla.ru/table.jsp?f=8&t=3&v0=0199-6649&f=1003&t=1&v1=&f=4&t=2&v2=&f=21&t=3&v3=&f=1016&t=3&v4=&f=1016&t=3&v5=&bf=4&b=&d=0&ys=&ye=&lng=&ft=&mt=&dt=&vol=&pt=&iss=&ps=&pe=&tr=&tro=&cc=UNION&i=1&v=tagged&s=0&ss=0&st=0&i18n=ru&rlf=&psz=20&bs=20&ce=hJfuypee8JzzufeGmImYYIpZKRJeeOeeWGJIZRrRRrdmtdeee88NJJJJpeeefTJ3peKJJ3UWWPtzzzzzzzzzzzzzzzzzbzzvzzpy5zzjzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzztzzzzzzzbzzzzzzzzzzzzzzzzzzzzzzzzzzzvzzzzzzyeyTjkDnyHzTuueKZePz9decyzzLzzzL*.c8.NzrGJJvufeeeeeJheeyzjeeeeJh*peeeeKJJJJJJJJJJmjHvOJJJJJJJJJfeeeieeeeSJJJJJSJJJ3TeIJJJJ3..E.UEAcyhxD.eeeeeuzzzLJJJJ5.e8JJJheeeeeeeeeeeeyeeK3JJJJJJJJ*s7defeeeeeeeeeeeeeeeeeeeeeeeeeSJJJJJJJJZIJJzzz1..6LJJJJJJtJJZ4....EK*&debug=false 0199-6649].
  9. Louise Fickel [books.google.ru/books?id=mVAEAAAAMBAJ&pg=PA33&lpg=PA33&dq=SQL+Server+1.11&source=bl&ots=4VGhapnilf&sig=uew2xeq2-HzuXVinOKiiI-ipxVo&hl=ru&sa=X&ei=q4NMT67iCYWE4gTdqO3fAg&ved=0CD0Q6AEwBTgK#v=onepage&q=SQL%20Server%201.11&f=false Microsoft offers client/server developers' group.] // InfoWorld : журнал. — США: InfoWorld Media Group, Inc., 1991. — Т. 13, № 30. — С. 88. — ISSN [www.sigla.ru/table.jsp?f=8&t=3&v0=0199-6649&f=1003&t=1&v1=&f=4&t=2&v2=&f=21&t=3&v3=&f=1016&t=3&v4=&f=1016&t=3&v5=&bf=4&b=&d=0&ys=&ye=&lng=&ft=&mt=&dt=&vol=&pt=&iss=&ps=&pe=&tr=&tro=&cc=UNION&i=1&v=tagged&s=0&ss=0&st=0&i18n=ru&rlf=&psz=20&bs=20&ce=hJfuypee8JzzufeGmImYYIpZKRJeeOeeWGJIZRrRRrdmtdeee88NJJJJpeeefTJ3peKJJ3UWWPtzzzzzzzzzzzzzzzzzbzzvzzpy5zzjzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzztzzzzzzzbzzzzzzzzzzzzzzzzzzzzzzzzzzzvzzzzzzyeyTjkDnyHzTuueKZePz9decyzzLzzzL*.c8.NzrGJJvufeeeeeJheeyzjeeeeJh*peeeeKJJJJJJJJJJmjHvOJJJJJJJJJfeeeieeeeSJJJJJSJJJ3TeIJJJJ3..E.UEAcyhxD.eeeeeuzzzLJJJJ5.e8JJJheeeeeeeeeeeeyeeK3JJJJJJJJ*s7defeeeeeeeeeeeeeeeeeeeeeeeeeSJJJJJJJJZIJJzzz1..6LJJJJJJtJJZ4....EK*&debug=false 0199-6649].
  10. Scott Mace [books.google.ru/books?id=mVAEAAAAMBAJ&pg=PA33&lpg=PA33&dq=SQL+Server+1.11&source=bl&ots=4VGhapnilf&sig=uew2xeq2-HzuXVinOKiiI-ipxVo&hl=ru&sa=X&ei=q4NMT67iCYWE4gTdqO3fAg&ved=0CD0Q6AEwBTgK#v=onepage&q=SQL%20Server%201.11&f=false SQL Server sports better LAN supports. Microsoft offers SQL Commander.] // InfoWorld : журнал. — США: InfoWorld Media Group, Inc., 1991. — Т. 13, № 30. — С. 33. — ISSN [www.sigla.ru/table.jsp?f=8&t=3&v0=0199-6649&f=1003&t=1&v1=&f=4&t=2&v2=&f=21&t=3&v3=&f=1016&t=3&v4=&f=1016&t=3&v5=&bf=4&b=&d=0&ys=&ye=&lng=&ft=&mt=&dt=&vol=&pt=&iss=&ps=&pe=&tr=&tro=&cc=UNION&i=1&v=tagged&s=0&ss=0&st=0&i18n=ru&rlf=&psz=20&bs=20&ce=hJfuypee8JzzufeGmImYYIpZKRJeeOeeWGJIZRrRRrdmtdeee88NJJJJpeeefTJ3peKJJ3UWWPtzzzzzzzzzzzzzzzzzbzzvzzpy5zzjzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzztzzzzzzzbzzzzzzzzzzzzzzzzzzzzzzzzzzzvzzzzzzyeyTjkDnyHzTuueKZePz9decyzzLzzzL*.c8.NzrGJJvufeeeeeJheeyzjeeeeJh*peeeeKJJJJJJJJJJmjHvOJJJJJJJJJfeeeieeeeSJJJJJSJJJ3TeIJJJJ3..E.UEAcyhxD.eeeeeuzzzLJJJJ5.e8JJJheeeeeeeeeeeeyeeK3JJJJJJJJ*s7defeeeeeeeeeeeeeeeeeeeeeeeeeSJJJJJJJJZIJJzzz1..6LJJJJJJtJJZ4....EK*&debug=false 0199-6649].
  11. 1 2 3 4 5 6 7 8 9 10 11 Джон Корнетто, Клэр Хани [www.osp.ru/cw/1998/45/32714/ SQL Server 7.0 выходит «в большой свет»] // «Computerworld Россия» : журнал. — Москва: «Открытые системы», 1998. — № 45.
  12. John Markoff. [www.nytimes.com/2002/07/25/technology/25NET.html?pagewanted=all Microsoft Tries to Explain What Its .Net Plans Are About] (англ.). The New York Times (25 July 2002). Проверено 16 мая 2012. [www.webcitation.org/683a3rbOR Архивировано из первоисточника 31 мая 2012].
  13. 1 2 [www.microsoft.com/en-us/news/press/2003/apr03/04-2464bitsqlpr.aspx New 64-bit SQL Server 2000 Enhances Performance and ScalabilityOf the Microsoft Platform] (англ.). Microsoft (24 April 2003). Проверено 13 мая 2012. [www.webcitation.org/683a4b1q9 Архивировано из первоисточника 31 мая 2012].
  14. 1 2 3 Марк Сонгини [www.osp.ru/cw/2003/47/71508/ Долгая дорога на Yukon] // «Computerworld Россия» : журнал. — Москва: «Открытые системы», 2003. — № 47.
  15. 1 2 Karen Forster. [www.windowsitpro.com/article/news2/sql-server-katmai-rumors-and-orcas-beta-1 SQL Server Katmai Rumors and Orcas Beta 1. Katmai in '08 and news on Visual Studio Orcas.] (англ.). Windows IT Pro (22 April 2007). Проверено 19 апреля 2012. [www.webcitation.org/683a5S37n Архивировано из первоисточника 31 мая 2012].
  16. 1 2 3 Майкл Оти, Шейла Молнар [www.osp.ru/win2000/2011/01/13008260/ Будущее SQL Server: прогноз Теда Каммерта] // Windows IT Pro/RE : журнал. — Москва: «Открытые системы», 2011. — № 01.
  17. Scott Guthrie. [weblogs.asp.net/scottgu/archive/2010/06/30/new-embedded-database-support-with-asp-net.aspx New Embedded Database Support with ASP.NET] (англ.). [weblogs.asp.net/scottgu/ Scott Guthrie's Blog] (30 June 2010). Проверено 30 апреля 2012. [www.webcitation.org/683a6PTvY Архивировано из первоисточника 31 мая 2012].
  18. Ambrish Mishra. [blogs.msdn.com/b/sqlservercompact/archive/2010/07/07/introducing-sql-server-compact-4-0-the-next-gen-embedded-database-from-microsoft.aspx Introducing SQL Server Compact 4.0, the Next Gen Embedded Database from Microsoft] (англ.). [blogs.msdn.com/b/sqlservercompact/ SQL CE Team's Blog] (7 July 2010). Проверено 3 мая 2012. [www.webcitation.org/683a78yGy Архивировано из первоисточника 31 мая 2012].
  19. Ambrish Mishra. [blogs.msdn.com/b/sqlservercompact/archive/2010/12/22/downloads-available-for-sql-server-compact-4-0-ctp2-visual-studio-2010-sp1-beta-tools-for-sql-server-compact-4-0-ctp2-and-cms-mojoportal-orchard-and-umbraco-that-work-with-sql-server-compact.aspx Downloads Available for SQL Server Compact 4.0 CTP2, Visual Studio 2010 SP1 Beta Tools for SQL Server Compact 4.0 CTP2, and CMS (mojoPortal, Orchard and Umbraco) that work with SQL Server Compact] (англ.). [blogs.technet.com/b/dataplatforminsider/ SQL Server CE Team Blog] (22 December 2010). Проверено 3 мая 2012. [www.webcitation.org/683a89E36 Архивировано из первоисточника 31 мая 2012].
  20. Ambrish Mishra. [blogs.msdn.com/b/sqlservercompact/archive/2011/01/12/microsoft-sql-server-compact-4-0-is-available-for-download.aspx Microsoft SQL Server Compact 4.0 is available for download] (англ.). [blogs.technet.com/b/dataplatforminsider/ SQL Server CE Team Blog] (12 January 2011). Проверено 3 мая 2012. [www.webcitation.org/683a92bRh Архивировано из первоисточника 31 мая 2012].
  21. 1 2 SQL Server Team. [blogs.technet.com/b/dataplatforminsider/archive/2011/07/11/sql-server-code-name-denali-ctp3-is-here.aspx SQL Server Code Name “Denali” CTP3 and SQL Server 2008 R2 SP1 are HERE!] (англ.). [blogs.technet.com/b/dataplatforminsider/ SQL Server Team Blog] (11 July 2011). Проверено 19 апреля 2012. [www.webcitation.org/683a9sq73 Архивировано из первоисточника 31 мая 2012].
  22. Майкл Оти [www.osp.ru/win2000/2011/11/13013134/ Новые компоненты в SQL Server Denali] // Windows IT Pro/RE : журнал. — Москва: «Открытые системы», 2011. — № 11.
  23. [blogs.technet.com/b/dataplatforminsider/archive/2015/05/04/sql-server-2016-public-preview-coming-this-summer.aspx SQL Server 2016 public preview coming this summer] (4 мая 2015). Проверено 5 декабря 2015.
  24. [technet.microsoft.com/en-us/library/bb500435.aspx SQL Server 2016 Release Notes] (2 декабря 2015). Проверено 5 декабря 2015.

Литература

  • Роберт Э. Уолтерс, Майкл Коулс. SQL Server 2008: ускоренный курс для профессионалов = Accelerated SQL Server 2008. — М.: «Вильямс», 2008. — С. 768. — ISBN 978-5-8459-1481-1.
  • Роберт Виейра. Программирование баз данных Microsoft SQL Server 2005. Базовый курс = Beginning Microsoft SQL Server 2005 Programming. — М.: «Диалектика», 2007. — С. 832. — ISBN 0-7645-8433-2.
  • Майк Гандерлой, Джозеф Джорден, Дейвид Чанц. Освоение Microsoft SQL Server 2005 = Mastering Microsoft SQL Server 2005. — М.: «Диалектика», 2007. — С. 1104. — ISBN 0-7821-4380-6.
  • Microsoft® SQL Server™ 2005.Реализация и обслуживание. Учебный курс Microsoft (Экзамен 70-431). — М.: «Питер», 2007. — С. 767. — ISBN 978-5-91180-3.
  • Петкович Д. Microsoft SQL Server 2008. Руководство для начинающих. — C.: БХВ-Петербург, 2009. — С. 752. — ISBN 978-5-9775-0149-1.

Ссылки

  • Microsoft. [www.youtube.com/watch?v=fSN2ihUkSCk The History of SQL Server (1989 - 2012)] (англ.). Youtube (15 February 2012). Проверено 17 мая 2012.
  • Scott Whigham. [www.youtube.com/watch?v=-MTA_4Oj1wM The History of SQL Server, Part 1 (1989 - 1998)] (англ.). LearnItFirst.com / Youtube (12 May 2010). Проверено 17 мая 2012.
  • Scott Whigham. [www.youtube.com/watch?v=MSSfe7HxAHQ The History of SQL Server, Part 2 (2000 - 2008)] (англ.). LearnItFirst.com / Youtube (12 May 2010). Проверено 17 мая 2012.

Отрывок, характеризующий Microsoft SQL Server

Скоро после дядюшки отворила дверь, по звуку ног очевидно босая девка, и в дверь с большим уставленным подносом в руках вошла толстая, румяная, красивая женщина лет 40, с двойным подбородком, и полными, румяными губами. Она, с гостеприимной представительностью и привлекательностью в глазах и каждом движеньи, оглянула гостей и с ласковой улыбкой почтительно поклонилась им. Несмотря на толщину больше чем обыкновенную, заставлявшую ее выставлять вперед грудь и живот и назад держать голову, женщина эта (экономка дядюшки) ступала чрезвычайно легко. Она подошла к столу, поставила поднос и ловко своими белыми, пухлыми руками сняла и расставила по столу бутылки, закуски и угощенья. Окончив это она отошла и с улыбкой на лице стала у двери. – «Вот она и я! Теперь понимаешь дядюшку?» сказало Ростову ее появление. Как не понимать: не только Ростов, но и Наташа поняла дядюшку и значение нахмуренных бровей, и счастливой, самодовольной улыбки, которая чуть морщила его губы в то время, как входила Анисья Федоровна. На подносе были травник, наливки, грибки, лепешечки черной муки на юраге, сотовой мед, мед вареный и шипучий, яблоки, орехи сырые и каленые и орехи в меду. Потом принесено было Анисьей Федоровной и варенье на меду и на сахаре, и ветчина, и курица, только что зажаренная.
Всё это было хозяйства, сбора и варенья Анисьи Федоровны. Всё это и пахло и отзывалось и имело вкус Анисьи Федоровны. Всё отзывалось сочностью, чистотой, белизной и приятной улыбкой.
– Покушайте, барышня графинюшка, – приговаривала она, подавая Наташе то то, то другое. Наташа ела все, и ей показалось, что подобных лепешек на юраге, с таким букетом варений, на меду орехов и такой курицы никогда она нигде не видала и не едала. Анисья Федоровна вышла. Ростов с дядюшкой, запивая ужин вишневой наливкой, разговаривали о прошедшей и о будущей охоте, о Ругае и Илагинских собаках. Наташа с блестящими глазами прямо сидела на диване, слушая их. Несколько раз она пыталась разбудить Петю, чтобы дать ему поесть чего нибудь, но он говорил что то непонятное, очевидно не просыпаясь. Наташе так весело было на душе, так хорошо в этой новой для нее обстановке, что она только боялась, что слишком скоро за ней приедут дрожки. После наступившего случайно молчания, как это почти всегда бывает у людей в первый раз принимающих в своем доме своих знакомых, дядюшка сказал, отвечая на мысль, которая была у его гостей:
– Так то вот и доживаю свой век… Умрешь, – чистое дело марш – ничего не останется. Что ж и грешить то!
Лицо дядюшки было очень значительно и даже красиво, когда он говорил это. Ростов невольно вспомнил при этом всё, что он хорошего слыхал от отца и соседей о дядюшке. Дядюшка во всем околотке губернии имел репутацию благороднейшего и бескорыстнейшего чудака. Его призывали судить семейные дела, его делали душеприказчиком, ему поверяли тайны, его выбирали в судьи и другие должности, но от общественной службы он упорно отказывался, осень и весну проводя в полях на своем кауром мерине, зиму сидя дома, летом лежа в своем заросшем саду.
– Что же вы не служите, дядюшка?
– Служил, да бросил. Не гожусь, чистое дело марш, я ничего не разберу. Это ваше дело, а у меня ума не хватит. Вот насчет охоты другое дело, это чистое дело марш! Отворите ка дверь то, – крикнул он. – Что ж затворили! – Дверь в конце коридора (который дядюшка называл колидор) вела в холостую охотническую: так называлась людская для охотников. Босые ноги быстро зашлепали и невидимая рука отворила дверь в охотническую. Из коридора ясно стали слышны звуки балалайки, на которой играл очевидно какой нибудь мастер этого дела. Наташа уже давно прислушивалась к этим звукам и теперь вышла в коридор, чтобы слышать их яснее.
– Это у меня мой Митька кучер… Я ему купил хорошую балалайку, люблю, – сказал дядюшка. – У дядюшки было заведено, чтобы, когда он приезжает с охоты, в холостой охотнической Митька играл на балалайке. Дядюшка любил слушать эту музыку.
– Как хорошо, право отлично, – сказал Николай с некоторым невольным пренебрежением, как будто ему совестно было признаться в том, что ему очень были приятны эти звуки.
– Как отлично? – с упреком сказала Наташа, чувствуя тон, которым сказал это брат. – Не отлично, а это прелесть, что такое! – Ей так же как и грибки, мед и наливки дядюшки казались лучшими в мире, так и эта песня казалась ей в эту минуту верхом музыкальной прелести.
– Еще, пожалуйста, еще, – сказала Наташа в дверь, как только замолкла балалайка. Митька настроил и опять молодецки задребезжал Барыню с переборами и перехватами. Дядюшка сидел и слушал, склонив голову на бок с чуть заметной улыбкой. Мотив Барыни повторился раз сто. Несколько раз балалайку настраивали и опять дребезжали те же звуки, и слушателям не наскучивало, а только хотелось еще и еще слышать эту игру. Анисья Федоровна вошла и прислонилась своим тучным телом к притолке.
– Изволите слушать, – сказала она Наташе, с улыбкой чрезвычайно похожей на улыбку дядюшки. – Он у нас славно играет, – сказала она.
– Вот в этом колене не то делает, – вдруг с энергическим жестом сказал дядюшка. – Тут рассыпать надо – чистое дело марш – рассыпать…
– А вы разве умеете? – спросила Наташа. – Дядюшка не отвечая улыбнулся.
– Посмотри ка, Анисьюшка, что струны то целы что ль, на гитаре то? Давно уж в руки не брал, – чистое дело марш! забросил.
Анисья Федоровна охотно пошла своей легкой поступью исполнить поручение своего господина и принесла гитару.
Дядюшка ни на кого не глядя сдунул пыль, костлявыми пальцами стукнул по крышке гитары, настроил и поправился на кресле. Он взял (несколько театральным жестом, отставив локоть левой руки) гитару повыше шейки и подмигнув Анисье Федоровне, начал не Барыню, а взял один звучный, чистый аккорд, и мерно, спокойно, но твердо начал весьма тихим темпом отделывать известную песню: По у ли и ице мостовой. В раз, в такт с тем степенным весельем (тем самым, которым дышало всё существо Анисьи Федоровны), запел в душе у Николая и Наташи мотив песни. Анисья Федоровна закраснелась и закрывшись платочком, смеясь вышла из комнаты. Дядюшка продолжал чисто, старательно и энергически твердо отделывать песню, изменившимся вдохновенным взглядом глядя на то место, с которого ушла Анисья Федоровна. Чуть чуть что то смеялось в его лице с одной стороны под седым усом, особенно смеялось тогда, когда дальше расходилась песня, ускорялся такт и в местах переборов отрывалось что то.
– Прелесть, прелесть, дядюшка; еще, еще, – закричала Наташа, как только он кончил. Она, вскочивши с места, обняла дядюшку и поцеловала его. – Николенька, Николенька! – говорила она, оглядываясь на брата и как бы спрашивая его: что же это такое?
Николаю тоже очень нравилась игра дядюшки. Дядюшка второй раз заиграл песню. Улыбающееся лицо Анисьи Федоровны явилось опять в дверях и из за ней еще другие лица… «За холодной ключевой, кричит: девица постой!» играл дядюшка, сделал опять ловкий перебор, оторвал и шевельнул плечами.
– Ну, ну, голубчик, дядюшка, – таким умоляющим голосом застонала Наташа, как будто жизнь ее зависела от этого. Дядюшка встал и как будто в нем было два человека, – один из них серьезно улыбнулся над весельчаком, а весельчак сделал наивную и аккуратную выходку перед пляской.
– Ну, племянница! – крикнул дядюшка взмахнув к Наташе рукой, оторвавшей аккорд.
Наташа сбросила с себя платок, который был накинут на ней, забежала вперед дядюшки и, подперши руки в боки, сделала движение плечами и стала.
Где, как, когда всосала в себя из того русского воздуха, которым она дышала – эта графинечка, воспитанная эмигранткой француженкой, этот дух, откуда взяла она эти приемы, которые pas de chale давно бы должны были вытеснить? Но дух и приемы эти были те самые, неподражаемые, не изучаемые, русские, которых и ждал от нее дядюшка. Как только она стала, улыбнулась торжественно, гордо и хитро весело, первый страх, который охватил было Николая и всех присутствующих, страх, что она не то сделает, прошел и они уже любовались ею.
Она сделала то самое и так точно, так вполне точно это сделала, что Анисья Федоровна, которая тотчас подала ей необходимый для ее дела платок, сквозь смех прослезилась, глядя на эту тоненькую, грациозную, такую чужую ей, в шелку и в бархате воспитанную графиню, которая умела понять всё то, что было и в Анисье, и в отце Анисьи, и в тетке, и в матери, и во всяком русском человеке.
– Ну, графинечка – чистое дело марш, – радостно смеясь, сказал дядюшка, окончив пляску. – Ай да племянница! Вот только бы муженька тебе молодца выбрать, – чистое дело марш!
– Уж выбран, – сказал улыбаясь Николай.
– О? – сказал удивленно дядюшка, глядя вопросительно на Наташу. Наташа с счастливой улыбкой утвердительно кивнула головой.
– Еще какой! – сказала она. Но как только она сказала это, другой, новый строй мыслей и чувств поднялся в ней. Что значила улыбка Николая, когда он сказал: «уж выбран»? Рад он этому или не рад? Он как будто думает, что мой Болконский не одобрил бы, не понял бы этой нашей радости. Нет, он бы всё понял. Где он теперь? подумала Наташа и лицо ее вдруг стало серьезно. Но это продолжалось только одну секунду. – Не думать, не сметь думать об этом, сказала она себе и улыбаясь, подсела опять к дядюшке, прося его сыграть еще что нибудь.
Дядюшка сыграл еще песню и вальс; потом, помолчав, прокашлялся и запел свою любимую охотническую песню.
Как со вечера пороша
Выпадала хороша…
Дядюшка пел так, как поет народ, с тем полным и наивным убеждением, что в песне все значение заключается только в словах, что напев сам собой приходит и что отдельного напева не бывает, а что напев – так только, для складу. От этого то этот бессознательный напев, как бывает напев птицы, и у дядюшки был необыкновенно хорош. Наташа была в восторге от пения дядюшки. Она решила, что не будет больше учиться на арфе, а будет играть только на гитаре. Она попросила у дядюшки гитару и тотчас же подобрала аккорды к песне.
В десятом часу за Наташей и Петей приехали линейка, дрожки и трое верховых, посланных отыскивать их. Граф и графиня не знали где они и крепко беспокоились, как сказал посланный.
Петю снесли и положили как мертвое тело в линейку; Наташа с Николаем сели в дрожки. Дядюшка укутывал Наташу и прощался с ней с совершенно новой нежностью. Он пешком проводил их до моста, который надо было объехать в брод, и велел с фонарями ехать вперед охотникам.
– Прощай, племянница дорогая, – крикнул из темноты его голос, не тот, который знала прежде Наташа, а тот, который пел: «Как со вечера пороша».
В деревне, которую проезжали, были красные огоньки и весело пахло дымом.
– Что за прелесть этот дядюшка! – сказала Наташа, когда они выехали на большую дорогу.
– Да, – сказал Николай. – Тебе не холодно?
– Нет, мне отлично, отлично. Мне так хорошо, – с недоумением даже cказала Наташа. Они долго молчали.
Ночь была темная и сырая. Лошади не видны были; только слышно было, как они шлепали по невидной грязи.
Что делалось в этой детской, восприимчивой душе, так жадно ловившей и усвоивавшей все разнообразнейшие впечатления жизни? Как это всё укладывалось в ней? Но она была очень счастлива. Уже подъезжая к дому, она вдруг запела мотив песни: «Как со вечера пороша», мотив, который она ловила всю дорогу и наконец поймала.
– Поймала? – сказал Николай.
– Ты об чем думал теперь, Николенька? – спросила Наташа. – Они любили это спрашивать друг у друга.
– Я? – сказал Николай вспоминая; – вот видишь ли, сначала я думал, что Ругай, красный кобель, похож на дядюшку и что ежели бы он был человек, то он дядюшку всё бы еще держал у себя, ежели не за скачку, так за лады, всё бы держал. Как он ладен, дядюшка! Не правда ли? – Ну а ты?
– Я? Постой, постой. Да, я думала сначала, что вот мы едем и думаем, что мы едем домой, а мы Бог знает куда едем в этой темноте и вдруг приедем и увидим, что мы не в Отрадном, а в волшебном царстве. А потом еще я думала… Нет, ничего больше.
– Знаю, верно про него думала, – сказал Николай улыбаясь, как узнала Наташа по звуку его голоса.
– Нет, – отвечала Наташа, хотя действительно она вместе с тем думала и про князя Андрея, и про то, как бы ему понравился дядюшка. – А еще я всё повторяю, всю дорогу повторяю: как Анисьюшка хорошо выступала, хорошо… – сказала Наташа. И Николай услыхал ее звонкий, беспричинный, счастливый смех.
– А знаешь, – вдруг сказала она, – я знаю, что никогда уже я не буду так счастлива, спокойна, как теперь.
– Вот вздор, глупости, вранье – сказал Николай и подумал: «Что за прелесть эта моя Наташа! Такого другого друга у меня нет и не будет. Зачем ей выходить замуж, всё бы с ней ездили!»
«Экая прелесть этот Николай!» думала Наташа. – А! еще огонь в гостиной, – сказала она, указывая на окна дома, красиво блестевшие в мокрой, бархатной темноте ночи.


Граф Илья Андреич вышел из предводителей, потому что эта должность была сопряжена с слишком большими расходами. Но дела его всё не поправлялись. Часто Наташа и Николай видели тайные, беспокойные переговоры родителей и слышали толки о продаже богатого, родового Ростовского дома и подмосковной. Без предводительства не нужно было иметь такого большого приема, и отрадненская жизнь велась тише, чем в прежние годы; но огромный дом и флигеля всё таки были полны народом, за стол всё так же садилось больше человек. Всё это были свои, обжившиеся в доме люди, почти члены семейства или такие, которые, казалось, необходимо должны были жить в доме графа. Таковы были Диммлер – музыкант с женой, Иогель – танцовальный учитель с семейством, старушка барышня Белова, жившая в доме, и еще многие другие: учителя Пети, бывшая гувернантка барышень и просто люди, которым лучше или выгоднее было жить у графа, чем дома. Не было такого большого приезда как прежде, но ход жизни велся тот же, без которого не могли граф с графиней представить себе жизни. Та же была, еще увеличенная Николаем, охота, те же 50 лошадей и 15 кучеров на конюшне, те же дорогие подарки в именины, и торжественные на весь уезд обеды; те же графские висты и бостоны, за которыми он, распуская всем на вид карты, давал себя каждый день на сотни обыгрывать соседям, смотревшим на право составлять партию графа Ильи Андреича, как на самую выгодную аренду.
Граф, как в огромных тенетах, ходил в своих делах, стараясь не верить тому, что он запутался и с каждым шагом всё более и более запутываясь и чувствуя себя не в силах ни разорвать сети, опутавшие его, ни осторожно, терпеливо приняться распутывать их. Графиня любящим сердцем чувствовала, что дети ее разоряются, что граф не виноват, что он не может быть не таким, каким он есть, что он сам страдает (хотя и скрывает это) от сознания своего и детского разорения, и искала средств помочь делу. С ее женской точки зрения представлялось только одно средство – женитьба Николая на богатой невесте. Она чувствовала, что это была последняя надежда, и что если Николай откажется от партии, которую она нашла ему, надо будет навсегда проститься с возможностью поправить дела. Партия эта была Жюли Карагина, дочь прекрасных, добродетельных матери и отца, с детства известная Ростовым, и теперь богатая невеста по случаю смерти последнего из ее братьев.
Графиня писала прямо к Карагиной в Москву, предлагая ей брак ее дочери с своим сыном и получила от нее благоприятный ответ. Карагина отвечала, что она с своей стороны согласна, что всё будет зависеть от склонности ее дочери. Карагина приглашала Николая приехать в Москву.
Несколько раз, со слезами на глазах, графиня говорила сыну, что теперь, когда обе дочери ее пристроены – ее единственное желание состоит в том, чтобы видеть его женатым. Она говорила, что легла бы в гроб спокойной, ежели бы это было. Потом говорила, что у нее есть прекрасная девушка на примете и выпытывала его мнение о женитьбе.
В других разговорах она хвалила Жюли и советовала Николаю съездить в Москву на праздники повеселиться. Николай догадывался к чему клонились разговоры его матери, и в один из таких разговоров вызвал ее на полную откровенность. Она высказала ему, что вся надежда поправления дел основана теперь на его женитьбе на Карагиной.
– Что ж, если бы я любил девушку без состояния, неужели вы потребовали бы, maman, чтобы я пожертвовал чувством и честью для состояния? – спросил он у матери, не понимая жестокости своего вопроса и желая только выказать свое благородство.
– Нет, ты меня не понял, – сказала мать, не зная, как оправдаться. – Ты меня не понял, Николинька. Я желаю твоего счастья, – прибавила она и почувствовала, что она говорит неправду, что она запуталась. – Она заплакала.
– Маменька, не плачьте, а только скажите мне, что вы этого хотите, и вы знаете, что я всю жизнь свою, всё отдам для того, чтобы вы были спокойны, – сказал Николай. Я всем пожертвую для вас, даже своим чувством.
Но графиня не так хотела поставить вопрос: она не хотела жертвы от своего сына, она сама бы хотела жертвовать ему.
– Нет, ты меня не понял, не будем говорить, – сказала она, утирая слезы.
«Да, может быть, я и люблю бедную девушку, говорил сам себе Николай, что ж, мне пожертвовать чувством и честью для состояния? Удивляюсь, как маменька могла мне сказать это. Оттого что Соня бедна, то я и не могу любить ее, думал он, – не могу отвечать на ее верную, преданную любовь. А уж наверное с ней я буду счастливее, чем с какой нибудь куклой Жюли. Пожертвовать своим чувством я всегда могу для блага своих родных, говорил он сам себе, но приказывать своему чувству я не могу. Ежели я люблю Соню, то чувство мое сильнее и выше всего для меня».
Николай не поехал в Москву, графиня не возобновляла с ним разговора о женитьбе и с грустью, а иногда и озлоблением видела признаки всё большего и большего сближения между своим сыном и бесприданной Соней. Она упрекала себя за то, но не могла не ворчать, не придираться к Соне, часто без причины останавливая ее, называя ее «вы», и «моя милая». Более всего добрая графиня за то и сердилась на Соню, что эта бедная, черноглазая племянница была так кротка, так добра, так преданно благодарна своим благодетелям, и так верно, неизменно, с самоотвержением влюблена в Николая, что нельзя было ни в чем упрекнуть ее.
Николай доживал у родных свой срок отпуска. От жениха князя Андрея получено было 4 е письмо, из Рима, в котором он писал, что он уже давно бы был на пути в Россию, ежели бы неожиданно в теплом климате не открылась его рана, что заставляет его отложить свой отъезд до начала будущего года. Наташа была так же влюблена в своего жениха, так же успокоена этой любовью и так же восприимчива ко всем радостям жизни; но в конце четвертого месяца разлуки с ним, на нее начинали находить минуты грусти, против которой она не могла бороться. Ей жалко было самое себя, жалко было, что она так даром, ни для кого, пропадала всё это время, в продолжение которого она чувствовала себя столь способной любить и быть любимой.
В доме Ростовых было невесело.


Пришли святки, и кроме парадной обедни, кроме торжественных и скучных поздравлений соседей и дворовых, кроме на всех надетых новых платьев, не было ничего особенного, ознаменовывающего святки, а в безветренном 20 ти градусном морозе, в ярком ослепляющем солнце днем и в звездном зимнем свете ночью, чувствовалась потребность какого нибудь ознаменования этого времени.
На третий день праздника после обеда все домашние разошлись по своим комнатам. Было самое скучное время дня. Николай, ездивший утром к соседям, заснул в диванной. Старый граф отдыхал в своем кабинете. В гостиной за круглым столом сидела Соня, срисовывая узор. Графиня раскладывала карты. Настасья Ивановна шут с печальным лицом сидел у окна с двумя старушками. Наташа вошла в комнату, подошла к Соне, посмотрела, что она делает, потом подошла к матери и молча остановилась.
– Что ты ходишь, как бесприютная? – сказала ей мать. – Что тебе надо?
– Его мне надо… сейчас, сию минуту мне его надо, – сказала Наташа, блестя глазами и не улыбаясь. – Графиня подняла голову и пристально посмотрела на дочь.
– Не смотрите на меня. Мама, не смотрите, я сейчас заплачу.
– Садись, посиди со мной, – сказала графиня.
– Мама, мне его надо. За что я так пропадаю, мама?… – Голос ее оборвался, слезы брызнули из глаз, и она, чтобы скрыть их, быстро повернулась и вышла из комнаты. Она вышла в диванную, постояла, подумала и пошла в девичью. Там старая горничная ворчала на молодую девушку, запыхавшуюся, с холода прибежавшую с дворни.
– Будет играть то, – говорила старуха. – На всё время есть.
– Пусти ее, Кондратьевна, – сказала Наташа. – Иди, Мавруша, иди.
И отпустив Маврушу, Наташа через залу пошла в переднюю. Старик и два молодые лакея играли в карты. Они прервали игру и встали при входе барышни. «Что бы мне с ними сделать?» подумала Наташа. – Да, Никита, сходи пожалуста… куда бы мне его послать? – Да, сходи на дворню и принеси пожалуста петуха; да, а ты, Миша, принеси овса.
– Немного овса прикажете? – весело и охотно сказал Миша.
– Иди, иди скорее, – подтвердил старик.
– Федор, а ты мелу мне достань.
Проходя мимо буфета, она велела подавать самовар, хотя это было вовсе не время.
Буфетчик Фока был самый сердитый человек из всего дома. Наташа над ним любила пробовать свою власть. Он не поверил ей и пошел спросить, правда ли?
– Уж эта барышня! – сказал Фока, притворно хмурясь на Наташу.
Никто в доме не рассылал столько людей и не давал им столько работы, как Наташа. Она не могла равнодушно видеть людей, чтобы не послать их куда нибудь. Она как будто пробовала, не рассердится ли, не надуется ли на нее кто из них, но ничьих приказаний люди не любили так исполнять, как Наташиных. «Что бы мне сделать? Куда бы мне пойти?» думала Наташа, медленно идя по коридору.
– Настасья Ивановна, что от меня родится? – спросила она шута, который в своей куцавейке шел навстречу ей.
– От тебя блохи, стрекозы, кузнецы, – отвечал шут.
– Боже мой, Боже мой, всё одно и то же. Ах, куда бы мне деваться? Что бы мне с собой сделать? – И она быстро, застучав ногами, побежала по лестнице к Фогелю, который с женой жил в верхнем этаже. У Фогеля сидели две гувернантки, на столе стояли тарелки с изюмом, грецкими и миндальными орехами. Гувернантки разговаривали о том, где дешевле жить, в Москве или в Одессе. Наташа присела, послушала их разговор с серьезным задумчивым лицом и встала. – Остров Мадагаскар, – проговорила она. – Ма да гас кар, – повторила она отчетливо каждый слог и не отвечая на вопросы m me Schoss о том, что она говорит, вышла из комнаты. Петя, брат ее, был тоже наверху: он с своим дядькой устраивал фейерверк, который намеревался пустить ночью. – Петя! Петька! – закричала она ему, – вези меня вниз. с – Петя подбежал к ней и подставил спину. Она вскочила на него, обхватив его шею руками и он подпрыгивая побежал с ней. – Нет не надо – остров Мадагаскар, – проговорила она и, соскочив с него, пошла вниз.
Как будто обойдя свое царство, испытав свою власть и убедившись, что все покорны, но что всё таки скучно, Наташа пошла в залу, взяла гитару, села в темный угол за шкапчик и стала в басу перебирать струны, выделывая фразу, которую она запомнила из одной оперы, слышанной в Петербурге вместе с князем Андреем. Для посторонних слушателей у ней на гитаре выходило что то, не имевшее никакого смысла, но в ее воображении из за этих звуков воскресал целый ряд воспоминаний. Она сидела за шкапчиком, устремив глаза на полосу света, падавшую из буфетной двери, слушала себя и вспоминала. Она находилась в состоянии воспоминания.
Соня прошла в буфет с рюмкой через залу. Наташа взглянула на нее, на щель в буфетной двери и ей показалось, что она вспоминает то, что из буфетной двери в щель падал свет и что Соня прошла с рюмкой. «Да и это было точь в точь также», подумала Наташа. – Соня, что это? – крикнула Наташа, перебирая пальцами на толстой струне.
– Ах, ты тут! – вздрогнув, сказала Соня, подошла и прислушалась. – Не знаю. Буря? – сказала она робко, боясь ошибиться.
«Ну вот точно так же она вздрогнула, точно так же подошла и робко улыбнулась тогда, когда это уж было», подумала Наташа, «и точно так же… я подумала, что в ней чего то недостает».
– Нет, это хор из Водоноса, слышишь! – И Наташа допела мотив хора, чтобы дать его понять Соне.
– Ты куда ходила? – спросила Наташа.
– Воду в рюмке переменить. Я сейчас дорисую узор.
– Ты всегда занята, а я вот не умею, – сказала Наташа. – А Николай где?
– Спит, кажется.
– Соня, ты поди разбуди его, – сказала Наташа. – Скажи, что я его зову петь. – Она посидела, подумала о том, что это значит, что всё это было, и, не разрешив этого вопроса и нисколько не сожалея о том, опять в воображении своем перенеслась к тому времени, когда она была с ним вместе, и он влюбленными глазами смотрел на нее.
«Ах, поскорее бы он приехал. Я так боюсь, что этого не будет! А главное: я стареюсь, вот что! Уже не будет того, что теперь есть во мне. А может быть, он нынче приедет, сейчас приедет. Может быть приехал и сидит там в гостиной. Может быть, он вчера еще приехал и я забыла». Она встала, положила гитару и пошла в гостиную. Все домашние, учителя, гувернантки и гости сидели уж за чайным столом. Люди стояли вокруг стола, – а князя Андрея не было, и была всё прежняя жизнь.
– А, вот она, – сказал Илья Андреич, увидав вошедшую Наташу. – Ну, садись ко мне. – Но Наташа остановилась подле матери, оглядываясь кругом, как будто она искала чего то.
– Мама! – проговорила она. – Дайте мне его , дайте, мама, скорее, скорее, – и опять она с трудом удержала рыдания.
Она присела к столу и послушала разговоры старших и Николая, который тоже пришел к столу. «Боже мой, Боже мой, те же лица, те же разговоры, так же папа держит чашку и дует точно так же!» думала Наташа, с ужасом чувствуя отвращение, подымавшееся в ней против всех домашних за то, что они были всё те же.
После чая Николай, Соня и Наташа пошли в диванную, в свой любимый угол, в котором всегда начинались их самые задушевные разговоры.


– Бывает с тобой, – сказала Наташа брату, когда они уселись в диванной, – бывает с тобой, что тебе кажется, что ничего не будет – ничего; что всё, что хорошее, то было? И не то что скучно, а грустно?
– Еще как! – сказал он. – У меня бывало, что всё хорошо, все веселы, а мне придет в голову, что всё это уж надоело и что умирать всем надо. Я раз в полку не пошел на гулянье, а там играла музыка… и так мне вдруг скучно стало…
– Ах, я это знаю. Знаю, знаю, – подхватила Наташа. – Я еще маленькая была, так со мной это бывало. Помнишь, раз меня за сливы наказали и вы все танцовали, а я сидела в классной и рыдала, никогда не забуду: мне и грустно было и жалко было всех, и себя, и всех всех жалко. И, главное, я не виновата была, – сказала Наташа, – ты помнишь?
– Помню, – сказал Николай. – Я помню, что я к тебе пришел потом и мне хотелось тебя утешить и, знаешь, совестно было. Ужасно мы смешные были. У меня тогда была игрушка болванчик и я его тебе отдать хотел. Ты помнишь?
– А помнишь ты, – сказала Наташа с задумчивой улыбкой, как давно, давно, мы еще совсем маленькие были, дяденька нас позвал в кабинет, еще в старом доме, а темно было – мы это пришли и вдруг там стоит…
– Арап, – докончил Николай с радостной улыбкой, – как же не помнить? Я и теперь не знаю, что это был арап, или мы во сне видели, или нам рассказывали.
– Он серый был, помнишь, и белые зубы – стоит и смотрит на нас…
– Вы помните, Соня? – спросил Николай…
– Да, да я тоже помню что то, – робко отвечала Соня…
– Я ведь спрашивала про этого арапа у папа и у мама, – сказала Наташа. – Они говорят, что никакого арапа не было. А ведь вот ты помнишь!
– Как же, как теперь помню его зубы.
– Как это странно, точно во сне было. Я это люблю.
– А помнишь, как мы катали яйца в зале и вдруг две старухи, и стали по ковру вертеться. Это было, или нет? Помнишь, как хорошо было?
– Да. А помнишь, как папенька в синей шубе на крыльце выстрелил из ружья. – Они перебирали улыбаясь с наслаждением воспоминания, не грустного старческого, а поэтического юношеского воспоминания, те впечатления из самого дальнего прошедшего, где сновидение сливается с действительностью, и тихо смеялись, радуясь чему то.
Соня, как и всегда, отстала от них, хотя воспоминания их были общие.
Соня не помнила многого из того, что они вспоминали, а и то, что она помнила, не возбуждало в ней того поэтического чувства, которое они испытывали. Она только наслаждалась их радостью, стараясь подделаться под нее.
Она приняла участие только в том, когда они вспоминали первый приезд Сони. Соня рассказала, как она боялась Николая, потому что у него на курточке были снурки, и ей няня сказала, что и ее в снурки зашьют.
– А я помню: мне сказали, что ты под капустою родилась, – сказала Наташа, – и помню, что я тогда не смела не поверить, но знала, что это не правда, и так мне неловко было.
Во время этого разговора из задней двери диванной высунулась голова горничной. – Барышня, петуха принесли, – шопотом сказала девушка.
– Не надо, Поля, вели отнести, – сказала Наташа.
В середине разговоров, шедших в диванной, Диммлер вошел в комнату и подошел к арфе, стоявшей в углу. Он снял сукно, и арфа издала фальшивый звук.
– Эдуард Карлыч, сыграйте пожалуста мой любимый Nocturiene мосье Фильда, – сказал голос старой графини из гостиной.
Диммлер взял аккорд и, обратясь к Наташе, Николаю и Соне, сказал: – Молодежь, как смирно сидит!
– Да мы философствуем, – сказала Наташа, на минуту оглянувшись, и продолжала разговор. Разговор шел теперь о сновидениях.
Диммлер начал играть. Наташа неслышно, на цыпочках, подошла к столу, взяла свечу, вынесла ее и, вернувшись, тихо села на свое место. В комнате, особенно на диване, на котором они сидели, было темно, но в большие окна падал на пол серебряный свет полного месяца.
– Знаешь, я думаю, – сказала Наташа шопотом, придвигаясь к Николаю и Соне, когда уже Диммлер кончил и всё сидел, слабо перебирая струны, видимо в нерешительности оставить, или начать что нибудь новое, – что когда так вспоминаешь, вспоминаешь, всё вспоминаешь, до того довоспоминаешься, что помнишь то, что было еще прежде, чем я была на свете…
– Это метампсикова, – сказала Соня, которая всегда хорошо училась и все помнила. – Египтяне верили, что наши души были в животных и опять пойдут в животных.
– Нет, знаешь, я не верю этому, чтобы мы были в животных, – сказала Наташа тем же шопотом, хотя музыка и кончилась, – а я знаю наверное, что мы были ангелами там где то и здесь были, и от этого всё помним…
– Можно мне присоединиться к вам? – сказал тихо подошедший Диммлер и подсел к ним.
– Ежели бы мы были ангелами, так за что же мы попали ниже? – сказал Николай. – Нет, это не может быть!
– Не ниже, кто тебе сказал, что ниже?… Почему я знаю, чем я была прежде, – с убеждением возразила Наташа. – Ведь душа бессмертна… стало быть, ежели я буду жить всегда, так я и прежде жила, целую вечность жила.
– Да, но трудно нам представить вечность, – сказал Диммлер, который подошел к молодым людям с кроткой презрительной улыбкой, но теперь говорил так же тихо и серьезно, как и они.
– Отчего же трудно представить вечность? – сказала Наташа. – Нынче будет, завтра будет, всегда будет и вчера было и третьего дня было…
– Наташа! теперь твой черед. Спой мне что нибудь, – послышался голос графини. – Что вы уселись, точно заговорщики.
– Мама! мне так не хочется, – сказала Наташа, но вместе с тем встала.
Всем им, даже и немолодому Диммлеру, не хотелось прерывать разговор и уходить из уголка диванного, но Наташа встала, и Николай сел за клавикорды. Как всегда, став на средину залы и выбрав выгоднейшее место для резонанса, Наташа начала петь любимую пьесу своей матери.
Она сказала, что ей не хотелось петь, но она давно прежде, и долго после не пела так, как она пела в этот вечер. Граф Илья Андреич из кабинета, где он беседовал с Митинькой, слышал ее пенье, и как ученик, торопящийся итти играть, доканчивая урок, путался в словах, отдавая приказания управляющему и наконец замолчал, и Митинька, тоже слушая, молча с улыбкой, стоял перед графом. Николай не спускал глаз с сестры, и вместе с нею переводил дыхание. Соня, слушая, думала о том, какая громадная разница была между ей и ее другом и как невозможно было ей хоть на сколько нибудь быть столь обворожительной, как ее кузина. Старая графиня сидела с счастливо грустной улыбкой и слезами на глазах, изредка покачивая головой. Она думала и о Наташе, и о своей молодости, и о том, как что то неестественное и страшное есть в этом предстоящем браке Наташи с князем Андреем.
Диммлер, подсев к графине и закрыв глаза, слушал.
– Нет, графиня, – сказал он наконец, – это талант европейский, ей учиться нечего, этой мягкости, нежности, силы…
– Ах! как я боюсь за нее, как я боюсь, – сказала графиня, не помня, с кем она говорит. Ее материнское чутье говорило ей, что чего то слишком много в Наташе, и что от этого она не будет счастлива. Наташа не кончила еще петь, как в комнату вбежал восторженный четырнадцатилетний Петя с известием, что пришли ряженые.
Наташа вдруг остановилась.
– Дурак! – закричала она на брата, подбежала к стулу, упала на него и зарыдала так, что долго потом не могла остановиться.
– Ничего, маменька, право ничего, так: Петя испугал меня, – говорила она, стараясь улыбаться, но слезы всё текли и всхлипывания сдавливали горло.
Наряженные дворовые, медведи, турки, трактирщики, барыни, страшные и смешные, принеся с собою холод и веселье, сначала робко жались в передней; потом, прячась один за другого, вытеснялись в залу; и сначала застенчиво, а потом всё веселее и дружнее начались песни, пляски, хоровые и святочные игры. Графиня, узнав лица и посмеявшись на наряженных, ушла в гостиную. Граф Илья Андреич с сияющей улыбкой сидел в зале, одобряя играющих. Молодежь исчезла куда то.
Через полчаса в зале между другими ряжеными появилась еще старая барыня в фижмах – это был Николай. Турчанка был Петя. Паяс – это был Диммлер, гусар – Наташа и черкес – Соня, с нарисованными пробочными усами и бровями.
После снисходительного удивления, неузнавания и похвал со стороны не наряженных, молодые люди нашли, что костюмы так хороши, что надо было их показать еще кому нибудь.
Николай, которому хотелось по отличной дороге прокатить всех на своей тройке, предложил, взяв с собой из дворовых человек десять наряженных, ехать к дядюшке.
– Нет, ну что вы его, старика, расстроите! – сказала графиня, – да и негде повернуться у него. Уж ехать, так к Мелюковым.
Мелюкова была вдова с детьми разнообразного возраста, также с гувернантками и гувернерами, жившая в четырех верстах от Ростовых.
– Вот, ma chere, умно, – подхватил расшевелившийся старый граф. – Давай сейчас наряжусь и поеду с вами. Уж я Пашету расшевелю.
Но графиня не согласилась отпустить графа: у него все эти дни болела нога. Решили, что Илье Андреевичу ехать нельзя, а что ежели Луиза Ивановна (m me Schoss) поедет, то барышням можно ехать к Мелюковой. Соня, всегда робкая и застенчивая, настоятельнее всех стала упрашивать Луизу Ивановну не отказать им.
Наряд Сони был лучше всех. Ее усы и брови необыкновенно шли к ней. Все говорили ей, что она очень хороша, и она находилась в несвойственном ей оживленно энергическом настроении. Какой то внутренний голос говорил ей, что нынче или никогда решится ее судьба, и она в своем мужском платье казалась совсем другим человеком. Луиза Ивановна согласилась, и через полчаса четыре тройки с колокольчиками и бубенчиками, визжа и свистя подрезами по морозному снегу, подъехали к крыльцу.
Наташа первая дала тон святочного веселья, и это веселье, отражаясь от одного к другому, всё более и более усиливалось и дошло до высшей степени в то время, когда все вышли на мороз, и переговариваясь, перекликаясь, смеясь и крича, расселись в сани.
Две тройки были разгонные, третья тройка старого графа с орловским рысаком в корню; четвертая собственная Николая с его низеньким, вороным, косматым коренником. Николай в своем старушечьем наряде, на который он надел гусарский, подпоясанный плащ, стоял в середине своих саней, подобрав вожжи.
Было так светло, что он видел отблескивающие на месячном свете бляхи и глаза лошадей, испуганно оглядывавшихся на седоков, шумевших под темным навесом подъезда.
В сани Николая сели Наташа, Соня, m me Schoss и две девушки. В сани старого графа сели Диммлер с женой и Петя; в остальные расселись наряженные дворовые.
– Пошел вперед, Захар! – крикнул Николай кучеру отца, чтобы иметь случай перегнать его на дороге.
Тройка старого графа, в которую сел Диммлер и другие ряженые, визжа полозьями, как будто примерзая к снегу, и побрякивая густым колокольцом, тронулась вперед. Пристяжные жались на оглобли и увязали, выворачивая как сахар крепкий и блестящий снег.
Николай тронулся за первой тройкой; сзади зашумели и завизжали остальные. Сначала ехали маленькой рысью по узкой дороге. Пока ехали мимо сада, тени от оголенных деревьев ложились часто поперек дороги и скрывали яркий свет луны, но как только выехали за ограду, алмазно блестящая, с сизым отблеском, снежная равнина, вся облитая месячным сиянием и неподвижная, открылась со всех сторон. Раз, раз, толконул ухаб в передних санях; точно так же толконуло следующие сани и следующие и, дерзко нарушая закованную тишину, одни за другими стали растягиваться сани.
– След заячий, много следов! – прозвучал в морозном скованном воздухе голос Наташи.
– Как видно, Nicolas! – сказал голос Сони. – Николай оглянулся на Соню и пригнулся, чтоб ближе рассмотреть ее лицо. Какое то совсем новое, милое, лицо, с черными бровями и усами, в лунном свете, близко и далеко, выглядывало из соболей.
«Это прежде была Соня», подумал Николай. Он ближе вгляделся в нее и улыбнулся.
– Вы что, Nicolas?
– Ничего, – сказал он и повернулся опять к лошадям.
Выехав на торную, большую дорогу, примасленную полозьями и всю иссеченную следами шипов, видными в свете месяца, лошади сами собой стали натягивать вожжи и прибавлять ходу. Левая пристяжная, загнув голову, прыжками подергивала свои постромки. Коренной раскачивался, поводя ушами, как будто спрашивая: «начинать или рано еще?» – Впереди, уже далеко отделившись и звеня удаляющимся густым колокольцом, ясно виднелась на белом снегу черная тройка Захара. Слышны были из его саней покрикиванье и хохот и голоса наряженных.
– Ну ли вы, разлюбезные, – крикнул Николай, с одной стороны подергивая вожжу и отводя с кнутом pуку. И только по усилившемуся как будто на встречу ветру, и по подергиванью натягивающих и всё прибавляющих скоку пристяжных, заметно было, как шибко полетела тройка. Николай оглянулся назад. С криком и визгом, махая кнутами и заставляя скакать коренных, поспевали другие тройки. Коренной стойко поколыхивался под дугой, не думая сбивать и обещая еще и еще наддать, когда понадобится.
Николай догнал первую тройку. Они съехали с какой то горы, выехали на широко разъезженную дорогу по лугу около реки.
«Где это мы едем?» подумал Николай. – «По косому лугу должно быть. Но нет, это что то новое, чего я никогда не видал. Это не косой луг и не Дёмкина гора, а это Бог знает что такое! Это что то новое и волшебное. Ну, что бы там ни было!» И он, крикнув на лошадей, стал объезжать первую тройку.
Захар сдержал лошадей и обернул свое уже объиндевевшее до бровей лицо.
Николай пустил своих лошадей; Захар, вытянув вперед руки, чмокнул и пустил своих.
– Ну держись, барин, – проговорил он. – Еще быстрее рядом полетели тройки, и быстро переменялись ноги скачущих лошадей. Николай стал забирать вперед. Захар, не переменяя положения вытянутых рук, приподнял одну руку с вожжами.
– Врешь, барин, – прокричал он Николаю. Николай в скок пустил всех лошадей и перегнал Захара. Лошади засыпали мелким, сухим снегом лица седоков, рядом с ними звучали частые переборы и путались быстро движущиеся ноги, и тени перегоняемой тройки. Свист полозьев по снегу и женские взвизги слышались с разных сторон.
Опять остановив лошадей, Николай оглянулся кругом себя. Кругом была всё та же пропитанная насквозь лунным светом волшебная равнина с рассыпанными по ней звездами.
«Захар кричит, чтобы я взял налево; а зачем налево? думал Николай. Разве мы к Мелюковым едем, разве это Мелюковка? Мы Бог знает где едем, и Бог знает, что с нами делается – и очень странно и хорошо то, что с нами делается». Он оглянулся в сани.
– Посмотри, у него и усы и ресницы, всё белое, – сказал один из сидевших странных, хорошеньких и чужих людей с тонкими усами и бровями.
«Этот, кажется, была Наташа, подумал Николай, а эта m me Schoss; а может быть и нет, а это черкес с усами не знаю кто, но я люблю ее».
– Не холодно ли вам? – спросил он. Они не отвечали и засмеялись. Диммлер из задних саней что то кричал, вероятно смешное, но нельзя было расслышать, что он кричал.
– Да, да, – смеясь отвечали голоса.
– Однако вот какой то волшебный лес с переливающимися черными тенями и блестками алмазов и с какой то анфиладой мраморных ступеней, и какие то серебряные крыши волшебных зданий, и пронзительный визг каких то зверей. «А ежели и в самом деле это Мелюковка, то еще страннее то, что мы ехали Бог знает где, и приехали в Мелюковку», думал Николай.
Действительно это была Мелюковка, и на подъезд выбежали девки и лакеи со свечами и радостными лицами.
– Кто такой? – спрашивали с подъезда.
– Графские наряженные, по лошадям вижу, – отвечали голоса.


Пелагея Даниловна Мелюкова, широкая, энергическая женщина, в очках и распашном капоте, сидела в гостиной, окруженная дочерьми, которым она старалась не дать скучать. Они тихо лили воск и смотрели на тени выходивших фигур, когда зашумели в передней шаги и голоса приезжих.
Гусары, барыни, ведьмы, паясы, медведи, прокашливаясь и обтирая заиндевевшие от мороза лица в передней, вошли в залу, где поспешно зажигали свечи. Паяц – Диммлер с барыней – Николаем открыли пляску. Окруженные кричавшими детьми, ряженые, закрывая лица и меняя голоса, раскланивались перед хозяйкой и расстанавливались по комнате.
– Ах, узнать нельзя! А Наташа то! Посмотрите, на кого она похожа! Право, напоминает кого то. Эдуард то Карлыч как хорош! Я не узнала. Да как танцует! Ах, батюшки, и черкес какой то; право, как идет Сонюшке. Это еще кто? Ну, утешили! Столы то примите, Никита, Ваня. А мы так тихо сидели!
– Ха ха ха!… Гусар то, гусар то! Точно мальчик, и ноги!… Я видеть не могу… – слышались голоса.
Наташа, любимица молодых Мелюковых, с ними вместе исчезла в задние комнаты, куда была потребована пробка и разные халаты и мужские платья, которые в растворенную дверь принимали от лакея оголенные девичьи руки. Через десять минут вся молодежь семейства Мелюковых присоединилась к ряженым.
Пелагея Даниловна, распорядившись очисткой места для гостей и угощениями для господ и дворовых, не снимая очков, с сдерживаемой улыбкой, ходила между ряжеными, близко глядя им в лица и никого не узнавая. Она не узнавала не только Ростовых и Диммлера, но и никак не могла узнать ни своих дочерей, ни тех мужниных халатов и мундиров, которые были на них.
– А это чья такая? – говорила она, обращаясь к своей гувернантке и глядя в лицо своей дочери, представлявшей казанского татарина. – Кажется, из Ростовых кто то. Ну и вы, господин гусар, в каком полку служите? – спрашивала она Наташу. – Турке то, турке пастилы подай, – говорила она обносившему буфетчику: – это их законом не запрещено.
Иногда, глядя на странные, но смешные па, которые выделывали танцующие, решившие раз навсегда, что они наряженные, что никто их не узнает и потому не конфузившиеся, – Пелагея Даниловна закрывалась платком, и всё тучное тело ее тряслось от неудержимого доброго, старушечьего смеха. – Сашинет то моя, Сашинет то! – говорила она.
После русских плясок и хороводов Пелагея Даниловна соединила всех дворовых и господ вместе, в один большой круг; принесли кольцо, веревочку и рублик, и устроились общие игры.
Через час все костюмы измялись и расстроились. Пробочные усы и брови размазались по вспотевшим, разгоревшимся и веселым лицам. Пелагея Даниловна стала узнавать ряженых, восхищалась тем, как хорошо были сделаны костюмы, как шли они особенно к барышням, и благодарила всех за то, что так повеселили ее. Гостей позвали ужинать в гостиную, а в зале распорядились угощением дворовых.
– Нет, в бане гадать, вот это страшно! – говорила за ужином старая девушка, жившая у Мелюковых.
– Отчего же? – спросила старшая дочь Мелюковых.
– Да не пойдете, тут надо храбрость…
– Я пойду, – сказала Соня.
– Расскажите, как это было с барышней? – сказала вторая Мелюкова.
– Да вот так то, пошла одна барышня, – сказала старая девушка, – взяла петуха, два прибора – как следует, села. Посидела, только слышит, вдруг едет… с колокольцами, с бубенцами подъехали сани; слышит, идет. Входит совсем в образе человеческом, как есть офицер, пришел и сел с ней за прибор.
– А! А!… – закричала Наташа, с ужасом выкатывая глаза.
– Да как же, он так и говорит?
– Да, как человек, всё как должно быть, и стал, и стал уговаривать, а ей бы надо занять его разговором до петухов; а она заробела; – только заробела и закрылась руками. Он ее и подхватил. Хорошо, что тут девушки прибежали…
– Ну, что пугать их! – сказала Пелагея Даниловна.
– Мамаша, ведь вы сами гадали… – сказала дочь.
– А как это в амбаре гадают? – спросила Соня.
– Да вот хоть бы теперь, пойдут к амбару, да и слушают. Что услышите: заколачивает, стучит – дурно, а пересыпает хлеб – это к добру; а то бывает…
– Мама расскажите, что с вами было в амбаре?
Пелагея Даниловна улыбнулась.
– Да что, я уж забыла… – сказала она. – Ведь вы никто не пойдете?
– Нет, я пойду; Пепагея Даниловна, пустите меня, я пойду, – сказала Соня.
– Ну что ж, коли не боишься.
– Луиза Ивановна, можно мне? – спросила Соня.
Играли ли в колечко, в веревочку или рублик, разговаривали ли, как теперь, Николай не отходил от Сони и совсем новыми глазами смотрел на нее. Ему казалось, что он нынче только в первый раз, благодаря этим пробочным усам, вполне узнал ее. Соня действительно этот вечер была весела, оживлена и хороша, какой никогда еще не видал ее Николай.
«Так вот она какая, а я то дурак!» думал он, глядя на ее блестящие глаза и счастливую, восторженную, из под усов делающую ямочки на щеках, улыбку, которой он не видал прежде.
– Я ничего не боюсь, – сказала Соня. – Можно сейчас? – Она встала. Соне рассказали, где амбар, как ей молча стоять и слушать, и подали ей шубку. Она накинула ее себе на голову и взглянула на Николая.
«Что за прелесть эта девочка!» подумал он. «И об чем я думал до сих пор!»
Соня вышла в коридор, чтобы итти в амбар. Николай поспешно пошел на парадное крыльцо, говоря, что ему жарко. Действительно в доме было душно от столпившегося народа.
На дворе был тот же неподвижный холод, тот же месяц, только было еще светлее. Свет был так силен и звезд на снеге было так много, что на небо не хотелось смотреть, и настоящих звезд было незаметно. На небе было черно и скучно, на земле было весело.
«Дурак я, дурак! Чего ждал до сих пор?» подумал Николай и, сбежав на крыльцо, он обошел угол дома по той тропинке, которая вела к заднему крыльцу. Он знал, что здесь пойдет Соня. На половине дороги стояли сложенные сажени дров, на них был снег, от них падала тень; через них и с боку их, переплетаясь, падали тени старых голых лип на снег и дорожку. Дорожка вела к амбару. Рубленная стена амбара и крыша, покрытая снегом, как высеченная из какого то драгоценного камня, блестели в месячном свете. В саду треснуло дерево, и опять всё совершенно затихло. Грудь, казалось, дышала не воздухом, а какой то вечно молодой силой и радостью.
С девичьего крыльца застучали ноги по ступенькам, скрыпнуло звонко на последней, на которую был нанесен снег, и голос старой девушки сказал:
– Прямо, прямо, вот по дорожке, барышня. Только не оглядываться.
– Я не боюсь, – отвечал голос Сони, и по дорожке, по направлению к Николаю, завизжали, засвистели в тоненьких башмачках ножки Сони.
Соня шла закутавшись в шубку. Она была уже в двух шагах, когда увидала его; она увидала его тоже не таким, каким она знала и какого всегда немножко боялась. Он был в женском платье со спутанными волосами и с счастливой и новой для Сони улыбкой. Соня быстро подбежала к нему.
«Совсем другая, и всё та же», думал Николай, глядя на ее лицо, всё освещенное лунным светом. Он продел руки под шубку, прикрывавшую ее голову, обнял, прижал к себе и поцеловал в губы, над которыми были усы и от которых пахло жженой пробкой. Соня в самую середину губ поцеловала его и, выпростав маленькие руки, с обеих сторон взяла его за щеки.
– Соня!… Nicolas!… – только сказали они. Они подбежали к амбару и вернулись назад каждый с своего крыльца.


Когда все поехали назад от Пелагеи Даниловны, Наташа, всегда всё видевшая и замечавшая, устроила так размещение, что Луиза Ивановна и она сели в сани с Диммлером, а Соня села с Николаем и девушками.
Николай, уже не перегоняясь, ровно ехал в обратный путь, и всё вглядываясь в этом странном, лунном свете в Соню, отыскивал при этом всё переменяющем свете, из под бровей и усов свою ту прежнюю и теперешнюю Соню, с которой он решил уже никогда не разлучаться. Он вглядывался, и когда узнавал всё ту же и другую и вспоминал, слышав этот запах пробки, смешанный с чувством поцелуя, он полной грудью вдыхал в себя морозный воздух и, глядя на уходящую землю и блестящее небо, он чувствовал себя опять в волшебном царстве.
– Соня, тебе хорошо? – изредка спрашивал он.
– Да, – отвечала Соня. – А тебе ?
На середине дороги Николай дал подержать лошадей кучеру, на минутку подбежал к саням Наташи и стал на отвод.
– Наташа, – сказал он ей шопотом по французски, – знаешь, я решился насчет Сони.
– Ты ей сказал? – спросила Наташа, вся вдруг просияв от радости.
– Ах, какая ты странная с этими усами и бровями, Наташа! Ты рада?
– Я так рада, так рада! Я уж сердилась на тебя. Я тебе не говорила, но ты дурно с ней поступал. Это такое сердце, Nicolas. Как я рада! Я бываю гадкая, но мне совестно было быть одной счастливой без Сони, – продолжала Наташа. – Теперь я так рада, ну, беги к ней.
– Нет, постой, ах какая ты смешная! – сказал Николай, всё всматриваясь в нее, и в сестре тоже находя что то новое, необыкновенное и обворожительно нежное, чего он прежде не видал в ней. – Наташа, что то волшебное. А?
– Да, – отвечала она, – ты прекрасно сделал.
«Если б я прежде видел ее такою, какою она теперь, – думал Николай, – я бы давно спросил, что сделать и сделал бы всё, что бы она ни велела, и всё бы было хорошо».
– Так ты рада, и я хорошо сделал?
– Ах, так хорошо! Я недавно с мамашей поссорилась за это. Мама сказала, что она тебя ловит. Как это можно говорить? Я с мама чуть не побранилась. И никому никогда не позволю ничего дурного про нее сказать и подумать, потому что в ней одно хорошее.
– Так хорошо? – сказал Николай, еще раз высматривая выражение лица сестры, чтобы узнать, правда ли это, и, скрыпя сапогами, он соскочил с отвода и побежал к своим саням. Всё тот же счастливый, улыбающийся черкес, с усиками и блестящими глазами, смотревший из под собольего капора, сидел там, и этот черкес был Соня, и эта Соня была наверное его будущая, счастливая и любящая жена.
Приехав домой и рассказав матери о том, как они провели время у Мелюковых, барышни ушли к себе. Раздевшись, но не стирая пробочных усов, они долго сидели, разговаривая о своем счастьи. Они говорили о том, как они будут жить замужем, как их мужья будут дружны и как они будут счастливы.
На Наташином столе стояли еще с вечера приготовленные Дуняшей зеркала. – Только когда всё это будет? Я боюсь, что никогда… Это было бы слишком хорошо! – сказала Наташа вставая и подходя к зеркалам.
– Садись, Наташа, может быть ты увидишь его, – сказала Соня. Наташа зажгла свечи и села. – Какого то с усами вижу, – сказала Наташа, видевшая свое лицо.
– Не надо смеяться, барышня, – сказала Дуняша.
Наташа нашла с помощью Сони и горничной положение зеркалу; лицо ее приняло серьезное выражение, и она замолкла. Долго она сидела, глядя на ряд уходящих свечей в зеркалах, предполагая (соображаясь с слышанными рассказами) то, что она увидит гроб, то, что увидит его, князя Андрея, в этом последнем, сливающемся, смутном квадрате. Но как ни готова она была принять малейшее пятно за образ человека или гроба, она ничего не видала. Она часто стала мигать и отошла от зеркала.
– Отчего другие видят, а я ничего не вижу? – сказала она. – Ну садись ты, Соня; нынче непременно тебе надо, – сказала она. – Только за меня… Мне так страшно нынче!
Соня села за зеркало, устроила положение, и стала смотреть.
– Вот Софья Александровна непременно увидят, – шопотом сказала Дуняша; – а вы всё смеетесь.
Соня слышала эти слова, и слышала, как Наташа шопотом сказала:
– И я знаю, что она увидит; она и прошлого года видела.
Минуты три все молчали. «Непременно!» прошептала Наташа и не докончила… Вдруг Соня отсторонила то зеркало, которое она держала, и закрыла глаза рукой.
– Ах, Наташа! – сказала она.
– Видела? Видела? Что видела? – вскрикнула Наташа, поддерживая зеркало.
Соня ничего не видала, она только что хотела замигать глазами и встать, когда услыхала голос Наташи, сказавшей «непременно»… Ей не хотелось обмануть ни Дуняшу, ни Наташу, и тяжело было сидеть. Она сама не знала, как и вследствие чего у нее вырвался крик, когда она закрыла глаза рукою.
– Его видела? – спросила Наташа, хватая ее за руку.
– Да. Постой… я… видела его, – невольно сказала Соня, еще не зная, кого разумела Наташа под словом его: его – Николая или его – Андрея.
«Но отчего же мне не сказать, что я видела? Ведь видят же другие! И кто же может уличить меня в том, что я видела или не видала?» мелькнуло в голове Сони.
– Да, я его видела, – сказала она.
– Как же? Как же? Стоит или лежит?
– Нет, я видела… То ничего не было, вдруг вижу, что он лежит.
– Андрей лежит? Он болен? – испуганно остановившимися глазами глядя на подругу, спрашивала Наташа.
– Нет, напротив, – напротив, веселое лицо, и он обернулся ко мне, – и в ту минуту как она говорила, ей самой казалось, что она видела то, что говорила.
– Ну а потом, Соня?…
– Тут я не рассмотрела, что то синее и красное…
– Соня! когда он вернется? Когда я увижу его! Боже мой, как я боюсь за него и за себя, и за всё мне страшно… – заговорила Наташа, и не отвечая ни слова на утешения Сони, легла в постель и долго после того, как потушили свечу, с открытыми глазами, неподвижно лежала на постели и смотрела на морозный, лунный свет сквозь замерзшие окна.


Вскоре после святок Николай объявил матери о своей любви к Соне и о твердом решении жениться на ней. Графиня, давно замечавшая то, что происходило между Соней и Николаем, и ожидавшая этого объяснения, молча выслушала его слова и сказала сыну, что он может жениться на ком хочет; но что ни она, ни отец не дадут ему благословения на такой брак. В первый раз Николай почувствовал, что мать недовольна им, что несмотря на всю свою любовь к нему, она не уступит ему. Она, холодно и не глядя на сына, послала за мужем; и, когда он пришел, графиня хотела коротко и холодно в присутствии Николая сообщить ему в чем дело, но не выдержала: заплакала слезами досады и вышла из комнаты. Старый граф стал нерешительно усовещивать Николая и просить его отказаться от своего намерения. Николай отвечал, что он не может изменить своему слову, и отец, вздохнув и очевидно смущенный, весьма скоро перервал свою речь и пошел к графине. При всех столкновениях с сыном, графа не оставляло сознание своей виноватости перед ним за расстройство дел, и потому он не мог сердиться на сына за отказ жениться на богатой невесте и за выбор бесприданной Сони, – он только при этом случае живее вспоминал то, что, ежели бы дела не были расстроены, нельзя было для Николая желать лучшей жены, чем Соня; и что виновен в расстройстве дел только один он с своим Митенькой и с своими непреодолимыми привычками.
Отец с матерью больше не говорили об этом деле с сыном; но несколько дней после этого, графиня позвала к себе Соню и с жестокостью, которой не ожидали ни та, ни другая, графиня упрекала племянницу в заманивании сына и в неблагодарности. Соня, молча с опущенными глазами, слушала жестокие слова графини и не понимала, чего от нее требуют. Она всем готова была пожертвовать для своих благодетелей. Мысль о самопожертвовании была любимой ее мыслью; но в этом случае она не могла понять, кому и чем ей надо жертвовать. Она не могла не любить графиню и всю семью Ростовых, но и не могла не любить Николая и не знать, что его счастие зависело от этой любви. Она была молчалива и грустна, и не отвечала. Николай не мог, как ему казалось, перенести долее этого положения и пошел объясниться с матерью. Николай то умолял мать простить его и Соню и согласиться на их брак, то угрожал матери тем, что, ежели Соню будут преследовать, то он сейчас же женится на ней тайно.
Графиня с холодностью, которой никогда не видал сын, отвечала ему, что он совершеннолетний, что князь Андрей женится без согласия отца, и что он может то же сделать, но что никогда она не признает эту интригантку своей дочерью.
Взорванный словом интригантка , Николай, возвысив голос, сказал матери, что он никогда не думал, чтобы она заставляла его продавать свои чувства, и что ежели это так, то он последний раз говорит… Но он не успел сказать того решительного слова, которого, судя по выражению его лица, с ужасом ждала мать и которое может быть навсегда бы осталось жестоким воспоминанием между ними. Он не успел договорить, потому что Наташа с бледным и серьезным лицом вошла в комнату от двери, у которой она подслушивала.
– Николинька, ты говоришь пустяки, замолчи, замолчи! Я тебе говорю, замолчи!.. – почти кричала она, чтобы заглушить его голос.
– Мама, голубчик, это совсем не оттого… душечка моя, бедная, – обращалась она к матери, которая, чувствуя себя на краю разрыва, с ужасом смотрела на сына, но, вследствие упрямства и увлечения борьбы, не хотела и не могла сдаться.
– Николинька, я тебе растолкую, ты уйди – вы послушайте, мама голубушка, – говорила она матери.
Слова ее были бессмысленны; но они достигли того результата, к которому она стремилась.
Графиня тяжело захлипав спрятала лицо на груди дочери, а Николай встал, схватился за голову и вышел из комнаты.
Наташа взялась за дело примирения и довела его до того, что Николай получил обещание от матери в том, что Соню не будут притеснять, и сам дал обещание, что он ничего не предпримет тайно от родителей.
С твердым намерением, устроив в полку свои дела, выйти в отставку, приехать и жениться на Соне, Николай, грустный и серьезный, в разладе с родными, но как ему казалось, страстно влюбленный, в начале января уехал в полк.
После отъезда Николая в доме Ростовых стало грустнее чем когда нибудь. Графиня от душевного расстройства сделалась больна.
Соня была печальна и от разлуки с Николаем и еще более от того враждебного тона, с которым не могла не обращаться с ней графиня. Граф более чем когда нибудь был озабочен дурным положением дел, требовавших каких нибудь решительных мер. Необходимо было продать московский дом и подмосковную, а для продажи дома нужно было ехать в Москву. Но здоровье графини заставляло со дня на день откладывать отъезд.
Наташа, легко и даже весело переносившая первое время разлуки с своим женихом, теперь с каждым днем становилась взволнованнее и нетерпеливее. Мысль о том, что так, даром, ни для кого пропадает ее лучшее время, которое бы она употребила на любовь к нему, неотступно мучила ее. Письма его большей частью сердили ее. Ей оскорбительно было думать, что тогда как она живет только мыслью о нем, он живет настоящею жизнью, видит новые места, новых людей, которые для него интересны. Чем занимательнее были его письма, тем ей было досаднее. Ее же письма к нему не только не доставляли ей утешения, но представлялись скучной и фальшивой обязанностью. Она не умела писать, потому что не могла постигнуть возможности выразить в письме правдиво хоть одну тысячную долю того, что она привыкла выражать голосом, улыбкой и взглядом. Она писала ему классически однообразные, сухие письма, которым сама не приписывала никакого значения и в которых, по брульонам, графиня поправляла ей орфографические ошибки.
Здоровье графини все не поправлялось; но откладывать поездку в Москву уже не было возможности. Нужно было делать приданое, нужно было продать дом, и притом князя Андрея ждали сперва в Москву, где в эту зиму жил князь Николай Андреич, и Наташа была уверена, что он уже приехал.
Графиня осталась в деревне, а граф, взяв с собой Соню и Наташу, в конце января поехал в Москву.



Пьер после сватовства князя Андрея и Наташи, без всякой очевидной причины, вдруг почувствовал невозможность продолжать прежнюю жизнь. Как ни твердо он был убежден в истинах, открытых ему его благодетелем, как ни радостно ему было то первое время увлечения внутренней работой самосовершенствования, которой он предался с таким жаром, после помолвки князя Андрея с Наташей и после смерти Иосифа Алексеевича, о которой он получил известие почти в то же время, – вся прелесть этой прежней жизни вдруг пропала для него. Остался один остов жизни: его дом с блестящею женой, пользовавшеюся теперь милостями одного важного лица, знакомство со всем Петербургом и служба с скучными формальностями. И эта прежняя жизнь вдруг с неожиданной мерзостью представилась Пьеру. Он перестал писать свой дневник, избегал общества братьев, стал опять ездить в клуб, стал опять много пить, опять сблизился с холостыми компаниями и начал вести такую жизнь, что графиня Елена Васильевна сочла нужным сделать ему строгое замечание. Пьер почувствовав, что она была права, и чтобы не компрометировать свою жену, уехал в Москву.
В Москве, как только он въехал в свой огромный дом с засохшими и засыхающими княжнами, с громадной дворней, как только он увидал – проехав по городу – эту Иверскую часовню с бесчисленными огнями свеч перед золотыми ризами, эту Кремлевскую площадь с незаезженным снегом, этих извозчиков и лачужки Сивцева Вражка, увидал стариков московских, ничего не желающих и никуда не спеша доживающих свой век, увидал старушек, московских барынь, московские балы и Московский Английский клуб, – он почувствовал себя дома, в тихом пристанище. Ему стало в Москве покойно, тепло, привычно и грязно, как в старом халате.
Московское общество всё, начиная от старух до детей, как своего давно жданного гостя, которого место всегда было готово и не занято, – приняло Пьера. Для московского света, Пьер был самым милым, добрым, умным веселым, великодушным чудаком, рассеянным и душевным, русским, старого покроя, барином. Кошелек его всегда был пуст, потому что открыт для всех.
Бенефисы, дурные картины, статуи, благотворительные общества, цыгане, школы, подписные обеды, кутежи, масоны, церкви, книги – никто и ничто не получало отказа, и ежели бы не два его друга, занявшие у него много денег и взявшие его под свою опеку, он бы всё роздал. В клубе не было ни обеда, ни вечера без него. Как только он приваливался на свое место на диване после двух бутылок Марго, его окружали, и завязывались толки, споры, шутки. Где ссорились, он – одной своей доброй улыбкой и кстати сказанной шуткой, мирил. Масонские столовые ложи были скучны и вялы, ежели его не было.
Когда после холостого ужина он, с доброй и сладкой улыбкой, сдаваясь на просьбы веселой компании, поднимался, чтобы ехать с ними, между молодежью раздавались радостные, торжественные крики. На балах он танцовал, если не доставало кавалера. Молодые дамы и барышни любили его за то, что он, не ухаживая ни за кем, был со всеми одинаково любезен, особенно после ужина. «Il est charmant, il n'a pas de seхе», [Он очень мил, но не имеет пола,] говорили про него.
Пьер был тем отставным добродушно доживающим свой век в Москве камергером, каких были сотни.
Как бы он ужаснулся, ежели бы семь лет тому назад, когда он только приехал из за границы, кто нибудь сказал бы ему, что ему ничего не нужно искать и выдумывать, что его колея давно пробита, определена предвечно, и что, как он ни вертись, он будет тем, чем были все в его положении. Он не мог бы поверить этому! Разве не он всей душой желал, то произвести республику в России, то самому быть Наполеоном, то философом, то тактиком, победителем Наполеона? Разве не он видел возможность и страстно желал переродить порочный род человеческий и самого себя довести до высшей степени совершенства? Разве не он учреждал и школы и больницы и отпускал своих крестьян на волю?
А вместо всего этого, вот он, богатый муж неверной жены, камергер в отставке, любящий покушать, выпить и расстегнувшись побранить легко правительство, член Московского Английского клуба и всеми любимый член московского общества. Он долго не мог помириться с той мыслью, что он есть тот самый отставной московский камергер, тип которого он так глубоко презирал семь лет тому назад.
Иногда он утешал себя мыслями, что это только так, покамест, он ведет эту жизнь; но потом его ужасала другая мысль, что так, покамест, уже сколько людей входили, как он, со всеми зубами и волосами в эту жизнь и в этот клуб и выходили оттуда без одного зуба и волоса.
В минуты гордости, когда он думал о своем положении, ему казалось, что он совсем другой, особенный от тех отставных камергеров, которых он презирал прежде, что те были пошлые и глупые, довольные и успокоенные своим положением, «а я и теперь всё недоволен, всё мне хочется сделать что то для человечества», – говорил он себе в минуты гордости. «А может быть и все те мои товарищи, точно так же, как и я, бились, искали какой то новой, своей дороги в жизни, и так же как и я силой обстановки, общества, породы, той стихийной силой, против которой не властен человек, были приведены туда же, куда и я», говорил он себе в минуты скромности, и поживши в Москве несколько времени, он не презирал уже, а начинал любить, уважать и жалеть, так же как и себя, своих по судьбе товарищей.
На Пьера не находили, как прежде, минуты отчаяния, хандры и отвращения к жизни; но та же болезнь, выражавшаяся прежде резкими припадками, была вогнана внутрь и ни на мгновенье не покидала его. «К чему? Зачем? Что такое творится на свете?» спрашивал он себя с недоумением по нескольку раз в день, невольно начиная вдумываться в смысл явлений жизни; но опытом зная, что на вопросы эти не было ответов, он поспешно старался отвернуться от них, брался за книгу, или спешил в клуб, или к Аполлону Николаевичу болтать о городских сплетнях.
«Елена Васильевна, никогда ничего не любившая кроме своего тела и одна из самых глупых женщин в мире, – думал Пьер – представляется людям верхом ума и утонченности, и перед ней преклоняются. Наполеон Бонапарт был презираем всеми до тех пор, пока он был велик, и с тех пор как он стал жалким комедиантом – император Франц добивается предложить ему свою дочь в незаконные супруги. Испанцы воссылают мольбы Богу через католическое духовенство в благодарность за то, что они победили 14 го июня французов, а французы воссылают мольбы через то же католическое духовенство о том, что они 14 го июня победили испанцев. Братья мои масоны клянутся кровью в том, что они всем готовы жертвовать для ближнего, а не платят по одному рублю на сборы бедных и интригуют Астрея против Ищущих манны, и хлопочут о настоящем Шотландском ковре и об акте, смысла которого не знает и тот, кто писал его, и которого никому не нужно. Все мы исповедуем христианский закон прощения обид и любви к ближнему – закон, вследствие которого мы воздвигли в Москве сорок сороков церквей, а вчера засекли кнутом бежавшего человека, и служитель того же самого закона любви и прощения, священник, давал целовать солдату крест перед казнью». Так думал Пьер, и эта вся, общая, всеми признаваемая ложь, как он ни привык к ней, как будто что то новое, всякий раз изумляла его. – «Я понимаю эту ложь и путаницу, думал он, – но как мне рассказать им всё, что я понимаю? Я пробовал и всегда находил, что и они в глубине души понимают то же, что и я, но стараются только не видеть ее . Стало быть так надо! Но мне то, мне куда деваться?» думал Пьер. Он испытывал несчастную способность многих, особенно русских людей, – способность видеть и верить в возможность добра и правды, и слишком ясно видеть зло и ложь жизни, для того чтобы быть в силах принимать в ней серьезное участие. Всякая область труда в глазах его соединялась со злом и обманом. Чем он ни пробовал быть, за что он ни брался – зло и ложь отталкивали его и загораживали ему все пути деятельности. А между тем надо было жить, надо было быть заняту. Слишком страшно было быть под гнетом этих неразрешимых вопросов жизни, и он отдавался первым увлечениям, чтобы только забыть их. Он ездил во всевозможные общества, много пил, покупал картины и строил, а главное читал.
Он читал и читал всё, что попадалось под руку, и читал так что, приехав домой, когда лакеи еще раздевали его, он, уже взяв книгу, читал – и от чтения переходил ко сну, и от сна к болтовне в гостиных и клубе, от болтовни к кутежу и женщинам, от кутежа опять к болтовне, чтению и вину. Пить вино для него становилось всё больше и больше физической и вместе нравственной потребностью. Несмотря на то, что доктора говорили ему, что с его корпуленцией, вино для него опасно, он очень много пил. Ему становилось вполне хорошо только тогда, когда он, сам не замечая как, опрокинув в свой большой рот несколько стаканов вина, испытывал приятную теплоту в теле, нежность ко всем своим ближним и готовность ума поверхностно отзываться на всякую мысль, не углубляясь в сущность ее. Только выпив бутылку и две вина, он смутно сознавал, что тот запутанный, страшный узел жизни, который ужасал его прежде, не так страшен, как ему казалось. С шумом в голове, болтая, слушая разговоры или читая после обеда и ужина, он беспрестанно видел этот узел, какой нибудь стороной его. Но только под влиянием вина он говорил себе: «Это ничего. Это я распутаю – вот у меня и готово объяснение. Но теперь некогда, – я после обдумаю всё это!» Но это после никогда не приходило.
Натощак, поутру, все прежние вопросы представлялись столь же неразрешимыми и страшными, и Пьер торопливо хватался за книгу и радовался, когда кто нибудь приходил к нему.
Иногда Пьер вспоминал о слышанном им рассказе о том, как на войне солдаты, находясь под выстрелами в прикрытии, когда им делать нечего, старательно изыскивают себе занятие, для того чтобы легче переносить опасность. И Пьеру все люди представлялись такими солдатами, спасающимися от жизни: кто честолюбием, кто картами, кто писанием законов, кто женщинами, кто игрушками, кто лошадьми, кто политикой, кто охотой, кто вином, кто государственными делами. «Нет ни ничтожного, ни важного, всё равно: только бы спастись от нее как умею»! думал Пьер. – «Только бы не видать ее , эту страшную ее ».


В начале зимы, князь Николай Андреич Болконский с дочерью приехали в Москву. По своему прошедшему, по своему уму и оригинальности, в особенности по ослаблению на ту пору восторга к царствованию императора Александра, и по тому анти французскому и патриотическому направлению, которое царствовало в то время в Москве, князь Николай Андреич сделался тотчас же предметом особенной почтительности москвичей и центром московской оппозиции правительству.
Князь очень постарел в этот год. В нем появились резкие признаки старости: неожиданные засыпанья, забывчивость ближайших по времени событий и памятливость к давнишним, и детское тщеславие, с которым он принимал роль главы московской оппозиции. Несмотря на то, когда старик, особенно по вечерам, выходил к чаю в своей шубке и пудренном парике, и начинал, затронутый кем нибудь, свои отрывистые рассказы о прошедшем, или еще более отрывистые и резкие суждения о настоящем, он возбуждал во всех своих гостях одинаковое чувство почтительного уважения. Для посетителей весь этот старинный дом с огромными трюмо, дореволюционной мебелью, этими лакеями в пудре, и сам прошлого века крутой и умный старик с его кроткою дочерью и хорошенькой француженкой, которые благоговели перед ним, – представлял величественно приятное зрелище. Но посетители не думали о том, что кроме этих двух трех часов, во время которых они видели хозяев, было еще 22 часа в сутки, во время которых шла тайная внутренняя жизнь дома.
В последнее время в Москве эта внутренняя жизнь сделалась очень тяжела для княжны Марьи. Она была лишена в Москве тех своих лучших радостей – бесед с божьими людьми и уединения, – которые освежали ее в Лысых Горах, и не имела никаких выгод и радостей столичной жизни. В свет она не ездила; все знали, что отец не пускает ее без себя, а сам он по нездоровью не мог ездить, и ее уже не приглашали на обеды и вечера. Надежду на замужество княжна Марья совсем оставила. Она видела ту холодность и озлобление, с которыми князь Николай Андреич принимал и спроваживал от себя молодых людей, могущих быть женихами, иногда являвшихся в их дом. Друзей у княжны Марьи не было: в этот приезд в Москву она разочаровалась в своих двух самых близких людях. М lle Bourienne, с которой она и прежде не могла быть вполне откровенна, теперь стала ей неприятна и она по некоторым причинам стала отдаляться от нее. Жюли, которая была в Москве и к которой княжна Марья писала пять лет сряду, оказалась совершенно чужою ей, когда княжна Марья вновь сошлась с нею лично. Жюли в это время, по случаю смерти братьев сделавшись одной из самых богатых невест в Москве, находилась во всем разгаре светских удовольствий. Она была окружена молодыми людьми, которые, как она думала, вдруг оценили ее достоинства. Жюли находилась в том периоде стареющейся светской барышни, которая чувствует, что наступил последний шанс замужества, и теперь или никогда должна решиться ее участь. Княжна Марья с грустной улыбкой вспоминала по четвергам, что ей теперь писать не к кому, так как Жюли, Жюли, от присутствия которой ей не было никакой радости, была здесь и виделась с нею каждую неделю. Она, как старый эмигрант, отказавшийся жениться на даме, у которой он проводил несколько лет свои вечера, жалела о том, что Жюли была здесь и ей некому писать. Княжне Марье в Москве не с кем было поговорить, некому поверить своего горя, а горя много прибавилось нового за это время. Срок возвращения князя Андрея и его женитьбы приближался, а его поручение приготовить к тому отца не только не было исполнено, но дело напротив казалось совсем испорчено, и напоминание о графине Ростовой выводило из себя старого князя, и так уже большую часть времени бывшего не в духе. Новое горе, прибавившееся в последнее время для княжны Марьи, были уроки, которые она давала шестилетнему племяннику. В своих отношениях с Николушкой она с ужасом узнавала в себе свойство раздражительности своего отца. Сколько раз она ни говорила себе, что не надо позволять себе горячиться уча племянника, почти всякий раз, как она садилась с указкой за французскую азбуку, ей так хотелось поскорее, полегче перелить из себя свое знание в ребенка, уже боявшегося, что вот вот тетя рассердится, что она при малейшем невнимании со стороны мальчика вздрагивала, торопилась, горячилась, возвышала голос, иногда дергала его за руку и ставила в угол. Поставив его в угол, она сама начинала плакать над своей злой, дурной натурой, и Николушка, подражая ей рыданьями, без позволенья выходил из угла, подходил к ней и отдергивал от лица ее мокрые руки, и утешал ее. Но более, более всего горя доставляла княжне раздражительность ее отца, всегда направленная против дочери и дошедшая в последнее время до жестокости. Ежели бы он заставлял ее все ночи класть поклоны, ежели бы он бил ее, заставлял таскать дрова и воду, – ей бы и в голову не пришло, что ее положение трудно; но этот любящий мучитель, самый жестокий от того, что он любил и за то мучил себя и ее, – умышленно умел не только оскорбить, унизить ее, но и доказать ей, что она всегда и во всем была виновата. В последнее время в нем появилась новая черта, более всего мучившая княжну Марью – это было его большее сближение с m lle Bourienne. Пришедшая ему, в первую минуту по получении известия о намерении своего сына, мысль шутка о том, что ежели Андрей женится, то и он сам женится на Bourienne, – видимо понравилась ему, и он с упорством последнее время (как казалось княжне Марье) только для того, чтобы ее оскорбить, выказывал особенную ласку к m lle Bоurienne и выказывал свое недовольство к дочери выказываньем любви к Bourienne.
Однажды в Москве, в присутствии княжны Марьи (ей казалось, что отец нарочно при ней это сделал), старый князь поцеловал у m lle Bourienne руку и, притянув ее к себе, обнял лаская. Княжна Марья вспыхнула и выбежала из комнаты. Через несколько минут m lle Bourienne вошла к княжне Марье, улыбаясь и что то весело рассказывая своим приятным голосом. Княжна Марья поспешно отерла слезы, решительными шагами подошла к Bourienne и, видимо сама того не зная, с гневной поспешностью и взрывами голоса, начала кричать на француженку: «Это гадко, низко, бесчеловечно пользоваться слабостью…» Она не договорила. «Уйдите вон из моей комнаты», прокричала она и зарыдала.
На другой день князь ни слова не сказал своей дочери; но она заметила, что за обедом он приказал подавать кушанье, начиная с m lle Bourienne. В конце обеда, когда буфетчик, по прежней привычке, опять подал кофе, начиная с княжны, князь вдруг пришел в бешенство, бросил костылем в Филиппа и тотчас же сделал распоряжение об отдаче его в солдаты. «Не слышат… два раза сказал!… не слышат!»
«Она – первый человек в этом доме; она – мой лучший друг, – кричал князь. – И ежели ты позволишь себе, – закричал он в гневе, в первый раз обращаясь к княжне Марье, – еще раз, как вчера ты осмелилась… забыться перед ней, то я тебе покажу, кто хозяин в доме. Вон! чтоб я не видал тебя; проси у ней прощенья!»
Княжна Марья просила прощенья у Амальи Евгеньевны и у отца за себя и за Филиппа буфетчика, который просил заступы.
В такие минуты в душе княжны Марьи собиралось чувство, похожее на гордость жертвы. И вдруг в такие то минуты, при ней, этот отец, которого она осуждала, или искал очки, ощупывая подле них и не видя, или забывал то, что сейчас было, или делал слабевшими ногами неверный шаг и оглядывался, не видал ли кто его слабости, или, что было хуже всего, он за обедом, когда не было гостей, возбуждавших его, вдруг задремывал, выпуская салфетку, и склонялся над тарелкой, трясущейся головой. «Он стар и слаб, а я смею осуждать его!» думала она с отвращением к самой себе в такие минуты.


В 1811 м году в Москве жил быстро вошедший в моду французский доктор, огромный ростом, красавец, любезный, как француз и, как говорили все в Москве, врач необыкновенного искусства – Метивье. Он был принят в домах высшего общества не как доктор, а как равный.
Князь Николай Андреич, смеявшийся над медициной, последнее время, по совету m lle Bourienne, допустил к себе этого доктора и привык к нему. Метивье раза два в неделю бывал у князя.
В Николин день, в именины князя, вся Москва была у подъезда его дома, но он никого не велел принимать; а только немногих, список которых он передал княжне Марье, велел звать к обеду.
Метивье, приехавший утром с поздравлением, в качестве доктора, нашел приличным de forcer la consigne [нарушить запрет], как он сказал княжне Марье, и вошел к князю. Случилось так, что в это именинное утро старый князь был в одном из своих самых дурных расположений духа. Он целое утро ходил по дому, придираясь ко всем и делая вид, что он не понимает того, что ему говорят, и что его не понимают. Княжна Марья твердо знала это состояние духа тихой и озабоченной ворчливости, которая обыкновенно разрешалась взрывом бешенства, и как перед заряженным, с взведенными курками, ружьем, ходила всё это утро, ожидая неизбежного выстрела. Утро до приезда доктора прошло благополучно. Пропустив доктора, княжна Марья села с книгой в гостиной у двери, от которой она могла слышать всё то, что происходило в кабинете.
Сначала она слышала один голос Метивье, потом голос отца, потом оба голоса заговорили вместе, дверь распахнулась и на пороге показалась испуганная, красивая фигура Метивье с его черным хохлом, и фигура князя в колпаке и халате с изуродованным бешенством лицом и опущенными зрачками глаз.
– Не понимаешь? – кричал князь, – а я понимаю! Французский шпион, Бонапартов раб, шпион, вон из моего дома – вон, я говорю, – и он захлопнул дверь.
Метивье пожимая плечами подошел к mademoiselle Bourienne, прибежавшей на крик из соседней комнаты.
– Князь не совсем здоров, – la bile et le transport au cerveau. Tranquillisez vous, je repasserai demain, [желчь и прилив к мозгу. Успокойтесь, я завтра зайду,] – сказал Метивье и, приложив палец к губам, поспешно вышел.
За дверью слышались шаги в туфлях и крики: «Шпионы, изменники, везде изменники! В своем доме нет минуты покоя!»
После отъезда Метивье старый князь позвал к себе дочь и вся сила его гнева обрушилась на нее. Она была виновата в том, что к нему пустили шпиона. .Ведь он сказал, ей сказал, чтобы она составила список, и тех, кого не было в списке, чтобы не пускали. Зачем же пустили этого мерзавца! Она была причиной всего. С ней он не мог иметь ни минуты покоя, не мог умереть спокойно, говорил он.
– Нет, матушка, разойтись, разойтись, это вы знайте, знайте! Я теперь больше не могу, – сказал он и вышел из комнаты. И как будто боясь, чтобы она не сумела как нибудь утешиться, он вернулся к ней и, стараясь принять спокойный вид, прибавил: – И не думайте, чтобы я это сказал вам в минуту сердца, а я спокоен, и я обдумал это; и это будет – разойтись, поищите себе места!… – Но он не выдержал и с тем озлоблением, которое может быть только у человека, который любит, он, видимо сам страдая, затряс кулаками и прокричал ей:
– И хоть бы какой нибудь дурак взял ее замуж! – Он хлопнул дверью, позвал к себе m lle Bourienne и затих в кабинете.
В два часа съехались избранные шесть персон к обеду. Гости – известный граф Ростопчин, князь Лопухин с своим племянником, генерал Чатров, старый, боевой товарищ князя, и из молодых Пьер и Борис Друбецкой – ждали его в гостиной.
На днях приехавший в Москву в отпуск Борис пожелал быть представленным князю Николаю Андреевичу и сумел до такой степени снискать его расположение, что князь для него сделал исключение из всех холостых молодых людей, которых он не принимал к себе.
Дом князя был не то, что называется «свет», но это был такой маленький кружок, о котором хотя и не слышно было в городе, но в котором лестнее всего было быть принятым. Это понял Борис неделю тому назад, когда при нем Ростопчин сказал главнокомандующему, звавшему графа обедать в Николин день, что он не может быть:
– В этот день уж я всегда езжу прикладываться к мощам князя Николая Андреича.
– Ах да, да, – отвечал главнокомандующий. – Что он?..
Небольшое общество, собравшееся в старомодной, высокой, с старой мебелью, гостиной перед обедом, было похоже на собравшийся, торжественный совет судилища. Все молчали и ежели говорили, то говорили тихо. Князь Николай Андреич вышел серьезен и молчалив. Княжна Марья еще более казалась тихою и робкою, чем обыкновенно. Гости неохотно обращались к ней, потому что видели, что ей было не до их разговоров. Граф Ростопчин один держал нить разговора, рассказывая о последних то городских, то политических новостях.
Лопухин и старый генерал изредка принимали участие в разговоре. Князь Николай Андреич слушал, как верховный судья слушает доклад, который делают ему, только изредка молчанием или коротким словцом заявляя, что он принимает к сведению то, что ему докладывают. Тон разговора был такой, что понятно было, никто не одобрял того, что делалось в политическом мире. Рассказывали о событиях, очевидно подтверждающих то, что всё шло хуже и хуже; но во всяком рассказе и суждении было поразительно то, как рассказчик останавливался или бывал останавливаем всякий раз на той границе, где суждение могло относиться к лицу государя императора.
За обедом разговор зашел о последней политической новости, о захвате Наполеоном владений герцога Ольденбургского и о русской враждебной Наполеону ноте, посланной ко всем европейским дворам.
– Бонапарт поступает с Европой как пират на завоеванном корабле, – сказал граф Ростопчин, повторяя уже несколько раз говоренную им фразу. – Удивляешься только долготерпению или ослеплению государей. Теперь дело доходит до папы, и Бонапарт уже не стесняясь хочет низвергнуть главу католической религии, и все молчат! Один наш государь протестовал против захвата владений герцога Ольденбургского. И то… – Граф Ростопчин замолчал, чувствуя, что он стоял на том рубеже, где уже нельзя осуждать.
– Предложили другие владения заместо Ольденбургского герцогства, – сказал князь Николай Андреич. – Точно я мужиков из Лысых Гор переселял в Богучарово и в рязанские, так и он герцогов.
– Le duc d'Oldenbourg supporte son malheur avec une force de caractere et une resignation admirable, [Герцог Ольденбургский переносит свое несчастие с замечательной силой воли и покорностью судьбе,] – сказал Борис, почтительно вступая в разговор. Он сказал это потому, что проездом из Петербурга имел честь представляться герцогу. Князь Николай Андреич посмотрел на молодого человека так, как будто он хотел бы ему сказать кое что на это, но раздумал, считая его слишком для того молодым.
– Я читал наш протест об Ольденбургском деле и удивлялся плохой редакции этой ноты, – сказал граф Ростопчин, небрежным тоном человека, судящего о деле ему хорошо знакомом.
Пьер с наивным удивлением посмотрел на Ростопчина, не понимая, почему его беспокоила плохая редакция ноты.
– Разве не всё равно, как написана нота, граф? – сказал он, – ежели содержание ее сильно.
– Mon cher, avec nos 500 mille hommes de troupes, il serait facile d'avoir un beau style, [Мой милый, с нашими 500 ми тысячами войска легко, кажется, выражаться хорошим слогом,] – сказал граф Ростопчин. Пьер понял, почему графа Ростопчина беспокоила pедакция ноты.
– Кажется, писак довольно развелось, – сказал старый князь: – там в Петербурге всё пишут, не только ноты, – новые законы всё пишут. Мой Андрюша там для России целый волюм законов написал. Нынче всё пишут! – И он неестественно засмеялся.
Разговор замолк на минуту; старый генерал прокашливаньем обратил на себя внимание.
– Изволили слышать о последнем событии на смотру в Петербурге? как себя новый французский посланник показал!
– Что? Да, я слышал что то; он что то неловко сказал при Его Величестве.
– Его Величество обратил его внимание на гренадерскую дивизию и церемониальный марш, – продолжал генерал, – и будто посланник никакого внимания не обратил и будто позволил себе сказать, что мы у себя во Франции на такие пустяки не обращаем внимания. Государь ничего не изволил сказать. На следующем смотру, говорят, государь ни разу не изволил обратиться к нему.
Все замолчали: на этот факт, относившийся лично до государя, нельзя было заявлять никакого суждения.
– Дерзки! – сказал князь. – Знаете Метивье? Я нынче выгнал его от себя. Он здесь был, пустили ко мне, как я ни просил никого не пускать, – сказал князь, сердито взглянув на дочь. И он рассказал весь свой разговор с французским доктором и причины, почему он убедился, что Метивье шпион. Хотя причины эти были очень недостаточны и не ясны, никто не возражал.
За жарким подали шампанское. Гости встали с своих мест, поздравляя старого князя. Княжна Марья тоже подошла к нему.
Он взглянул на нее холодным, злым взглядом и подставил ей сморщенную, выбритую щеку. Всё выражение его лица говорило ей, что утренний разговор им не забыт, что решенье его осталось в прежней силе, и что только благодаря присутствию гостей он не говорит ей этого теперь.
Когда вышли в гостиную к кофе, старики сели вместе.
Князь Николай Андреич более оживился и высказал свой образ мыслей насчет предстоящей войны.
Он сказал, что войны наши с Бонапартом до тех пор будут несчастливы, пока мы будем искать союзов с немцами и будем соваться в европейские дела, в которые нас втянул Тильзитский мир. Нам ни за Австрию, ни против Австрии не надо было воевать. Наша политика вся на востоке, а в отношении Бонапарта одно – вооружение на границе и твердость в политике, и никогда он не посмеет переступить русскую границу, как в седьмом году.
– И где нам, князь, воевать с французами! – сказал граф Ростопчин. – Разве мы против наших учителей и богов можем ополчиться? Посмотрите на нашу молодежь, посмотрите на наших барынь. Наши боги – французы, наше царство небесное – Париж.
Он стал говорить громче, очевидно для того, чтобы его слышали все. – Костюмы французские, мысли французские, чувства французские! Вы вот Метивье в зашей выгнали, потому что он француз и негодяй, а наши барыни за ним ползком ползают. Вчера я на вечере был, так из пяти барынь три католички и, по разрешенью папы, в воскресенье по канве шьют. А сами чуть не голые сидят, как вывески торговых бань, с позволенья сказать. Эх, поглядишь на нашу молодежь, князь, взял бы старую дубину Петра Великого из кунсткамеры, да по русски бы обломал бока, вся бы дурь соскочила!
Все замолчали. Старый князь с улыбкой на лице смотрел на Ростопчина и одобрительно покачивал головой.
– Ну, прощайте, ваше сиятельство, не хворайте, – сказал Ростопчин, с свойственными ему быстрыми движениями поднимаясь и протягивая руку князю.
– Прощай, голубчик, – гусли, всегда заслушаюсь его! – сказал старый князь, удерживая его за руку и подставляя ему для поцелуя щеку. С Ростопчиным поднялись и другие.


Княжна Марья, сидя в гостиной и слушая эти толки и пересуды стариков, ничего не понимала из того, что она слышала; она думала только о том, не замечают ли все гости враждебных отношений ее отца к ней. Она даже не заметила особенного внимания и любезностей, которые ей во всё время этого обеда оказывал Друбецкой, уже третий раз бывший в их доме.
Княжна Марья с рассеянным, вопросительным взглядом обратилась к Пьеру, который последний из гостей, с шляпой в руке и с улыбкой на лице, подошел к ней после того, как князь вышел, и они одни оставались в гостиной.
– Можно еще посидеть? – сказал он, своим толстым телом валясь в кресло подле княжны Марьи.
– Ах да, – сказала она. «Вы ничего не заметили?» сказал ее взгляд.
Пьер находился в приятном, после обеденном состоянии духа. Он глядел перед собою и тихо улыбался.
– Давно вы знаете этого молодого человека, княжна? – сказал он.
– Какого?
– Друбецкого?
– Нет, недавно…
– Что он вам нравится?
– Да, он приятный молодой человек… Отчего вы меня это спрашиваете? – сказала княжна Марья, продолжая думать о своем утреннем разговоре с отцом.
– Оттого, что я сделал наблюдение, – молодой человек обыкновенно из Петербурга приезжает в Москву в отпуск только с целью жениться на богатой невесте.
– Вы сделали это наблюденье! – сказала княжна Марья.
– Да, – продолжал Пьер с улыбкой, – и этот молодой человек теперь себя так держит, что, где есть богатые невесты, – там и он. Я как по книге читаю в нем. Он теперь в нерешительности, кого ему атаковать: вас или mademoiselle Жюли Карагин. Il est tres assidu aupres d'elle. [Он очень к ней внимателен.]
– Он ездит к ним?
– Да, очень часто. И знаете вы новую манеру ухаживать? – с веселой улыбкой сказал Пьер, видимо находясь в том веселом духе добродушной насмешки, за который он так часто в дневнике упрекал себя.
– Нет, – сказала княжна Марья.
– Теперь чтобы понравиться московским девицам – il faut etre melancolique. Et il est tres melancolique aupres de m lle Карагин, [надо быть меланхоличным. И он очень меланхоличен с m elle Карагин,] – сказал Пьер.
– Vraiment? [Право?] – сказала княжна Марья, глядя в доброе лицо Пьера и не переставая думать о своем горе. – «Мне бы легче было, думала она, ежели бы я решилась поверить кому нибудь всё, что я чувствую. И я бы желала именно Пьеру сказать всё. Он так добр и благороден. Мне бы легче стало. Он мне подал бы совет!»
– Пошли бы вы за него замуж? – спросил Пьер.
– Ах, Боже мой, граф, есть такие минуты, что я пошла бы за всякого, – вдруг неожиданно для самой себя, со слезами в голосе, сказала княжна Марья. – Ах, как тяжело бывает любить человека близкого и чувствовать, что… ничего (продолжала она дрожащим голосом), не можешь для него сделать кроме горя, когда знаешь, что не можешь этого переменить. Тогда одно – уйти, а куда мне уйти?…
– Что вы, что с вами, княжна?
Но княжна, не договорив, заплакала.
– Я не знаю, что со мной нынче. Не слушайте меня, забудьте, что я вам сказала.
Вся веселость Пьера исчезла. Он озабоченно расспрашивал княжну, просил ее высказать всё, поверить ему свое горе; но она только повторила, что просит его забыть то, что она сказала, что она не помнит, что она сказала, и что у нее нет горя, кроме того, которое он знает – горя о том, что женитьба князя Андрея угрожает поссорить отца с сыном.
– Слышали ли вы про Ростовых? – спросила она, чтобы переменить разговор. – Мне говорили, что они скоро будут. Andre я тоже жду каждый день. Я бы желала, чтоб они увиделись здесь.
– А как он смотрит теперь на это дело? – спросил Пьер, под он разумея старого князя. Княжна Марья покачала головой.
– Но что же делать? До года остается только несколько месяцев. И это не может быть. Я бы только желала избавить брата от первых минут. Я желала бы, чтобы они скорее приехали. Я надеюсь сойтись с нею. Вы их давно знаете, – сказала княжна Марья, – скажите мне, положа руку на сердце, всю истинную правду, что это за девушка и как вы находите ее? Но всю правду; потому что, вы понимаете, Андрей так много рискует, делая это против воли отца, что я бы желала знать…
Неясный инстинкт сказал Пьеру, что в этих оговорках и повторяемых просьбах сказать всю правду, выражалось недоброжелательство княжны Марьи к своей будущей невестке, что ей хотелось, чтобы Пьер не одобрил выбора князя Андрея; но Пьер сказал то, что он скорее чувствовал, чем думал.
– Я не знаю, как отвечать на ваш вопрос, – сказал он, покраснев, сам не зная от чего. – Я решительно не знаю, что это за девушка; я никак не могу анализировать ее. Она обворожительна. А отчего, я не знаю: вот всё, что можно про нее сказать. – Княжна Марья вздохнула и выражение ее лица сказало: «Да, я этого ожидала и боялась».
– Умна она? – спросила княжна Марья. Пьер задумался.
– Я думаю нет, – сказал он, – а впрочем да. Она не удостоивает быть умной… Да нет, она обворожительна, и больше ничего. – Княжна Марья опять неодобрительно покачала головой.
– Ах, я так желаю любить ее! Вы ей это скажите, ежели увидите ее прежде меня.
– Я слышал, что они на днях будут, – сказал Пьер.
Княжна Марья сообщила Пьеру свой план о том, как она, только что приедут Ростовы, сблизится с будущей невесткой и постарается приучить к ней старого князя.


Женитьба на богатой невесте в Петербурге не удалась Борису и он с этой же целью приехал в Москву. В Москве Борис находился в нерешительности между двумя самыми богатыми невестами – Жюли и княжной Марьей. Хотя княжна Марья, несмотря на свою некрасивость, и казалась ему привлекательнее Жюли, ему почему то неловко было ухаживать за Болконской. В последнее свое свиданье с ней, в именины старого князя, на все его попытки заговорить с ней о чувствах, она отвечала ему невпопад и очевидно не слушала его.
Жюли, напротив, хотя и особенным, одной ей свойственным способом, но охотно принимала его ухаживанье.
Жюли было 27 лет. После смерти своих братьев, она стала очень богата. Она была теперь совершенно некрасива; но думала, что она не только так же хороша, но еще гораздо больше привлекательна, чем была прежде. В этом заблуждении поддерживало ее то, что во первых она стала очень богатой невестой, а во вторых то, что чем старее она становилась, тем она была безопаснее для мужчин, тем свободнее было мужчинам обращаться с нею и, не принимая на себя никаких обязательств, пользоваться ее ужинами, вечерами и оживленным обществом, собиравшимся у нее. Мужчина, который десять лет назад побоялся бы ездить каждый день в дом, где была 17 ти летняя барышня, чтобы не компрометировать ее и не связать себя, теперь ездил к ней смело каждый день и обращался с ней не как с барышней невестой, а как с знакомой, не имеющей пола.
Дом Карагиных был в эту зиму в Москве самым приятным и гостеприимным домом. Кроме званых вечеров и обедов, каждый день у Карагиных собиралось большое общество, в особенности мужчин, ужинающих в 12 м часу ночи и засиживающихся до 3 го часу. Не было бала, гулянья, театра, который бы пропускала Жюли. Туалеты ее были всегда самые модные. Но, несмотря на это, Жюли казалась разочарована во всем, говорила всякому, что она не верит ни в дружбу, ни в любовь, ни в какие радости жизни, и ожидает успокоения только там . Она усвоила себе тон девушки, понесшей великое разочарованье, девушки, как будто потерявшей любимого человека или жестоко обманутой им. Хотя ничего подобного с ней не случилось, на нее смотрели, как на такую, и сама она даже верила, что она много пострадала в жизни. Эта меланхолия, не мешавшая ей веселиться, не мешала бывавшим у нее молодым людям приятно проводить время. Каждый гость, приезжая к ним, отдавал свой долг меланхолическому настроению хозяйки и потом занимался и светскими разговорами, и танцами, и умственными играми, и турнирами буриме, которые были в моде у Карагиных. Только некоторые молодые люди, в числе которых был и Борис, более углублялись в меланхолическое настроение Жюли, и с этими молодыми людьми она имела более продолжительные и уединенные разговоры о тщете всего мирского, и им открывала свои альбомы, исписанные грустными изображениями, изречениями и стихами.