Поделиться через


Изолированный сервер Machine Learning Server или R Server в SQL Server

Область применения: SQL Server 2016 (13.x) и более поздних версий

Внимание

Поддержка сервера Машинное обучение (ранее известного как R Server) закончилась 1 июля 2022 года. Дополнительные сведения см. в разделе Что будет с Machine Learning Server?

SQL Server поддерживает установку изолированного сервера R Server или Machine Learning Server, который работает независимо от SQL Server. В зависимости от версии SQL Server изолированный сервер основан на среде R с открытым кодом и, возможно, на среде Python, поверх которых работают высокопроизводительные библиотеки Майкрософт, добавляющие возможности статистической и прогнозной аналитики. Библиотеки также обеспечивают задачи машинного обучения, реализованные как скрипты на R или Python.

В SQL Server 2016 этот компонент называется R Server (изолированный) и поддерживает только язык R. В SQL Server 2017 он называется Сервер машинного обучения (изолированный) и поддерживает как R, так и Python.

Примечание.

Изолированный сервер, установленный программой установки SQL Server, функционально эквивалентен версиям Microsoft Machine Learning Server, не зависящим от языка SQL, и поддерживает те же сценарии использования, в том числе удаленное выполнение, ввод в эксплуатацию и веб-службы, а также полную коллекцию библиотек R и Python.

Компоненты

SQL Server 2016 поддерживает только язык R. SQL Server 2017 поддерживает R и Python. В приведенной ниже таблице описаны функции каждой версии.

Компонент Description
Пакеты R RevoScaleR — это основная библиотека для масштабируемого R с функциями для обработки, преобразования, визуализации и анализа данных.
MicrosoftML добавляет алгоритмы машинного обучения для создания пользовательских моделей, предназначенных для анализа текста, анализа изображений и анализа тональности.
sqlRUtils предоставляет вспомогательные функции для помещения скриптов R в хранимую процедуру T-SQL, регистрации хранимой процедуры в базе данных и ее запуска из среды разработки R.
Пакет olapR предназначен для определения запросов MDX на языке R.
Microsoft R Open (MRO) Microsoft R Open (отставлено) — это дистрибутив R с открытым исходным кодом Майкрософт.
Средства R Окна консоли и командные строки R являются стандартными средствами в дистрибутиве R. Они находятся в папке \Program files\Microsoft SQL Server\140\R_SERVER\bin\x64.
Примеры и скрипты R Пакеты R и RevoScaleR с открытым кодом включают в себя встроенные наборы данных, позволяющие создавать и запускать скрипты с использованием предварительно установленных данных. Они находятся в папке \Program files\Microsoft SQL Server\140\R_SERVER\library\datasets and \library\RevoScaleR.
Пакеты Python revoscalepy — это основная библиотека для масштабируемого Python с функциями для обработки, преобразования, визуализации и анализа данных.
microsoftml добавляет алгоритмы машинного обучения для создания пользовательских моделей, предназначенных для анализа текста, анализа изображений и анализа тональности.
Средства Python Встроенная программа командной строки Python полезна для автоматизированного тестирования и других задач. Она находятся в папке \Program files\Microsoft SQL Server\140\PYTHON_SERVER\python.exe.
Anaconda Anaconda — это дистрибутив Python с открытым кодом, включающий в себя ряд важных пакетов.
Примеры и скрипты Python Как и в случае с R, дистрибутив Python включает в себя встроенные наборы данных и скрипты. Данные revoscalepy находятся в папке \Program files\Microsoft SQL Server\140\PYTHON_SERVER\lib\site-packages\revoscalepy\data\sample-data.
Предварительно обученные модели на R и Python Предварительно обученные модели создаются для конкретных вариантов использования и поддерживаются командой специалистов Майкрософт по обработке и анализу данных. Их можно использовать "как есть" для оценки положительной или отрицательной тональности в тексте или для обнаружения признаков на изображениях с использованием предоставляемых вами новых входных данных. Предварительно обученные модели поддерживаются и могут использоваться на изолированном сервере, но их нельзя установить с помощью программы установки SQL Server. Дополнительные сведения см. в статье Установка предварительно обученных моделей машинного обучения в SQL Server.

Использование изолированного сервера

Разработчики на R и Python обычно выбирают изолированный сервер, чтобы избежать ограничений памяти и процессорных ресурсов, налагаемых средами R и Python с открытым кодом. Библиотеки R и Python, которые выполняются на изолированном сервере, позволяют загружать и обрабатывать большие объемы данных на нескольких ядрах и объединять результаты в единый выходной объект. Высокопроизводительные функции обеспечивают как масштабирование, так и максимальную эффективность. Они предоставляют возможности прогнозной аналитики, статистического моделирования, визуализации данных, а также алгоритмы машинного обучения в рамках коммерческого серверного продукта, разработанного и поддерживаемого корпорацией Майкрософт.

В качестве независимого сервера, отделенного от SQL Server, среда R и Python настраивается, защищена и доступна с помощью базовой операционной системы и стандартных средств, предоставляемых на отдельном сервере, не являющимся SQL Server. Встроенная поддержка реляционных данных SQL Server отсутствует. Если нужно использовать данные SQL Server, можно создать объекты и подключения к источникам данных так же, как из любого клиента.

Как дополнение SQL Server, изолированный сервер также полезен в качестве эффективной среды разработки, если требуются как локальные, так и удаленные вычисления. Пакеты R и Python на изолированном сервере те же, что и при установке ядра СУБД, что обеспечивает переносимость кода и переключение контекста вычислений.

Как приступить к работе

Начните с установки, добавьте двоичные файлы в свое любимое средство разработки и напишите свой первый скрипт.

Шаг 1. Установка программного обеспечения

Установите одну из следующих версий:

Шаг 2. Настройка средства разработки

На изолированном сервере часто работают локально с использованием среды разработки, установленной на том же компьютере.

Шаг 3. Создание первого скрипта

Напишите скрипт R или Python, используя функции из RevoScaleR и revoscalepy, а также алгоритмы машинного обучения.

  • Изучите R и RevoScaleR в 25 функциях: начните с базовых команд R, а затем перейдите к распространяемым аналитическим функциям RevoScaleR, которые обеспечивают высокую производительность и масштабирование решений R. Она содержит параллелизуемые версии многих популярных пакетов моделирования для R, например кластеризацию методом К-средних, деревья и леса принятия решений, а также средства для работы с данными.

  • Краткое руководство. Пример двоичной классификации с пакетом Microsoftml Python: создание модели двоичной классификации с помощью функций из microsoftml и известного набора данных рака молочной железы.

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

Шаг 4. Эксплуатация решения

Изолированные серверы могут использовать функцию ввода в эксплуатацию сервера Microsoft Machine Learning Server, не зависящего от языка SQL. Настройка изолированного сервера для ввода в эксплуатацию дает следующие преимущества: развертывание и размещение кода как веб-служб, проведение диагностики и проверка емкости веб-служб.

Шаг 5. Обслуживание сервера

Для SQL Server регулярно выпускаются накопительные пакеты обновления. Их применение повышает безопасность и расширяет функциональные возможности существующей установки.

Описание новых возможностей и изменений см. в статье Загружаемые файлы CAB, а также на веб-страницах накопительных пакетов обновления для SQL Server 2016 и SQL Server 2017.

Дополнительные сведения о применении обновлений к существующему экземпляру см. в разделе Применение обновлений инструкций по установке.

См. также

Установка R Server (изолированного) или Machine Learning Server (изолированного)