Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Pourquoi avons-nous besoin de SSIS et du schéma en étoile de Data Warehouse ?

C'est peut-être un candidat pour "Too Broad", mais je vais essayer.

Pourquoi voudrais-je stocker mes données 3 fois ?

J'ai mes données dans mon OLTP (système de traitement des transactions en ligne), pourquoi voudrais-je déplacer ces données dans une toute nouvelle structure (entrepôt de données), puis les déplacer à nouveau dans un système OLAP ?

Commençons simple. Vous n'avez qu'un seul système d'enregistrement et il n'est pas étonnamment occupé. Vous pouvez peut-être vous contenter d'une couche d'abstraction (vues dans la base de données ou requêtes nommées dans SSAS) et ignorer l'entrepôt de données.

Ainsi, vous construisez vos cubes, vos dimensions et les gens commencent à l'utiliser et ils l'adorent.

"Vous savez ce qui serait génial? Si nous pouvions corréler nos Blats aux Foos et Bars que nous avons déjà là-dedans" Vous devez maintenant intégrer votre application simple avec des données provenant d'une application totalement indépendante. L'ID client 10 dans votre application est l'ID client {ECA67697-1200-49E2-BF00-7A13A549F57D} dans l'application CRM. Maintenant quoi? Vous devrez présenter une vue unique du client à vos utilisateurs, sinon ils n'utiliseront pas l'outil.

Peut-être que vous gouvernez avec une poigne de fer et dites Non, vous ne pouvez pas avoir ces données dans le cube et vos utilisateurs les acceptent.

« Est-ce que les habitudes d'achat des gens changent après avoir eu un enfant ? Nous ne pouvons pas répondre à cela car notre application ne stocke que la version actuelle d'un client. Une fois qu'ils ont un enfant, ils ont toujours eu un enfant, vous ne pouvez donc pas identifier clairement les modèles avant ou après un événement.

"A quoi ressemblaient nos ventes l'année dernière" Nous ne pouvons pas répondre à cette question car nous ne conservons que 12 semaines de données dans l'application pour la rendre gérable.

"Les données des cubes sont obsolètes, pouvez-vous les actualiser ?" Egads, c'est le milieu de la journée. Le traitement SSAS prend des verrous de table et arrêterait essentiellement notre application jusqu'à ce que le traitement soit terminé.

Dois-je continuer avec ces scénarios ?

Résumé

L'entrepôt de données sert de point d'intégration pour divers systèmes. Il a des dimensions conformes (tout le monde a une définition commune de ce qu'est une chose). Les données dans l'entrepôt peuvent dépasser la durée de vie des données dans les systèmes sources. Les besoins de l'entreprise peuvent entraîner le suivi des données que l'application source ne prend pas en charge. Les données du DW prennent en charge les activités commerciales tandis que votre système OLTP prend en charge lui-même.

SSIS est juste un outil pour déplacer des données. Il y en a beaucoup, certains meilleurs, d'autres pires.

Alors non, de manière générale, il ne vaut pas mieux éviter de créer un DW et construire vos cubes en fonction de votre base de données OLTP.