02 Apr 2012
Considerations of data extraction from a data source during ETL process
Έχοντας σχεδιάσει το DW και αφού έχουμε κάνει data analysis and profiling είμαστε πλέον στο σημείο που πρέπει να δημιουργήσουμε την διαδικασία που θα μεταφέρει τα δεδομένα από την πηγή (data source) στο DW. Μια τέτοια διαδικασία είναι γνωστή σαν ETL Process και περιλαμβάνει τα στάδια του Extract data from data source Transform data Load data to destination (data warehouse tables)...
30 Mar 2012
Data Warehouse Physical Design Guide.
Αφού έχουμε σχεδιάσει λογικά και σύμφωνα με τις επιχειρησιακές απαιτήσεις το DW μας, φτάνει η στιγμή που πρέπει να το κάνουμε πραγματικότητα υλοποιώντας το φυσικά. Όπως έχω αναφέρει σε όλα τα προηγούμενα post αυτής της σειράς θα πρέπει φυσικά να υλοποιήσω το DW λαμβάνοντας σοβαρά υπόψη μου τους εξής παράγοντες που δεν είναι άλλοι από τους performance, scalability, manageability. Με αυτούς σαν πυξίδα θα πρέπει να Tips for Database Files...
06 Apr 2012
Considerations on Data Loading Phase during ETL process
Έχουμε φτάσει στο σημείο που θα πρέπει να γεμίσουμε με δεδομένα τους πίνακες που έχουμε στο DW. Και σε αυτή την φάση υπάρχουν θέματα στα οποία θα πρέπει να πάρω αποφάσεις για αυτά. Surrogate Keys Η πρώτη βασική απόφαση είναι για το πώς θα δημιουργώ τα surrogate keys στους πίνακες που έχω τέτοια όπως πχ στους dimension tables. Υπάρχουν δύο βασικές «σχολές».
28 Mar 2012
Data Warehouse Logical Design, How To.
Συνεχίζοντας την σειρά των post που αφορούν την υλοποίηση ενός DW για την κάλυψη των αναγκών μιας BI λύσης θα ασχοληθούμε σε αυτό με τον logical design του DW. Όπως έχω ήδη αναφέρει σε παλαιότερα post ένα DW είναι ο θεμέλιος λίθος καθώς σε αυτό γίνονται τα ερωτήματα που θα δώσουν τις απαντήσεις σε αυτούς που πρέπει να λάβουν αποφάσεις. Έτσι αυτό θα πρέπει σαν Νούμερο Ένα Απαίτηση να είναι έτσι φτιαγμένο ώστε να υποστηρίζει γρήγορο διάβασμα (optimized for data read operations).
03 Apr 2012
Considerations on Data Staging when used during ETL process
Σε αρκετές περιπτώσεις κατά την εκτέλεση ενός ETL process με το οποίο μεταφέρουμε τα δεδομένα μια πηγής στο DW και ειδικότερα κατά την στιγμή που κάνουμε extract data from data sources και πριν την επόμενη φάση του data transformation χρειάζεται να αποθηκεύσουμε αυτά τα δεδομένα σε μια staging area είτε προσωρινά είτε μόνιμα. Ποιές όμως είναι οι προϋποθέσεις και οι συνθήκες που θα μας οδηγήσουν στο να υλοποιήσουμε κάτι τέτοιο;...
04 Apr 2012
Considerations on Data Transformation Phase during ETL process
Σε συνέχεια των προηγούμενων μου post που σχετίζονται με την διαδικασία ETL με την οποία μεταφέρονται τα δεδομένα από την πηγή στο DW στα οποία είδαμε τι πρέπει να προσέξουμε στην φάση extract και στην χρήση της staging area, έφτασε η στιγμή να μιλήσουμε για την φάση του data transformation. Η φάση αυτή είναι ίσως η δυσκολότερη σε σχέση με τις άλλες και μάλιστα απαιτεί και περισσότερο χρόνο ανάπτυξης.
28 Jun 2015
How to change the Default Drillthrough Max Rows in SSAS
Αρκετά από τα post μου έχουν γραφτεί με αφορμή ερωτήσεις που μου έχουν τεθεί κατά την διάρκεια των μαθημάτων που κάνω ή από αυτά που μου έχουν ζητηθεί να υλοποιήσω.
Το συγκεκριμένο μου ζητήθηκε τελευταία και από τις δύο περιπτώσεις και επειδή η σύμπτωση πάντα κάτι σημαίνει πήρα την απόφαση για αυτό το άρθρο.
13 Sep 2009
SQL Server Express – Schedule backup
Μόλις έλαβα ένα request από τον συνάδελφο Γιώργο Σίμο να φτιάξω κάτι για να παίρνει schedule backup στο sql server express, μιας και αυτή η έκδοση δεν έχει τον sql server agent. Λοιπόν όποιος θέλει να υλοποιήσει μια τέτοια λύση θα πρέπει να κάνει τα εξής βήματα: ...
23 Jun 2015
Auditing Reports Execution in SSRS
Ένα από τα services του SQL Server είναι τα Reporting Services τα οποία παρέχουν ένα εξαιρετικά ευέλικτο τρόπο να μεταδίδεται η πληροφορία στους τελικούς χρήστες. Η χρήση τους από τις εταιρίες και τους οργανισμούς έχει αυξηθεί σε υπερθετικό βαθμό και κανείς θα βρει μεγάλο αριθμό από reports να εκτελούνται καθημερινά στις υποδομές αυτών των εταιρειών.
Είναι φυσικό κάποια στιγμή να χρειαζόμαστε να παρακολουθήσουμε ποια είναι αυτά που χρησιμοποιούνται, πόσο συχνά χρησιμοποιούνται, πόσο χρόνο χρειάζονται για να εκτελεστούν, ποιοι είναι οι χρήστες και ποια reports εκτελούν.
06 Mar 2012
MVP Summit 2012 Summary
Έχοντας πλέον επιστρέψει από ένα εξαιρετικό MVP Summit αυτό του 2012 θα ήθελα να μοιραστώ μαζί σας την εμπειρία μου αυτή. Ξεκινώντας την Καθαρά Δευτέρα για το ταξίδι αυτό και έχοντας τις εμπειρίες μου από το προηγούμενο summit που είχα παρακολουθήσει το 2010 γνώριζα καλά τι με περιμένει. Αλλά αυτό το summit ήταν πραγματικό εξαιρετικό ιδιαίτερα για τους MVPs του SQL Server. Ήταν πολύ παραπάνω από τις προσδοκίες μου...
20 Jul 2009
Script for Full database backup in separate device per day
Πριν από λίγο ένας συνεργάτης μου, που έχει πολλούς πελάτες με ERP που είναι σε SQL Server μου ζήτησε να παίρνει backup σε ημερήσια εβδομαδιαία βάση αυτοματοποιημένα. Δηλαδή ένα backup για κάθε database (full βεβαια) κάθε μέρα της εβδομάδας, και την επόμενη εβδομάδα να γράφει πάνω στο προηγούμενο της αντίστοιχης ημέρας. Η λύση είναι απλή...
04 May 2016
Η πρώτη μέρα της βδομάδας
Αν για μια ημερομηνία θέλουμε τον αριθμό της ημέρας μέσα στη βδομάδα, θα στραφούμε στην DATEPART, θα της δώσουμε σαν όρισμα το weekday ή dw και την ημερομηνία μας και θα μας επιστρέψει αυτό που θέλουμε. Ο αριθμός αυτός που παίρνουμε με αυτό τον τρόπο όμως, εξαρτάται από το ποιά θεωρούμε ότι είναι η πρώτη ημέρα της βδομάδας. Απο πού λοιπόν ξεκινάει αυτή η αρίθμηση;
29 Jun 2010
Θέλω να ξενοιάσω με το backup των βάσεων σε έναν Server
Θέλετε να ξενoιάσετε μια και καλή με το backup των βάσεων σας σε έναν SQL Server στον οποίο έχετε δώσει δικαιώματα σε developers ή χρήστες να φτιάχνουν databases με αποτέλεσμα να υπάρχουν βάσεις που δεν τις παίρνετε άμεσα χαμπάρι και όταν γίνει η ζημιά να έχετε την γκρίνια τους ότι έχασαν την βάση τους;
15 Aug 2020
Sizing SQL Server instance
"Έχω ένα σύστημα με Χ Cores, Y RAM, Z storage είναι καλό για να βάλω SQL Server;"
Αυτή είναι η συνηθέστερη ερώτηση που πρέπει συχνά να απαντήσω και αφορά το sizing ενός SQL Server instance.
28 Mar 2012
Designing and Implementing Time Dimensions
Είναι σπάνιο το φαινόμενο σε μια λύση BI και σε ένα DW να μην ζητείται ανάλυση και reporting των δεδομένων με βάση κάποια χρονική περίοδο. Το σύνηθες είναι να έχω τουλάχιστον μία διάσταση χρόνου. Για το λόγο αυτό σε αυτό το post θα δούμε πως μπορούμε να σχεδιάσουμε και υλοποιήσουμε σε μια BI λύση μια τέτοια διάσταση. Για αρχή θα ξεκινήσουμε να δούμε την λογική με την οποία θα σχεδιάσουμε ένα time dimension. Σχεδιάζοντας ένα Time Dimension...
25 Mar 2012
To build a DW with Kimball's or Inmon's methodology?
Εισαγωγή Πριν λίγες μέρες η Microsoft Hellas διοργάνωσε την ημερίδα με τίτλο "Microsoft ΒΙ Roadshow 2012". Δυστυχώς δεν μπόρεσα να την παρακολουθήσω. Όμως είδα τα slide decks των παρουσιάσεων και έχω την εντύπωση ότι ήταν πολύ καλή. Από τις παρουσιάσεις υπήρξε κάτι το οποίο μου άρεσε αρκετά...
27 Aug 2020
Remove non printable chars from a string
Η καταχώρηση δεδομένων σε μία εφαρμογή πάντα πρέπει να περιλαμβάνει κανόνες για να εξασφαλιστεί η ποιότητα των δεδομένων και η σωστή μελλοντική επεξεργασία τους.
28 Dec 2017
2017 Recap
Μια ακόμα χρονιά φτάνει στο τέλος της και όπως συνήθως όλοι κάνουμε είναι να κοιτάξουμε πίσω και να δούμε τι έχουμε κάνει τι έχουμε δει και πως πέρασαν αυτές οι 365 ημέρες. Αυτή την φορά όμως αποφάσισα να γράψω για όλα αυτά.
21 Jun 2013
Doing Magic with Partitioning and ColumnStore Index in a Data Warehouse DB on SQL Server 2012
Αρκετοί με ρωτάνε στα μαθήματα που κάνω αλλά και με emails στο SQL School σχετικά με το θέμα του table partitioning. Δεν ξέρω γιατί αλλά πολλούς έχει προβληματίσει και μπορώ να πω ότι έχει αγχώσει, αν και δεν θα έπρεπε καθώς είναι μια καθαρή λύση.
Υπάρχουν και συνάδελφοι που ασχολούνται με BI και έχουν Data Warehouses (DW) στα οποία θέλουν να επωφεληθούν από το table partitioning αλλά και από την χρήση των columnstore indexes.
Αποφάσισα να σας φτιάξω ένα μικρό demo με το οποίο θα δείτε ότι το να κάνει κάποιος table partitioning δεν είναι κάτι δύσκολο.
12 Jun 2020
The NULLIF expression
Σε αυτό το άρθρο ασχολούμαστε με το NULLIF expression, το οποίο αν χρησιμοποιηθεί κατάλληλα, μπορεί να δώσει πολλαπλά κέρδη τόσο στην απλότητα του query όσο και στην απόδοση του. Υποστηρίζεται σε SQL Server, Azure SQL Database, Azure Synapse Analytics (SQL DW) και Parallel Data Warehouse.
03 Jan 2018
Why BI Solutions Failing
Από τα δημοφιλέστερα θέματα συζήτησης αλλά και προσπάθειών υλοποίησης τα τελευταία χρόνια είναι το Business Intelligence (BI). Η συντριπτική πλειοψηφία των οργανισμών και των εταιρειών έχουν στρέψει τη ματιά τους σε αυτό και σωστά πράττουν καθώς τα οφέλη από αυτό είναι μεγάλα.
14 May 2020
Azure Synapse Analytics SQL Pool Workload Management
Στο άρθρο αυτό αναλύονται οι τρόποι (παλιός και νέος) με τους οποίους μπορούμε να κάνουμε workload management στο Azure Synapse SQL pool. Είναι ένα αρκετά μεγάλο άρθρο στην ανάγνωση του αλλά θεωρούμε ότι αναλύει απλά και κατανοητά όλα όσα πρέπει κάποιος να γνωρίζει για να υλοποιήσει σωστά αυτό.