Демонстрационные данные по работе такси в Нью-Йорке для учебников по Python и R в SQL Server

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

В этой статье объясняется, как настроить демонстрационную базу данных, состоящую из общедоступных данных Комиссии по такси и лимузинам Нью-Йорка. Эти данные используются в нескольких учебниках по R и Python для аналитики в базе данных в SQL Server. Чтобы пример кода выполнялся быстрее, была создана репрезентативная выборка в объеме 1 % данных. В вашей системе файл резервной копии базы данных немного превышает 90 МБ и представляет 1,7 млн строк в основной таблице данных.

Чтобы выполнить это упражнение, необходимо иметь SQL Server Management Studio (SSMS) или другое средство, которое может восстановить файл резервной копии базы данных и запустить запросы T-SQL.

Руководства и краткие руководства по использованию этого набора данных содержат следующие статьи:

Загрузка файлов

Пример базы данных — это файл резервной копии SQL Server 2016 (.bak), размещенный корпорацией Майкрософт. Этот файл можно восстановить в SQL Server 2016 и более поздних версий. Скачивание файла начинается сразу после открытия ссылки.

Размер файла составляет приблизительно 90 МБ.

Примечание.

Чтобы восстановить пример базы данных в кластерах больших данных SQL Server, скачайте файл NYCTaxi_Sample.bak и следуйте указаниям в разделе Восстановление базы данных на главном экземпляре кластера больших данных SQL Server.

Примечание.

Чтобы восстановить образец базы данных в службах Машинное обучение в Управляемый экземпляр SQL Azure, выполните инструкции из краткого руководства. Восстановление базы данных для Управляемый экземпляр SQL Azure с помощью демонстрационной базы данных такси Нью-Йорка .bak файла: https://aka.ms/sqlmldocument/NYCTaxi_Sample.bak

  1. Скачайте файл резервной копии базы данных NYCTaxi_Sample.bak .

  2. Скопируйте файл в C:\Program files\Microsoft SQL Server\MSSQL-instance-name\MSSQL\Backup папку по умолчанию Backup экземпляра или аналогичному пути.

  3. В SSMS щелкните правой кнопкой мыши базы данных и выберите " Восстановить файлы и группы файлов".

  4. Введите NYCTaxi_Sample имя базы данных.

  5. Выберите " Из устройства" и откройте страницу выбора файла, чтобы выбрать файл резервной NYCTaxi_Sample.bak копии. Нажмите кнопку " Добавить ", чтобы выбрать NYCTaxi_Sample.bak.

  6. Установите флажок "Восстановить" и нажмите кнопку "ОК", чтобы восстановить базу данных.

Проверка объектов базы данных

Убедитесь, что объекты базы данных существуют в экземпляре SQL Server с помощью SQL Server Management Studio. Вы должны увидеть базу данных, таблицы, функции и хранимые процедуры.

rsql_devtut_BrowseTables

Объекты в базе данных NYCTaxi_Sample

В следующей таблице перечислены объекты, созданные в демонстрационной базе данных по работе такси в Нью-Йорке.

Имя объекта Тип объекта Description
NYCTaxi_Sample database Создает базу данных и две таблицы:

dbo.nyctaxi_sample таблица: содержит основной набор данных такси Нью-Йорка. К таблице добавляется кластеризованный индекс columnstore для оптимизации хранения данных и производительности запросов. В таблицу вставлена выборка, содержащая 1 % от общего набора данных по работе такси в Нью-Йорке.

dbo.nyc_taxi_models таблица: используется для сохранения обученной модели расширенной аналитики.
fnCalculateDistance скалярная функция Вычисляет прямое расстояние между местами посадки и высадки. Эта функция используется в разделах Создание признаков данных, Обучение и сохранение модели и Ввод модели R в эксплуатацию.
fnEngineerFeatures функция с табличным значением Создает новые характеристики данных для обучения модели. Эта функция используется в занятиях Создание характеристик данных и Ввод модели R в эксплуатацию.

Хранимые процедуры создаются с помощью скриптов R и Python, которые можно найти в разных учебниках. В следующей таблице перечислены хранимые процедуры, которые при необходимости можно добавить в демонстрационную базу данных по работе такси в Нью-Йорке при выполнении скриптов из разных занятий.

Хранимая процедура Язык Description
RxPlotHistogram R Вызывает функцию RevoScaleR rxHistogram для построения гистограммы переменной, а затем возвращает график в виде двоичного объекта. Эта хранимая процедура используется в занятии Анализ и визуализация данных.
RPlotRHist R Создает рисунок с помощью Hist функции и сохраняет выходные данные в виде локального PDF-файла. Эта хранимая процедура используется в занятии Анализ и визуализация данных.
RxTrainLogitModel R Обучает модель логистической регрессии путем вызова пакета R. Модель прогнозирует значение столбца и обучена с помощью случайно выбранного tipped 70% данных. Выходные данные хранимой процедуры — обученная модель, которая сохраняется в таблице dbo.nyc_taxi_models. Эта хранимая процедура используется в занятии Обучение и сохранение модели.
RxPredictBatchOutput R Вызывает обученную модель для составления прогнозов с ее помощью. Хранимая процедура принимает запрос в качестве входного параметра и возвращает столбец числовых значений, представляющих оценки для входных строк. Эта хранимая процедура используется в занятии Прогнозирование возможных результатов.
RxPredictSingleRow R Вызывает обученную модель для составления прогнозов с ее помощью. Эта хранимая процедура принимает новое наблюдение в качестве входных данных, причем отдельные значения характеристик передаются как встроенные параметры, и возвращает значение, представляющее прогнозируемый результат для нового наблюдения. Эта хранимая процедура используется в занятии Прогнозирование возможных результатов.

Запрос данных

Для проверки выполните запрос и убедитесь, что данные были отправлены.

  1. В обозреватель объектов в разделе "Базы данных" щелкните правой кнопкой мыши базу данных NYCTaxi_Sample и запустите новый запрос.

  2. Выполните некоторые основные запросы:

    SELECT TOP(10) * FROM dbo.nyctaxi_sample;
    SELECT COUNT(*) FROM dbo.nyctaxi_sample;
    

База данных содержит 1,7 млн строк.

  1. В базе данных находится dbo.nyctaxi_sample таблица, содержащая набор данных. Эта таблица оптимизирована для вычислений с использованием наборов путем добавления индекса columnstore. Выполните эту инструкцию, чтобы создать краткую сводку для этой таблицы.

    SELECT DISTINCT [passenger_count]
        , ROUND (SUM ([fare_amount]),0) as TotalFares
        , ROUND (AVG ([fare_amount]),0) as AvgFares
    FROM [dbo].[nyctaxi_sample]
    GROUP BY [passenger_count]
    ORDER BY  AvgFares DESC
    

Результаты должны быть аналогичны показанным на следующем снимке экрана.

Сводные данные по таблице

Следующие шаги

Теперь выборка данных по работе такси в Нью-Йорке готова для использования в практическом обучении.