NYC Taxi-Demodaten für Python- und R-Tutorials in SQL ServerNYC Taxi demo data for SQL Server Python and R tutorials

Anwendungsbereich:Applies to: JaSQL Server 2016 (13.x)SQL Server 2016 (13.x)yesSQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher JaVerwaltete Azure SQL-InstanzAzure SQL Managed InstanceYesVerwaltete Azure SQL-InstanzAzure SQL Managed InstanceAnwendungsbereich:Applies to: JaSQL Server 2016 (13.x)SQL Server 2016 (13.x)yesSQL Server 2016 (13.x)SQL Server 2016 (13.x) and later JaVerwaltete Azure SQL-InstanzAzure SQL Managed InstanceYesVerwaltete Azure SQL-InstanzAzure SQL Managed Instance

In diesem Artikel wird beschrieben, wie eine Beispieldatenbank mit öffentlichen Daten von der New York City Taxi and Limousine Commission eingerichtet wird.This article explains how to set up a sample database consisting of public data from the New York City Taxi and Limousine Commission. Diese Daten werden in verschiedenen R- und Python-Tutorials für datenbankinterne Analysen unter SQL Server verwendet.This data is used in several R and Python tutorials for in-database analytics on SQL Server. Damit der Beispielcode schneller ausgeführt werden kann, haben wir ein repräsentatives 1 %-Sampling der Daten erstellt.To make the sample code run quicker, we created a representative 1% sampling of the data. In unserem System ist die Datenbanksicherungsdatei etwas größer als 90 MB, wobei sich in der primären Datentabelle 1,7 Millionen Datensätze befinden.On your system, the database backup file is slightly over 90 MB, providing 1.7 million rows in the primary data table.

Für diese Übung benötigen Sie SQL Server Management Studio oder ein anderes Tool zum Wiederherstellen einer Datenbanksicherungsdatei sowie zum Ausführen von T-SQL-Abfragen.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.

Dieses Dataset wird in folgenden Tutorials und Schnellstarts verwendet:Tutorials and quickstarts using this data set include the following:

Herunterladen von DateienDownload files

Bei der Beispieldatenbank handelt es sich um eine von Microsoft gehostete SQL Server 2016-BAK-Datei.The sample database is a SQL Server 2016 BAK file hosted by Microsoft. Sie kann unter SQL Server 2016 und höher wiederhergestellt werden.You can restore it on SQL Server 2016 and later. Der Download der Datei beginnt sofort, wenn Sie auf den Link klicken.File download begins immediately when you click the link.

Die Dateigröße beträgt ungefähr 90 MB.File size is approximately 90 MB.

Hinweis

Zur Wiederherstellung der Beispieldatenbank auf Big Data-Cluster in SQL Server laden Sie NYCTaxi_Sample.bak herunter, und Sie befolgen die Anweisungen unter Wiederherstellen einer Datenbank in der Masterinstanz eines Big Data-Clusters für SQL Server.To restore the sample database on SQL Server Big Data Clusters, download NYCTaxi_Sample.bak and follow the directions in Restore a database into the SQL Server big data cluster master instance.

Hinweis

Zur Wiederherstellung der Beispieldatenbank für Machine Learning Services in Azure SQL Managed Instance (Vorschau) befolgen Sie die Anweisungen in Schnellstart: Wiederherstellen einer Datenbank in Azure SQL Managed Instance mithilfe der BAK-Datei der Demodatenbank für Taxifahrten in New York City: https://sqlmldoccontent.blob.core.windows.net/sqlml/NYCTaxi_Sample.bak.To restore the sample database on Machine Learning Services in Azure SQL Managed Instance (preview), follow the instructions in Quickstart: Restore a database to Azure SQL Managed Instance using the NYC Taxi demo database .bak file: https://sqlmldoccontent.blob.core.windows.net/sqlml/NYCTaxi_Sample.bak.

  1. Klicken Sie auf NYCTaxi_Sample.bak, um die Datenbanksicherungsdatei herunterzuladen.Click NYCTaxi_Sample.bak to download the database backup file.

  2. Kopieren Sie die Datei in den Ordner „C:\Programme\Microsoft SQL Server\MSSQL-Instanzname\MSSQL\Backup“.Copy the file to C:\Program files\Microsoft SQL Server\MSSQL-instance-name\MSSQL\Backup folder.

  3. Klicken Sie in Management Studio mit der rechten Maustaste auf Datenbanken, und wählen Sie Dateien und Dateigruppen wiederherstellen aus.In Management Studio, right-click Databases and select Restore Files and File Groups.

  4. Geben Sie als Datenbanknamen NYCTaxi_Sample ein.Enter NYCTaxi_Sample as the database name.

  5. Klicken Sie auf Von Gerät, und öffnen Sie anschließend die Seite zum Auswählen von Dateien, um die Sicherungsdatei auszuwählen.Click From device and then open the file selection page to select the backup file. Klicken Sie auf Hinzufügen, um die Datei „NYCTaxi_Sample.bak“ auszuwählen.Click Add to select NYCTaxi_Sample.bak.

  6. Aktivieren Sie das Kontrollkästchen Wiederherstellen, und klicken Sie auf OK, um die Datenbank wiederherzustellen.Select the Restore checkbox and click OK to restore the database.

Überprüfen von DatenbankobjektenReview database objects

Vergewissern Sie sich mithilfe von SQL Server Management StudioSQL Server Management Studio, dass die Datenbankobjekte in der SQL ServerSQL Server-Instanz vorhanden sind.Confirm the database objects exist on the SQL ServerSQL Server instance using SQL Server Management StudioSQL Server Management Studio. Dabei sollten Datenbank, Tabellen, Funktionen und gespeicherte Prozeduren angezeigt werden.You should see the database, tables, functions, and stored procedures.

rsql_devtut_BrowseTablesrsql_devtut_BrowseTables

Objekte in der Datenbank „NYCTaxi_Sample“Objects in NYCTaxi_Sample database

In der folgenden Tabelle finden Sie eine Übersicht über die in der Demodatenbank „NYCTaxi_Sample“ erstellten Objekte.The following table summarizes the objects created in the NYC Taxi demo database.

ObjektnameObject name ObjekttypObject type BeschreibungDescription
NYCTaxi_SampleNYCTaxi_Sample databasedatabase Erstellt eine Datenbank und zwei Tabellen:Creates a database and two tables:

Tabelle „dbo.nyctaxi_sample“: Enthält das Hauptdataset von NYC Taxi.dbo.nyctaxi_sample table: Contains the main NYC Taxi dataset. Einer Tabelle wird ein gruppierter Columnstore-Index hinzugefügt, um den Speicher und die Abfrageleistung zu verbessern.A clustered columnstore index is added to the table to improve storage and query performance. Die 1 %-Stichprobe des NYC Taxi-Datasets wird in diese Tabelle eingefügt.The 1% sample of the NYC Taxi dataset is inserted into this table.

Tabelle „dbo.nyc_taxi_models“: Wird zum Speichern des trainierten Modells für die erweiterte Analyse verwendet.dbo.nyc_taxi_models table: Used to persist the trained advanced analytics model.
fnCalculateDistancefnCalculateDistance Skalarwertfunktionscalar-valued function Berechnet die direkte Entfernung zwischen Abhol- und Ablageorten.Calculates the direct distance between pickup and dropoff locations. Diese Funktion wird in den Lektionen Erstellen von Datenfeatures, Trainieren und Speichern eines Modells und Operationalisieren des R-Modells verwendet.This function is used in Create data features, Train and save a model and Operationalize the R model.
fnEngineerFeaturesfnEngineerFeatures Tabellenwertfunktiontable-valued function Erstellt neue Datenfeatures für das Modelltraining.Creates new data features for model training. Diese Funktion wird in den Lektionen Erstellen von Datenfeatures und Operationalisieren des R-Modells verwendet.This function is used in Create data features and Operationalize the R model.

Gespeicherte Prozeduren werden mithilfe von R- und Python-Skripts erstellt, die sich in verschiedenen Tutorials befinden.Stored procedures are created using R and Python script found in various tutorials. In der folgenden Tabelle finden Sie eine Übersicht über die gespeicherten Prozeduren, die Sie der NYC Taxi-Demodatenbank optional hinzufügen können, wenn Sie die Skripts in den verschiedenen Lektion ausführen.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.

Gespeicherte ProzedurStored procedure SpracheLanguage BeschreibungDescription
RxPlotHistogramRxPlotHistogram RR Ruft die RevoScaleR-Funktion „rxHistogram“ auf, um das Histogramm einer Variablen zu zeichnen und gibt anschließend das Diagramm als binäres Objekt zurück.Calls the RevoScaleR rxHistogram function to plot the histogram of a variable and then returns the plot as a binary object. Diese gespeicherte Prozedur wird in der Lektion Untersuchen und Visualisieren von Daten verwendet.This stored procedure is used in Explore and visualize data.
RPlotRHistRPlotRHist RR Erstellt eine Grafik mithilfe einer Hist-Funktion, und speichert die Ausgabe als lokale PDF-Datei.Creates a graphic using the Hist function and saves the output as a local PDF file. Diese gespeicherte Prozedur wird in der Lektion Untersuchen und Visualisieren von Daten verwendet.This stored procedure is used in Explore and visualize data.
RxTrainLogitModelRxTrainLogitModel RR Trainiert ein logistisches Regressionsmodell durch Aufrufen eines R-Pakets.Trains a logistic regression model by calling an R package. Das Modell sagt den Wert der tipped-Spalte voraus und wird mithilfe von zufällig ausgewählten 70 % der Daten trainiert.The model predicts the value of the tipped column, and is trained using a randomly selected 70% of the data. Die Ausgabe der gespeicherten Prozedur ist das trainierte Modell, das in der Tabelle nyc_taxi_models gespeichert wird.The output of the stored procedure is the trained model, which is saved in the table nyc_taxi_models. Diese gespeicherte Prozedur wird in der Lektion Trainieren und Speichern eines Modells.This stored procedure is used in Train and save a model.
RxPredictBatchOutputRxPredictBatchOutput RR Ruft das trainierte Modell zum Erstellen von Vorhersagen mit dem Modell auf.Calls the trained model to create predictions using the model. Die gespeicherte Prozedur akzeptiert eine Abfrage als Eingabeparameter und gibt eine Spalte mit numerischen Werten zurück, die die Bewertungen für die Eingabezeilen enthält.The stored procedure accepts a query as its input parameter and returns a column of numeric values containing the scores for the input rows. Diese gespeicherte Prozedur wird in der Lektion Vorhersagen potenzieller Ergebnisse verwendet.This stored procedure is used in Predict potential outcomes.
RxPredictSingleRowRxPredictSingleRow RR Ruft das trainierte Modell zum Erstellen von Vorhersagen mit dem Modell auf.Calls the trained model to create predictions using the model. Diese gespeicherte Prozedur akzeptiert als Eingabe eine neue Beobachtung mit einzelnen Funktionswerten, die als Inlineparameter übergeben werden, und gibt einen Wert zurück, der das Ergebnis für die neue Beobachtung vorhersagt.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. Diese gespeicherte Prozedur wird in der Lektion Vorhersagen potenzieller Ergebnisse verwendet.This stored procedure is used in Predict potential outcomes.

Abfragen der DatenQuery the data

Führen Sie eine Abfrage aus, um zu prüfen, ob die Daten hochgeladen wurden.As a validation step, run a query to confirm the data was uploaded.

  1. Klicken Sie in Objekt-Explorer unter „Datenbanken“ mit der rechten Maustaste auf die Datenbank NYCTaxi_Sample, und starten Sie eine neue Abfrage.In Object Explorer, under Databases, right-click the NYCTaxi_Sample database, and start a new query.

  2. Führen Sie einige einfache Abfragen aus:Run some simple queries:

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

Die Datenbank enthält 1,7 Millionen Datensätze.The database contains 1.7 million rows.

  1. In der Datenbank befindet sich die Tabelle nyctaxi_sample, die das Dataset enthält.Within the database is a nyctaxi_sample table that contains the data set. Die Tabelle wurde für setbasierte Berechnungen optimiert, indem ein Columnstore-Index hinzugefügt wurde.The table has been optimized for set-based calculations with the addition of a columnstore index. Führen Sie diese Anweisung aus, um eine schnelle Zusammenfassung für die Tabelle zu generieren.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
    

Die Ergebnisse sollten ähnlich aussehen wie die im folgenden Screenshot.Results should be similar to those showing in the following screenshot.

Zusammenfassungsinformationen der TabelleTable summary information

Nächste SchritteNext steps

Die NYC Taxi-Beispieldaten sind nun für die praktischen Übungen verfügbar.NYC Taxi sample data is now available for hands-on learning.