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

Область применения: ДаSQL Server НетБаза данных SQL Azure НетAzure Synapse Analytics (Хранилище данных SQL) НетParallel Data Warehouse APPLIES TO: YesSQL Server NoAzure SQL Database NoAzure Synapse Analytics (SQL DW) NoParallel Data Warehouse

В этой статье объясняется, как настроить демонстрационную базу данных, состоящую из общедоступных данных Комиссии по такси и лимузинам Нью-Йорка.This article explains how to set up a sample database consisting of public data from the New York City Taxi and Limousine Commission. Эти данные используются в нескольких учебниках по R и Python для аналитики в базе данных в SQL Server.This data is used in several R and Python tutorials for in-database analytics on SQL Server. Чтобы пример кода выполнялся быстрее, была создана репрезентативная выборка в объеме 1 % данных.To make the sample code run quicker, we created a representative 1% sampling of the data. В вашей системе файл резервной копии базы данных немного превышает 90 МБ и представляет 1,7 млн строк в основной таблице данных.On your system, the database backup file is slightly over 90 MB, providing 1.7 million rows in the primary data table.

Для выполнения этого упражнения потребуется SQL Server Management Studio или другое средство, которое может восстанавливать файл резервной копии базы данных и выполнять запросы T-SQL.To complete this exercise, you should have SQL Server Management Studio or another tool that can restore a database backup file and run T-SQL queries.

Этот набор данных используется в следующих учебниках и кратких руководствах:Tutorials and quickstarts using this data set include the following:

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

Демонстрационная база данных — это BAK-файл SQL Server 2016, размещенный корпорацией Майкрософт.The sample database is a SQL Server 2016 BAK file hosted by Microsoft. Этот файл можно восстановить в SQL Server 2016 и более поздних версий.You can restore it on SQL Server 2016 and later. Скачивание файла начинается сразу же после нажатия ссылки.File download begins immediately when you click the link.

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

  1. Щелкните файл NYCTaxi_Sample.bak, чтобы скачать файл резервной копии базы данных.Click NYCTaxi_Sample.bak to download the database backup file.

  2. Скопируйте этот файл в папку C:\Program files\Microsoft SQL Server\имя_экземпляра_MSSQL\MSSQL\Backup.Copy the file to C:\Program files\Microsoft SQL Server\MSSQL-instance-name\MSSQL\Backup folder.

  3. В Management Studio щелкните правой кнопкой мыши Базы данных и выберите Восстановить файлы и группы файлов.In Management Studio, right-click Databases and select Restore Files and File Groups.

  4. В качестве имени базы данных задайте NYCTaxi_Sample.Enter NYCTaxi_Sample as the database name.

  5. Щелкните С устройства, а затем откройте страницу выбора файла, чтобы выбрать файл резервной копии.Click From device and then open the file selection page to select the backup file. Щелкните Добавить, чтобы выбрать файл NYCTaxi_Sample.bak.Click Add to select NYCTaxi_Sample.bak.

  6. Установите флажок Восстановить и нажмите кнопку ОК, чтобы восстановить базу данных.Select the Restore checkbox and click OK to restore the database.

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

Проверьте существование объектов базы данных в экземпляре SQL ServerSQL Server с помощью SQL Server Management StudioSQL Server Management Studio.Confirm the database objects exist on the SQL ServerSQL Server instance using SQL Server Management StudioSQL Server Management Studio. Вы должны увидеть базу данных, таблицы, функции и хранимые процедуры.You should see the database, tables, functions, and stored procedures.

rsql_devtut_BrowseTablesrsql_devtut_BrowseTables

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

В следующей таблице перечислены объекты, созданные в демонстрационной базе данных по работе такси в Нью-Йорке.The following table summarizes the objects created in the NYC Taxi demo database.

Имя объектаObject name Тип объектаObject type ОписаниеDescription
NYCTaxi_SampleNYCTaxi_Sample База данныхdatabase Создает базу данных и две таблицы:Creates a database and two tables:

Таблица dbo.nyctaxi_sample: содержит основной набор данных по работе такси в Нью-Йорке.dbo.nyctaxi_sample table: Contains the main NYC Taxi dataset. К таблице добавляется кластеризованный индекс columnstore для оптимизации хранения данных и производительности запросов.A clustered columnstore index is added to the table to improve storage and query performance. В таблицу вставлена выборка, содержащая 1 % от общего набора данных по работе такси в Нью-Йорке.The 1% sample of the NYC Taxi dataset is inserted into this table.

Таблица dbo.nyc_taxi_models: используется для сохранения обученной модели расширенной аналитики.dbo.nyc_taxi_models table: Used to persist the trained advanced analytics model.
fnCalculateDistancefnCalculateDistance скалярная функцияscalar-valued function Вычисляет прямое расстояние между местами посадки и высадки.Calculates the direct distance between pickup and dropoff locations. Эта функция используется в занятиях Создание компонентов данных, Обучение и сохранение модели и Ввод модели R в эксплуатацию.This function is used in Create data features, Train and save a model and Operationalize the R model.
fnEngineerFeaturesfnEngineerFeatures функция с табличным значениемtable-valued function Создает новые характеристики данных для обучения модели.Creates new data features for model training. Эта функция используется в занятиях Создание характеристик данных и Ввод модели R в эксплуатацию.This function is used in Create data features and Operationalize the R model.

Хранимые процедуры создаются с помощью скриптов R и Python, которые можно найти в разных учебниках.Stored procedures are created using R and Python script found in various tutorials. В следующей таблице перечислены хранимые процедуры, которые при необходимости можно добавить в демонстрационную базу данных по работе такси в Нью-Йорке при выполнении скриптов из разных занятий.The following table summarizes the stored procedures that you can optionally add to the NYC Taxi demo database when you run script from various lessons.

Хранимая процедураStored procedure ЯзыкLanguage ОписаниеDescription
RxPlotHistogramRxPlotHistogram RR Вызывает функцию RevoScaleR rxHistogram для построения гистограммы на основе переменной, а затем возвращает диаграмму в виде двоичного объекта.Calls the RevoScaleR rxHistogram function to plot the histogram of a variable and then returns the plot as a binary object. Эта хранимая процедура используется в занятии Анализ и визуализация данных.This stored procedure is used in Explore and visualize data.
RPlotRHistRPlotRHist RR Создает график с помощью функции Hist, а затем сохраняет результат в виде локального PDF-файла.Creates a graphic using the Hist function and saves the output as a local PDF file. Эта хранимая процедура используется в занятии Анализ и визуализация данных.This stored procedure is used in Explore and visualize data.
RxTrainLogitModelRxTrainLogitModel RR Обучает модель логистической регрессии путем вызова пакета R.Trains a logistic regression model by calling an R package. Модель прогнозирует значение для столбца tipped и обучается на основе случайной выборки, содержащей 70 % данных.The model predicts the value of the tipped column, and is trained using a randomly selected 70% of the data. Выходными данными хранимой процедуры является обученная модель, которая сохраняется в таблице nyc_taxi_models.The output of the stored procedure is the trained model, which is saved in the table nyc_taxi_models. Эта хранимая процедура используется в занятии Обучение и сохранение модели.This stored procedure is used in Train and save a model.
RxPredictBatchOutputRxPredictBatchOutput RR Вызывает обученную модель для составления прогнозов с ее помощью.Calls the trained model to create predictions using the model. Хранимая процедура принимает запрос в качестве входного параметра и возвращает столбец числовых значений, представляющих оценки для входных строк.The stored procedure accepts a query as its input parameter and returns a column of numeric values containing the scores for the input rows. Эта хранимая процедура используется в занятии Прогнозирование возможных результатов.This stored procedure is used in Predict potential outcomes.
RxPredictSingleRowRxPredictSingleRow RR Вызывает обученную модель для составления прогнозов с ее помощью.Calls the trained model to create predictions using the model. Эта хранимая процедура принимает новое наблюдение в качестве входных данных, причем отдельные значения характеристик передаются как встроенные параметры, и возвращает значение, представляющее прогнозируемый результат для нового наблюдения.This stored procedure accepts a new observation as input, with individual feature values passed as in-line parameters, and returns a value that predicts the outcome for the new observation. Эта хранимая процедура используется в занятии Прогнозирование возможных результатов.This stored procedure is used in Predict potential outcomes.

Запрос данныхQuery the data

Для проверки выполните запрос и убедитесь, что данные были отправлены.As a validation step, run a query to confirm the data was uploaded.

  1. В разделе "Базы данных" обозревателя объектов щелкните правой кнопкой мыши базу данных NYCTaxi_Sample и запустите новый запрос.In Object Explorer, under Databases, right-click the NYCTaxi_Sample database, and start a new query.

  2. Выполните несколько простых запросов:Run some simple queries:

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

База данных содержит 1,7 млн строк.The database contains 1.7 million rows.

  1. В базе данных имеется таблица nyctaxi_sample, содержащая набор данных.Within the database is a nyctaxi_sample table that contains the data set. Эта таблица оптимизирована для вычислений с использованием наборов путем добавления индекса columnstore.The table has been optimized for set-based calculations with the addition of a columnstore index. Выполните эту инструкцию, чтобы создать краткую сводку для этой таблицы.Run this statement to generate a quick summary on the table.

    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
    

Результаты должны быть аналогичны показанным на следующем снимке экрана.Results should be similar to those showing in the following screenshot.

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

Дальнейшие действияNext steps

Теперь выборка данных по работе такси в Нью-Йорке готова для использования в практическом обучении.NYC Taxi sample data is now available for hands-on learning.