Новые возможности служб машинного обучения SQL Server
Область применения: SQL Server 2016 (13.x) и более поздних версий
В этих статьях описываются новые возможности и функции, включенные в различные версии служб машинного обучения SQL Server. Возможности машинного обучения добавляются в SQL Server в каждом выпуске, так как мы продолжаем расширять и углублять интеграцию между платформой данных, расширенной аналитикой и обработкой и анализом данных.
Примечание.
Возможности компонентов и параметры установки зависят от версии SQL Server. Используйте селектор, чтобы выбрать соответствующую версию SQL Server.
Новые возможности в SQL Server 2022
Начиная с SQL Server 2022 (16.x), среды выполнения для R, Python и Java больше не устанавливаются с помощью программы установки SQL. Вместо этого желаемые пользовательские среды и пакеты R необходимо устанавливать самостоятельно. Дополнительные сведения см. в разделе Установка Служб машинного обучения SQL Server 2022 (Python и R) в Windows или Установка Служб машинного обучения SQL Server (Python и R) в Linux.
Новые возможности в SQL Server 2019
В этом выпуске добавляются наиболее востребованные возможности для операций машинного обучения Python и R в SQL Server. Дополнительные сведения обо всех возможностях этого выпуска см. в статьях Новые возможности SQL Server 2019 и Заметки о выпуске SQL Server 2019.
Документацию с описанием новых возможностей Java и C# в SQL Server 2019 см. в статье Новые возможности расширений языка SQL Server.
Ниже описаны новые возможности Служб машинного обучения SQL Server, доступные в Windows и Linux.
- В Службы машинного обучения для Python и R была добавлена поддержка платформы Linux. Начните работу с установки Служб машинного обучения SQL Server в Linux.
- Подключение к SQL Server из скрипта Python или R с замыканием на себя.
- CREATE EXTERNAL LIBRARY (Transact-SQL) для Python и R.
- sp_execute_external_script вводит два новых параметра, которые позволяют легко создавать несколько моделей на основе секционированных данных. Дополнительные сведения см. в учебнике Создание моделей на основе секций в R.
- Поддержка отказоустойчивого кластера доступна для службы панели запуска, если служба панели запуска SQL Server запущена на всех узлах. Дополнительные сведения см. в статье Установка отказоустойчивого кластера SQL Server.
- Изменения в механизме изоляции для Служб машинного обучения. Дополнительные сведения см. в статье SQL Server 2019 в Windows: изменения изоляции для служб Машинное обучение.
Новые возможности в SQL Server 2017
В этом выпуске добавляется поддержка Python и ведущие в отрасли алгоритмы машинного обучения. Переименованный в соответствии с новой областью, SQL Server 2017 вводит Службы машинного обучения SQL Server (в базе данных) с языковой поддержкой Python и R.
Объявления о возможностях см. в статье Новые возможности SQL Server 2017.
Усовершенствования R
Компонент R Служб машинного обучения SQL Server является следующим поколением служб SQL Server 2016 R Services с обновленными версиями базовых пакетов R, RevoScaler и других.
Новые возможности для R включают управление пакетами со следующими особенностями:
- Роли базы данных помогают администраторам баз данных управлять пакетами и назначать разрешения для установки пакетов.
- CREATE EXTERNAL LIBRARY помогает администраторам баз данных управлять пакетами на знакомом языке T-SQL.
- Функции RevoScaleR позволяют устанавливать, удалять и просматривать пакеты, принадлежащие пользователям. Дополнительные сведения см. в статье Использование функций RevoScaleR для поиска или установки пакетов R в SQL Server.
Библиотеки R
Пакет | Description |
---|---|
MicrosoftML | В этом выпуске MicrosoftML входит в установку R по умолчанию, поэтому не придется выполнять обновление, как в предыдущей версии SQL Server 2016 R Services. MicrosoftML предоставляет современные алгоритмы машинного обучения и преобразования данных, которые можно масштабировать или запускать в удаленных контекстах вычислений. Алгоритмы включают настраиваемые глубокие нейронные сети, быстрые деревья и леса принятия решений, линейную регрессию и логистическую регрессию. |
Интеграция Python для аналитики в базе данных
Python — это язык, обеспечивающий превосходную гибкость и эффективность для выполнения различных задач машинного обучения. Библиотеки с открытым исходным кодом для Python включают несколько платформ для настраиваемых нейронных сетей, а также популярные библиотеки для обработки естественного языка.
Поскольку Python интегрирован с ядром СУБД, аналитику можно приблизить к самим данным, избежав затрат и рисков, связанных с их перемещением. Вы можете развертывать решения для машинного обучения на основе Python с помощью таких средств, как Visual Studio. Рабочие приложения могут получать прогнозы, модели или визуальные элементы из среды выполнения Python 3.5 с помощью методов доступа к данным SQL Server.
Интеграция T-SQL и Python поддерживается с помощью системной хранимой процедуры sp_execute_external_script. С помощью этой хранимой процедуры можно вызвать любой код Python. Код выполняется в безопасной двойной архитектуре, которая позволяет развертывать модели и сценарии Python корпоративного класса, вызываемые из приложения с помощью простой хранимой процедуры. Повышение производительности осуществляется с помощью потоковой передачи данных из SQL в процессы Python и параллелизации кольца MPI.
Вы можете использовать функцию T-SQL PREDICT, чтобы выполнить собственную оценку в предварительно обученной модели, которая ранее сохранялась в требуемом двоичном формате.
Библиотеки Python
Пакет | Description |
---|---|
revoscalepy | Эквивалент RevoScaleR в Python. Вы можете создавать модели Python для линейных и логистических регрессий, деревьев принятия решений, улучшенных деревьев и случайных лесов, которые подлежат параллелизации и могут выполняться в удаленных контекстах вычислений. Этот пакет поддерживает использование нескольких источников данных и удаленных контекстов вычислений. Специалист по анализу и обработке данных или разработчик может выполнять код Python на удаленном SQL Server, чтобы исследовать данные или создавать модели без перемещения данных. |
microsoftml | Эквивалент пакета MicrosoftML R в Python. |
Предварительно обученная модель
Предварительно обученные модели доступны как для Python, так и для R. Используйте эти модели для распознавания изображений и анализа положительной и отрицательной тональности, чтобы создавать прогнозы на основе собственных данных.
Изолированный сервер как общий компонент в установке SQL Server
В этом выпуске также добавлен Сервер машинного обучения SQL Server (изолированный) — полностью независимый сервер обработки и анализа данных, поддерживающий статистический и прогнозирующий анализ в R и Python. Как и в случае со службами R, этот сервер является следующей версией SQL Server 2016 R Server (изолированный). С помощью изолированного сервера можно распространять и масштабировать решения R или Python без зависимостей от SQL Server.
Новые возможности SQL Server 2016
В этом выпуске появились возможности машинного обучения в SQL Server с помощью SQL Server 2016 R Services — модуля аналитики в базе данных для обработки скрипта R в данных, хранящихся в экземпляре ядра СУБД.
Кроме того, был выпущен SQL Server 2016 R Server (изолированный) как способ установки R Server на Windows Server. Изначально установка SQL Server предоставляла только один способ установки R Server для Windows. В более поздних выпусках разработчики и специалисты по обработке и анализу данных, которым требовался R Server в Windows, могли использовать другой изолированный установщик для достижения той же цели. Изолированный сервер в SQL Server функционально эквивалентен изолированному серверному продукту, Microsoft R Server для Windows.
Объявления о возможностях см. в статье Новые возможности SQL Server 2016.
Выпуск | Обновление компонента |
---|---|
Добавление единиц емкости | Оценка в реальном времени использует собственные библиотеки C++ для чтения модели, хранящейся в оптимизированном двоичном формате, а затем создает прогнозы без вызова среды выполнения R. Это значительно ускоряет операции оценки. С помощью оценки в реальном времени можно запустить хранимую процедуру или выполнить оценку в реальном времени в коде R. Оценка в режиме реального времени также доступна для SQL Server 2016, если экземпляр обновляется до последнего выпуска Microsoft R Server. |
Первый выпуск | Интеграция R для аналитики в базе данных. Пакеты R для вызова функций R в T-SQL и наоборот. Функции RevoScaleR предоставляют аналитику R в масштабе путем разделения данных на части компонентов, координации и управления распределенной обработкой, а затем агрегирования результатов. В SQL Server 2016 R Services (в базе данных) подсистема RevoScaleR интегрирована с экземпляром ядра СУБД, объединяя данные и аналитику в одном контексте обработки. Интеграция T-SQL и R с помощью sp_execute_external_script. С помощью этой хранимой процедуры можно вызвать любой код R. Эта безопасная инфраструктура позволяет развертывать модели и сценарии R корпоративного класса, вызываемые из приложения с помощью простой хранимой процедуры. Повышение производительности осуществляется с помощью потоковой передачи данных из SQL в процессы R и параллелизации кольца MPI. Вы можете использовать функцию T-SQL PREDICT, чтобы выполнить собственную оценку в предварительно обученной модели, которая ранее сохранялась в требуемом двоичном формате. |
Поддержка Linux
SQL Server 2019 добавляет поддержку Linux для R и Python при установке пакетов машинного обучения с помощью экземпляра ядра СУБД. Дополнительные сведения см. в статье Установка служб машинного обучения SQL Server на Linux.
В Linux SQL Server 2017 не имеет интеграции с R или Python, но вы можете использовать собственную оценку в Linux, так как эта функция доступна через T-SQL PREDICT в Linux. Собственная оценка обеспечивает высокий уровень производительности для предварительно обученной модели без вызова или даже необходимости среды выполнения R.