Choisissez une solution de stockage sur Azure

Effectué

En choisissant la solution de stockage appropriée, vous pouvez améliorer les performances, réaliser des économies et améliorer la facilité de gestion. Chaque type de données a des exigences de stockage différentes. Il vous incombe de déterminer quelle solution de stockage convient le mieux aux types de données utilisées par votre entreprise. Tenez toujours compte du type de données, des opérations requises, de la latence attendue et de la nécessité de la prise en charge transactionnelle.

Ici, vous allez mettre en pratique ce que vous avez appris au sujet des données dans votre scénario de vente au détail en ligne et trouver le meilleur service Azure pour chaque jeu de données.

Données du catalogue de produits

Classification des données : semi-structurées en raison de la nécessité d’étendre ou de modifier le schéma pour les nouveaux produits.

Opérations : Les clients nécessitent un nombre élevé d’opérations de lecture, avec la possibilité d’interroger de nombreux champs au sein de la base de données. L’entreprise a également besoin d’un nombre élevé d’opérations d’écriture pour suivre son stock en constante évolution.

Latence et débit : haut débit et faible latence.

Prise en charge transactionnelle : les données de produit étant liées au paiement et à l’inventaire, la prise en charge transactionnelle est requise.

Azure Cosmos DB prend en charge les données semi-structurées ou NoSQL par conception. Ainsi, la prise en charge de nouveaux champs, tels que le champ Bluetooth ou tout nouveau champ nécessaire à l’avenir, est possible avec Azure Cosmos DB.

Azure Cosmos DB prend en charge SQL pour les requêtes, et chaque propriété est indexée par défaut. Vous pouvez créer des requêtes afin que vos clients puissent filtrer sur n’importe quelle propriété dans le catalogue.

Azure Cosmos DB étant également conforme ACID, vous pouvez être sûr que vos transactions sont effectuées selon ces exigences strictes. Un connecteur OLTP est disponible pour Azure Cosmos DB.

Avantage supplémentaire, vous pouvez également utiliser Azure Cosmos DB afin de répliquer facilement vos données partout dans le monde. Si les utilisateurs de votre site d’e-commerce sont concentrés aux États-Unis, en France et en Angleterre, vous pouvez répliquer vos données dans des centres de données de ces régions. La latence est réduite, car vous avez déplacé physiquement les données plus près de vos utilisateurs.

Même avec des données répliquées dans le monde entier, vous pouvez choisir parmi cinq niveaux de cohérence. En choisissant le niveau de cohérence approprié, vous pouvez déterminer les compromis entre cohérence, disponibilité, latence et débit. Vous pouvez effectuer un scale-up pour gérer la demande supérieure des clients pendant les pics d’achat, ou un scale-down pendant les périodes plus calmes afin de limiter les coûts.

Pourquoi pas d’autres services Azure ?

Azure SQL Database serait un excellent choix pour ce jeu de données si vous pouviez identifier le sous-ensemble de propriétés qui sont communes à la plupart des produits et les propriétés de variables qui n’existent peut-être pas dans certains produits. Vous pouvez utiliser Azure SQL Database pour combiner des données structurées dans les colonnes et des données semi-structurées stockées dans des colonnes JSON qui peuvent être facilement étendues. Azure SQL Database peut fournir bon nombre des mêmes avantages qu’Azure Cosmos DB. Toutefois, les avantages sont limités si la structure de vos données change dans des entités différentes et si vous ne pouvez pas prédéfinir un ensemble de propriétés communes qui sont répétées dans la plupart des entités. Contrairement à Azure Cosmos DB, qui indexe chaque propriété dans les documents, Azure SQL Database doit définir explicitement les propriétés des documents semi-structurés qui doivent être indexées. Azure Cosmos DB est un meilleur choix pour les données hautement structurées et variables dans lesquelles vous ne pouvez pas prédire les propriétés qui doivent être indexées. Azure SQL Database prend en charge OLTP.

D’autres services Azure, tels que Stockage Table Azure, Apache HBase dans Azure HDInsight et Azure Cache pour Redis, peuvent également stocker des données NoSQL. Dans ce scénario, les utilisateurs peuvent être amenés à exécuter des requêtes sur plusieurs champs. Azure Cosmos DB est donc un choix plus approprié. Azure Cosmos DB indexe chaque champ par défaut, alors que d’autres services Azure sont limités quant aux données qu’ils indexent. L’interrogation sur des champs non indexés entraîne une réduction des performances.

Photos et vidéos

Classification des données : non structurées.

Opérations : Récupérer uniquement par ID uniquement, les clients ont besoin d’un nombre élevé d’opérations de lecture avec une faible latence, et les opérations de création et de mise à jour sont moins fréquentes et peuvent avoir une latence plus élevée que les opérations de lecture.

Latence et débit : les récupérations par ID doivent prendre en charge une faible latence et un haut débit. Les opérations de création et de mise à jour peuvent présenter une latence plus élevée que les opérations de lecture.

Prise en charge transactionnelle : non nécessaire.

Stockage Blob Azure prend en charge le stockage de fichiers tels que les photos et vidéos. Il fonctionne également avec Azure Content Delivery Network en mettant en cache le contenu le plus fréquemment utilisé puis en le stockant sur des serveurs de périphérie. Azure Content Delivery Network réduit la latence dans la distribution de ces images à vos utilisateurs.

Dans Stockage Blob Azure, vous pouvez également déplacer des images du niveau de stockage chaud vers le niveau de stockage sporadique ou le niveau de stockage archive. Cela permet de réduire les coûts et de concentrer le débit sur les images et vidéos les plus fréquemment consultées.

Pourquoi pas d’autres services Azure ?

Vous pouvez charger vos images sur Azure App Service afin que le même serveur qui exécute votre application diffuse vos images. Cette solution fonctionne si vous n’avez pas beaucoup de fichiers. Cependant, si vous avez un grand nombre de fichiers et un public international, vous obtiendrez de meilleures performances en utilisant Stockage Blob Azure avec Azure Content Delivery Network.

Données métier

Classification des données : structurées.

Opérations : requêtes analytiques complexes en lecture seule sur plusieurs bases de données.

Latence et débit : une certaine latence dans les résultats est attendue en fonction de la nature complexe des requêtes.

Prise en charge transactionnelle : non nécessaire.

Les analystes d’entreprise interrogeront probablement les données métier en utilisant SQL, car ils sont plus susceptibles de connaître ce langage de requête qu’un autre. Vous pouvez utiliser Azure SQL Database comme solution à part entière. Toutefois, si vous l’associez à Azure Analysis Services, les analystes de données peuvent créer un modèle sémantique sur les données dans Azure SQL Database. Les analystes de données peuvent ensuite partager le modèle avec des utilisateurs professionnels, qui auront seulement besoin de se connecter au modèle à partir de n’importe quel outil décisionnel pour pouvoir explorer immédiatement les données et obtenir des insights. Azure Analysis Services prend en charge OLAP.

Pourquoi pas d’autres services Azure ?

Azure Synapse Analytics prend en charge les solutions OLAP et les requêtes SQL, mais vos analystes d’entreprise devront exécuter des requêtes de bases de données croisées, qui ne sont pas prises en charge par Azure Synapse Analytics.

Azure Stream Analytics représente un excellent moyen d’analyser les données et de les transformer en insights actionnables, mais il est axé sur les données en temps réel qui sont diffusées. Dans ce scénario, les analystes métier examinent uniquement les données historiques.