Published on

February 10, 2023

Exploration de l’accès aux données SQL Server à l’aide de R – Partie 3

Dans cet article de blog, nous continuerons à explorer l’accès aux données SQL Server à l’aide de R. Nous nous concentrerons sur la comparaison des performances des tables SQL Server en mémoire par rapport à l’interrogation d’un data frame R. Nous discuterons également des différences d’indexation entre SQL Server et R.

Configuration de l’environnement

Avant de commencer, assurez-vous d’avoir suivi les étapes décrites dans “Accès aux données SQL Server à l’aide de R – Partie 1” pour installer et configurer votre environnement R/RStudio. De plus, assurez-vous d’avoir installé la version Developer Edition de SQL Server 2016 sur une machine disposant d’une mémoire suffisante.

Comparaison des performances entre SQL Server et R

Tout d’abord, comparons les performances d’une table SQL Server 2016 en mémoire avec l’interrogation d’un data frame R. Les deux structures sont stockées en mémoire, mais SQL Server a l’avantage d’utiliser des index pour améliorer les performances des requêtes. Les tables en mémoire dans SQL Server peuvent utiliser des index de hachage ou des index non regroupés. En revanche, R ne prend pas en charge l’indexation des data frames.

Pour le démontrer, nous utiliserons un ensemble de données sur les crimes commis dans la ville de Chicago. Vous pouvez télécharger l’ensemble de données au format CSV à partir de l’URL suivante : [lien vers l’ensemble de données].

Importez l’ensemble de données dans une table optimisée en mémoire dans SQL Server. Créez le fichier de format nécessaire et utilisez l’instruction BULK INSERT pour importer les données. Ensuite, créez une version optimisée en mémoire de la table et insérez-y un sous-ensemble des données.

En R, importez le même sous-ensemble de données dans un data frame à l’aide du package RODBC. Vous devrez installer les packages pertinents s’ils ne sont pas déjà installés. Une fois les données importées, vous pouvez explorer la représentation interne du data frame dans R à l’aide du package pryr.

Comparaison des performances des requêtes

Maintenant, comparons les performances des requêtes entre SQL Server et R. Nous répondrons à trois questions :

Question A : Quel était le type de crime le plus courant à Chicago en janvier 2017 ?

Question B : Qu’est-il plus probable – être volé ou avoir sa maison cambriolée ?

Question C : Quels quartiers de Chicago ont les taux de criminalité les plus élevés ?

Pour chaque question, nous écrirons des requêtes SQL et du code R pour obtenir les réponses. Nous mesurerons le temps d’exécution de chaque requête pour comparer les performances entre SQL Server et R.

Mapping des points de données

Enfin, nous explorerons comment mapper des points de données sur des cartes du monde à la fois en R et dans SQL Server Reporting Services (SSRS). Dans SSRS, nous créerons un rapport cartographique à l’aide de l’Assistant et superposerons les données sur les crimes sur une carte de Chicago. En R, nous utiliserons le package ggmap pour interroger Google Maps et afficher les données sur les crimes sous forme de points sur une carte.

SSRS et R ont tous deux leurs avantages en ce qui concerne la cartographie des données. SSRS est plus convivial et direct, tandis que R offre plus d’options de personnalisation. Nous discuterons des avantages et des inconvénients de chaque approche et fournirons des exemples de création de cartes dans les deux outils.

Conclusion

Dans cet article de blog, nous avons exploré l’accès aux données SQL Server à l’aide de R. Nous avons comparé les performances des tables SQL Server en mémoire par rapport à l’interrogation d’un data frame R. Nous avons également discuté des différences d’indexation entre SQL Server et R. De plus, nous avons montré comment mapper des points de données sur des cartes du monde à la fois en R et dans SSRS.

Dans le prochain article de blog, nous continuerons à travailler avec l’ensemble de données de Chicago et montrerons comment convertir chaque enregistrement en un document MongoDB. Nous explorerons comment configurer une collection MongoDB dans Azure (CosmosDB) et comment s’y connecter à l’aide de R. Nous discuterons également de la façon de stocker et d’interroger des données JSON dans SQL Server.

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.