- PVSM.RU - https://www.pvsm.ru -

Microsoft SQL Server для Linux: мост между мирами Linux и Windows

Система управления реляционными базами данных Microsoft SQL Server имеет давнюю историю [1] – идея продукта зародилась еще в середине 80-ых, а первая версия появилась в 1988 году. Его основой стал язык запросов Transact-SQL, созданный совместно Microsoft и Sybase. Стратегия дальнейшего развития Microsoft SQL Server приобрела цельный и завершенный вид в 2010 году. Тогда было объявлено, что SQL Server будет представлять собой единый продукт, реализуемый в настольных системах, в центрах обработки данных и в облаке (в 32- и 64- разрядном вариантах).

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 1


В числе приоритетных направлений — бизнес-аналитика (BI) и разработка соответствующих инструментов, развитие экосистемы облачных вычислений с переносом средств бизнес-аналитики в облако, расширение возможностей работы SQL Server Management Studio со средой SQL Azure. Значительное внимание было уделено вопросам масштабирования СУБД, виртуализации приложений в среде баз данных, а также пространственному представлению данных.

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 2

Эволюция Microsoft SQL Server [2]. В последних версиях разработчики акцентировали внимание на обработке данных в оперативной памяти (in-memory) и работе с большими данными.

В качестве достоинства СУБД от Microsoft заказчики отмечают простоту внедрения, управления, программирования и обновления.

Microsoft SQL Server 2016

2016 год стал годом очередной смены версий – перехода с Microsoft SQL Server 2005 на Microsoft SQL Server 2016. Ее новые функции и усовершенствования [3] обеспечивают более высокую производительность, усиленную безопасность и полноценные интегрированные возможности в области отчетности и аналитики. Это на радикальная «смена вех», но эксперты называют Microsoft SQL Server 2016 самым значительным обновлением за всю историю продукта. Он включает инструменты расширенной аналитики, машинного обучения, а также новые возможности для анализа и визуализации информации на любых устройствах.

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 3

Новая версия Microsoft SQL Server позволяет создавать критически важные приложения для оперативной обработки транзакций (OLTP) с улучшенной масштабируемостью, производительностью при выполнении в памяти и высокой доступностью. При этом обеспечивается согласованность локальной и облачной среды: SQL Server позволяет клиентам получать доступ к данным на локальных серверах и в облаке.

Перечислим некоторые ключевые особенности Microsoft SQL Server 2016:

  • Новая технология постоянного шифрования (Always Encrypted) защищает данные при хранении и перемещении без снижения производительности БД. Безопасность особенно важна при переносе данных в облако, и постоянное шифрование призвано решить эту проблему.
    Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 4

  • Технология Stretch Database [4] позволяет динамически переносить «горячие» и «холодные» данные из SQL Server в облако Azure. Для чего это нужно? В частности, по мере накопления в базе исторических данных возрастает сложность и стоимость ее эксплуатации. Автоматический перенос архивных данных в облако по мере их устаревания — разумное решение. Такие данные перемещаются в фоновом режиме. На приложения и запросы это не влияет.
    Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 5

  • Функция Row Level Security [5] (RLS) позволяет администраторам контролировать доступ пользователей к тем или иным данным и управлять им. Это особенно полезно в ситуациях, когда требуется детальное разграничение доступа, например, в некоторых госструктурах или медицинских учреждениях.
    Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 6

  • Согласованность локальной и облачной среды. Независимо от того, где находятся данные — в корпоративном центре обработки данных, в частном облаке или в облаке Microsoft Azure, — обеспечивается согласованная работа как для сервера, так и для базы данных, предоставляемой в качестве услуги. Поддержка гибридного облака дает возможность распределять нагрузку между локальной и облачной средой. Это означает экономию и гибкость.
  • Высокая производительность Data Warehousing — №1, №2 и №3 в тесте TPC-H 10 Terabyte для некластерных сред и №1 в тесте SAP SD Two-Tier в среде Windows.
  • Поддержка структурированных и неструктурированных данных: запросы PolyBase для данных Hadoop. Можно выполнять запросы реляционных и нереляционных данных, используя простой T-SQL с помощью PolyBase. При этом отдельный Microsoft SQL Server 2016 Enterprise Edition используется в качестве головного узла, а масштабирование осуществляется с помощью нескольких вычислительных узлов Standard Edition.
    Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 7

  • Комплексная мобильная бизнес-аналитика помогает преобразовать данные в полезную информацию, получая ценные сведения на любом устройстве (как с подключением к интернету, так и без него) в виде отчетов. Предлагается более 250 встроенных аналитических функций.
    Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 8

  • Расширенная аналитика в базе данных дает возможность анализировать операционные данные в режиме реального времени и с требуемым масштабом непосредственно в базе данных SQL Server. Тем самым устраняется потребность в их перемещении. Анонсированный Microsoft R Server использует технологии приобретенной компании Revolution Analytics для поддержки Hadoop и Teradata.
    Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 9

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 10

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

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 11

Оперативная аналитика в реальном времени позволяет быстрее принимать решения.

SQL Server 2016 работает значительно быстрее прежних версий: на том же оборудовании запросы выполняются примерно на 25% быстрее, а при использовании некоторых новых средств SQL Server 2016 с обработкой в памяти выигрыш достигает 30 раз для OLTP-транзакций и 100 раз для запросов (данные Microsoft). Однако и требования к аппаратному обеспечению в новой версии выросли.

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 12

Функциональные отличия разных редакций SQL Server 2016.

Функциональные возможности SQL Server 2016

Производительность Выполнение OLTP в памяти
Хранение столбцов в памяти
Операционная аналитика в реальном времени
Регулятор ресурсов
Хранение запросов
Доступность AlwaysOn
Расширенная поддержка визуализации и динамическая миграция
Безопасность Постоянное шифрование
Прозрачное шифрование данных
Безопасность на уровне строк
Динамическая маскировка данных
Поддержка шифрования резервного копирования
Детальный аудит
Разделение обязанностей
Программируемость Поддержка JSON
Запросы PolyBase для данных Hadoop
Temporal
Готовность к использованию в облаке Stretch Database
Архивирование в Azure
Аварийное восстановление в Azure
Оптимизированные образы виртуальных машин в коллекции Azure
Управление Распределенное воспроизведение
Управление на основе политик
Бизнес-аналитика Усовершенствованные отчеты
Мобильная бизнес-аналитика
Сервисы интеграции, управляемые в качестве сервера
Закрепление отчетов в Power BI
Многомерные семантические модели
Усовершенствованные табличные семантические модели бизнес-аналитики
Сервисы основных данных
Сервисы качества данных
Расширенная аналитика Расширенная аналитика в базе данных с помощью служб R Services
Многопоточная обработка запросов R и потоковая обработка в памяти

(красным выделены новые возможности, отсутствующие в SQL Server 2014).

В последние годы Microsoft расширила спектр своих предложений. Наряду с SQL Server в ее арсенале есть также Azure SQL Database («СУБД как сервис») и два облачных noSQL-решения — Azure DocumentDB и Azure Tables. В 2016 году корпорация Microsoft сделала еще один важный анонс — представила SQL Server для Linux. Ее платформа для управления данными и бизнес-аналитики стала еще более универсальной, расширив возможности для работы с данными и приложениями с применением разных инструментов, языков и систем в облачной, гибридной или локальной среде. Это еще один шаг в сторону упрощения SQL Server и повышения его доступности. Релиз этой версии ожидается в середине 2017 года.

Встречайте SQL Server для Linux

SQL Server для Linux [6], созданный на основе SQL Server 2016, предоставляет возможность разработки и развертывания интеллектуальных приложений на единой платформе для управления данными и бизнес-аналитики. Объявленная Microsoft поддержка операционных систем семейства Linux в новой версии SQL Server — очередной шаг корпорации по выходу на рынок Linux-систем после заключения партнерского соглашения с RedHat и Canonical.

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 13

C выпуском SQL Server для Linux разработчики получат широкие возможности выбора платформы для приложений, а пользователи виртуальных серверов (VPS [7]) смогут развертывать SQL Server не только под Windows. Приложения SQL Server можно будет запускать в контейнерах Docker.

В частности, некоторые заказчики уже используют сервисы Azure Data Lake на Ubuntu. Теперь разработчики смогут создавать новые приложения со всеми возможностями SQL Server. А сотрудничество с Red Hat означает перенос SQL Server на платформу Red Hat Enterprise: заказчики получат еже более широкие возможности выбора ОС. На сайте SQL Server также уже появилась информация относительно новых возможностей СУБД.

В марте 2016 года была выпущена предварительная ознакомительная версия SQL Server для Linux, содержащая базовые функции системы управления реляционными базами данных. Как ожидается, Linux-версия SQL Server будет иметь уровень производительности, необходимый для решения критически важных задач, низкий показатель TCO (совокупную стоимость владения), высокий уровень безопасности и поддержку технологий гибридных облаков, включая как Stretch Database.
Microsoft подошла к принятию открытого кода еще в 2008 году, когда корпорация присоединилась к фонду Apache Software Foundation. В 2009 году она внесла один из наиболее крупных вкладов в разработку Linux благодаря коду, обеспечивающему виртуализацию на базе гипервизора Hyper-V.
Начиная с 2014 года Microsoft стала еще активнее поддерживать сообщество разработчиков открытого программного обеспечения. Был полностью или частично открыт код платформы .Net, компиляторов С# и Visual Basic, браузера Edge и некоторых других продуктов. Microsoft стала платиновым участником Linux Foundation наравне с Fujitsu, HP, Cisco, Huawei, IBM, Intel, Samsung, NEC, Qualcomm и Oracle. Сегодня она участвует во многих проектах Open Source, которые ведет Linux Foundation, включая CII, node.js Foundation, OpenAPI и OpenDaylight.

Поэтому и поддержка ядра Linux не стала для отрасли неожиданностью. Microsoft не только еще раз продемонстрировала, что играет важную роль в движении Open Source. Выпуск SQL Server для Linux имеет целью расширение рынка: корпорация не желает упускать те 15% мирового рынка СУБД, которые занимают Linux-продукты Oracle и IBM. По данным IDC, Microsoft принадлежит более половины мирового рынка СУБД для Windows. Однако на других платформах лидирует Oracle, доля которой приближается к 50%.

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 14

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

Microsoft объявила, что заказчики бесплатно смогут приобрести лицензии на SQL Server при условии, что они решат отказаться от СУБД Oracle. «Перестаньте зависеть от Oracle. Перенесите свои базы данных Oracle на SQL Server и получите соответствующие временные лицензии SQL Server совершенно бесплатно вместе с Software Assurance», — призывает Microsoft на своем сайте. Корпорация даже разработала онлайн-тренинг: «Преобразование бизнеса путем перехода с Oracle на SQL Server».

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 15

Компания Canonical уже сделала SQL Server для Linux доступным в образах ОС Ubuntu, которую пользователи устанавливают в Microsoft Azure. Это позволяет им гибко использовать вычислительные ресурсы и недорогое дисковое хранилище. Такой вариант резко снижает общую стоимость платформы. Кроме того, в облачных средах ресурсы оптимизированы под рост рабочих нагрузок. Используя Docker и инструменты оркестрации Canonical, можно гибко наращивать производительность в соответствии с нагрузкой. Azure и контейнерные технологии в среде Linux позволяют реализовать сложные и высоконагруженные проекты без покупки дополнительного оборудования.

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 16

По данным опроса [8] администраторов баз данных, Microsoft SQL Server уже используется в большинстве организаций.

Выпуск SQL Server для Linux означает, что Microsoft становится поставщиком кроссплатформенных решений. Ранее Microsoft уже перенесла свой Office и Office 365 на платформы iOS и Android. Такие продукты как Microsoft Intune и Azure AD также поддерживают разные устройства.

Проект Microsoft под кодовым наименованием Helsinki предполагает перенос SQL Server на несколько дистрибутивов Linux, включая Ubuntu, Red Hat Enterprise Linux и SUSE Linux Enterprise Server. Это логично дополняет и облачную стратегию корпорации — поддержку IaaS VM в Microsoft Azure для разных дистрибутивов Linux (CentOS, openSUSE, Oracle Linux, SUSE Linux Enterprise Server, Red Hat Enterprise Linux и Ubuntu). При покупке лицензий SQL Server (в расчете на сервер или на ядро процессора) заказчик сможет использовать одну и ту же лицензию в Windows Server и Linux. По программе Software Assurance можно бесплатно получать будущие версии продукта.

Конкурентный анализ рынка РСУБД за последние 30 лет показывает уверенный рост Microsoft SQL Server, особенно после выпуска SQL Server 2000. С поддержкой Linux этот рост мог бы быть еще значительнее. В настоящее время Linux, ПО виртуализации, контейнеризации, оркестрации, прикладные и связующие среды с открытым кодом играют важную роль в публичном облаке. Кроме того, по данным IDC, почти 40% серверов x86 продаются с ОС Linux и треть из них используются как серверы баз данных. Конечно, Microsoft SQL Server не станет продуктом с открытым исходным кодом, но, предлагая его как компонент стека Open Source, Microsoft существенно увеличит число инсталляций. Это серьезный вызов Oracle и IBM DB2 – также проприетарных СУБД для сред Open Source.

Каким он будет?

Следующая версия SQL Server под условным названием SQL Server v.Next предоставит экосистеме Linux возможности СУБД Microsoft, включая SQL Server Agent, аутентификацию в Active Directory, средства обеспечения высокой доступности и аварийного восстановления, безопасности и защиты данных. Предварительная версия SQL Server для Linux уже доступна для Red Hat Enterprise Linux (RHEL), SUSE Linux Enterprise Server (SLES), Ubuntu, а также облачных и контейнерных платформ, таких как OpenStack, Docker Swarm, Kubernetes и Mesosphere D/C OS.

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 17

Знакомьтесь: SQL Server для Linux [9]. В него будут включены все основные средства SQL Server 2016.

SQL Server для Linux включает также такие средства SQL Server 2016 как хранение столбцов в памяти, что повышает производительность при выполнении запросов до 10 раз, In-Memory OLTP, благодаря чему скорость по сравнению с хранением таблиц на диске увеличивается до 2,5 раз. А Row-Level Security и Dynamic Data Masking защищают данные на сервере от несанкционированного доступа без внесения изменений в клиентские приложения.

При инсталляции SQL Server 2016 применяются стандартные для Linux методы: yum для дистрибутивов Fedora и apt-get для Debian. Поддерживается запуск по systemd, пути файлов Linux в операторах T-SQL и скриптах. Кластерами высокой доступности можно управлять с помощью таких популярных Linux-инструментов как Pacemaker и Corosync.

Microsoft предлагает также кросс-платформенные инструменты для SQL Server в Linux или Windows, такие как SQL Server Management Studio (SSMS), SQL Server Data Tools (SSDT), PowerShell (sqlps) и недавно анонсированное Visual Studio Code Extension для SQL Server. Поддерживаются также средства Microsoft Migration Assistant для переноса нагрузок. С помощью кросс-платформенных инструментов организации могут уже сейчас начать миграцию на SQL Server для Linux, а в 2017 году перейти на коммерческую версию v.Next.

Microsoft SQL Server для Linux: мост между мирами Linux и Windows - 18

Непрерывная интеграция и доставка (Continuous integration and continuous delivery, CI/CD) – практика DevOps, которая ускоряет внесение исправлений и изменений, позволяет выпускать продукты на рынок, повышать их качество и надежность.

Благодаря поддержке контейнеров в Windows и Linux ПО SQL Server будет работать под управлением оркестраторов Docker Swarm, Red Hat Open Shift, Mesosphere DC/OS и Kubernetes. С помощью Management Pack for SQL Server для Linux организации смогут использовать System Center Operations Manager для комплексного мониторинга – от аппаратных средств до экземпляров баз данных.

Поскольку SQL Server теперь доступен и для контейнеров, в разработке приложений можно применять некоторые практики DevOps, например, создать образ контейнера для использования в разных ОС. С помощью оркестраторов типа Docker Swarm или Red Hat Open Shift можно быстро обновлять контейнеры в тестовой и рабочей среде.

С выпуском SQL Server для Linux можно использовать базы данных в гетерогенной среде – как на собственных серверах, так и в виртуальных машинах в частных/публичных облаках и у провайдеров услуг VPS/VDS [10].

Автор: RUVDS.com

Источник [11]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/linux/212223

Ссылки в тексте:

[1] имеет давнюю историю: https://ru.wikipedia.org/wiki/Microsoft_SQL_Server

[2] Эволюция Microsoft SQL Server: https://www.microsoft.com/ru-ru/server-cloud/products/sql-server/comparison.aspx

[3] новые функции и усовершенствования: https://www.microsoft.com/ru-ru/server-cloud/products/sql-server/overview.aspx?wt.mc_id=AID529492_SEM_IddXnvg0

[4] Stretch Database: https://habrahabr.ru/post/303346/

[5] Row Level Security: https://blogs.technet.microsoft.com/cansql/2016/11/16/sql-server-2016-row-level-security/

[6] SQL Server для Linux: https://www.microsoft.com/ru-ru/server-cloud/sql-server-on-linux.aspx

[7] VPS: https://ruvds.com/

[8] По данным опроса: https://visualstudiomagazine.com/Blogs/Data-Driver/2015/04/database-survey.aspx

[9] SQL Server для Linux: https://www.microsoft.com/en-us/sql-server/sql-server-vnext-including-Linux

[10] у провайдеров услуг VPS/VDS: https://ruvds.com/ru-rub/licence/ms_sql_server

[11] Источник: https://habrahabr.ru/post/315766/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best