[Azure][SQL] Passage de certification 70-473

Suite à mon passage de la certification 70-473 : Conception et implémentation de solutions de plateforme de données cloud

Voici mon retour cette certification :

  • Une 50aine de questions au total
  • Pas mal d’études de cas 4 ou 5, partant de la base suivante :
    • J’ai un système On-Premise (en local) je souhaite le migrer dans le cloud vers quelle solution  dois je me tourner ?
      • Evidemment il faut répondre en fonction du contexte client 🙂
    • Et le contexte client peut varier :
      • Soit ça peut être tourné vers des machines en IAAS avec potentiellement de la haute dispo
      • Soit vers du SQL Database ou du SQL Datawarehouse
  • Passer ces études de cas très intéressante (car, pour une fois elle reflète vraiment les questions que l’on peut se poser en clientèle)

 

  • Il y a pas mal de questions techniques orientés sur les informations suivantes :
    • Ouverture des ports pour accéder la SQL Database depuis l’extérieur ou vers les machines en IAAS
    • Configuration de l’Azure Active Directory quand cela est nécessaire
    • Il faut bien connaitre les différences entre les niveaux de services proposés dans la SQL Database (basic, Standard, premium)
    • Il faut connaitre tous les systèmes de géoréplication
    • Certaines questions portent sur les connaissances des systèmes de sauvegarde disponible que ce soit sur la version SQL Database ou en IAAS
    • Il est nécessaire de connaitre les systèmes de transfert de données vers Azure suivant la volumétrie
    • Il est impératif de connaitre les systèmes de chiffrement et de sécurité des données
    • Les nouveautés coté SQL Server 2016 SP1 et SQL Database V12 sont aussis de la partie et sont utiles dans les questions (polybase, Always encrypted …)
    • Certaines questions consistent à connaitre les commandes powershell permettant re restaurer un backup sur une SQL database par exemple, il est donc nécessaire de connaitre les commandes PowerShell disponible dans Azure.

Ma méthode de révision a été la suivante :

  • Comprendre le type de questions qui peuvent être demandés (via la vidéo ci-dessous et les slides)
  • Réviser sur la MSDN les différentes parties sollicitées
  • J’ai eu la chance de travailler à quelques reprises sur des cas similaires chez des clients ou lors de présentation et il n’y a pas à dire mais la pratique ça aide énormément 🙂

 

Si vous souhaitez en savoir plus :

https://www.microsoft.com/fr-fr/learning/exam-70-473.aspx

https://cloudthat.in/course/azure-certification-boot-camp-for-exam-70-473/?pdfpopup=1

https://www.youtube.com/watch?v=rOC4nhuXoRo

 

Julien PIERRE

Consultant MSBI

[70-461] Querying Microsoft SQL Server 2012 – Avril 2014

Suite au passage de la certification 70-461 « Querying Microsoft SQL Server », voici mon compte rendu.

Concernant le contenu de l’examen c’est la même chose que ce qu’on dit mes collègues. Pour ne pas faire doublon je vous renvoie vers leurs posts :

 

Les questions m’ayant posées le plus de problèmes sont celles portant sur la différence entre une procédure stockée et une UDF (User-Defined Function).

L’UDF et les procédures stockées sont toutes deux des objets SQL Server qui stockent une ou plusieurs instructions T-SQL sous un seul nom, prenant la forme d’une routine exécutable. Même si vous pouvez mettre en œuvre la même fonctionnalité ou une similaire en utilisant soit une UDF ou soit une procédure stockée, le code sera significativement différent selon la technique que vous choisissez.

Les avantages de l’utilisation des procédures stockées ou des fonctions sont les suivants :

  • Vous pouvez créer la procédure ou la fonction une fois, la stocker dans la base de données et l’appeler autant de fois que vous le voulez dans votre programme.
  • Les procédures stockées et les fonctions Transact-SQL définies par l’utilisateur réduisent le coût de compilation du code Transact-SQL en mettant en cache les plans pour les réutiliser au cours d’exécutions répétées. Elles n’ont donc pas besoin d’être ré-analysées et ré-optimisées à chaque utilisation, ce qui réduit nettement les durées d’exécution.
  • Les commandes d’une procédure ou d’une fonction sont exécutées comme un seul lot de codes. Cela peut réduire considérablement le trafic réseau entre le serveur et le client, car seul l’appel pour exécuter la procédure ou la fonction est envoyé sur le réseau.

 

Voici les principales différences entre les fonctions et les procédures stockées :

  • Une UDF doit renvoyer un seul et unique jeu de résultat. Une procédure stockée peut quant à elle retourner une valeur ou même plusieurs jeux de résultats ou voir même ne rien retourner du tout.
  • Vous pouvez utiliser une UDF directement dans une instruction SELECT ainsi que dans les clauses ORDER BY , WHERE ou FROM, tandis que vous ne pouvez pas utiliser une procédure stockée dans une instruction SELECT.
  • Une UDF ne peut pas utiliser une fonction non déterministe (qui retourne un résultat différent avec les mêmes paramètres d’entrée) comme GETDATE(), NEWID(), ou RAND(), alors qu’une procédure stockée peut utiliser ces fonctions.
  • Une UDF ne peut pas modifier les variables d’environnement du serveur; une procédure stockée peut .
  • Une UDF arrête toujours exécution du code en cas d’erreur, alors qu’avec une procédure stockée on peut continuer à l’instruction suivante en utilisant le code de gestion d’erreur approprié.
  • Une UDF peut être appelée à partir de procédure alors qu’une procédure ne peut pas être appelée à partir de l’UDF.
  • Une procédure ne peut pas être utilisée dans une instruction SELECT alors qu’une fonction peut être intégrée dans une instruction SELECT.

 

Il existe plusieurs types de fonctions définies par l’utilisateur :

  • Fonction scalaire :Les fonctions scalaires définies par l’utilisateur retournent une valeur de donnée unique dont le type est défini dans la clause RETURNS. Une fonction scalaire incluse ne contient pas de corps ; la valeur scalaire est le résultat d’une instruction unique. Le corps d’une fonction scalaire à instructions multiples, défini dans un bloc BEGIN…END, contient une série d’instructions Transact-SQL qui retournent la valeur unique. Le type de retour peut être n’importe quel type de données à l’exception de text, ntext, image, cursor et timestamp.
  • Fonctions tableLes fonctions table définies par l’utilisateur retournent un type de données table. Une fonction table incluse ne contient pas de corps ; la table est le jeu de résultats d’une instruction SELECT unique.
  • Fonctions inlineLes fonctions définies par l’utilisateur inline sont un sous-ensemble de fonctions définies par l’utilisateur qui retournent un type de données table. Les fonctions inline peuvent offrir une fonctionnalité équivalente à celle des vues paramétrées.
  • Fonctions systèmeSQL Server fournit de nombreuses fonctions système que vous pouvez utiliser pour effectuer diverses opérations. Elles ne peuvent pas être modifiées.

 

 

 

70-461: Querying Microsoft SQL Server 2012

Voici un récapitulatif de quelques points à connaitre pour mieux réussir votre certification :

1. Questions XML (4 questions)

C’était parmi les questions qui me faisaient peur vu que nous n’utilisons pas vraiment du XML dans nos missions, mais je vous rassure ce n’est pas aussi difficile que ça, il suffit de connaitre la différence entre :

  • FOR XML RAW
  • FOR XML RAW, Elements
  •  FOR XML AUTO
  •  FOR XML AUTO, Elements
  •  FOR XML PATH

2. Il y a aussi des questions sur l’optimisation, par exemple :

Le temps de traitement est très long, il faut trouver une solution afin de réduire le temps de réponse

3. Il faut connaitre la différence entre :

  • GROUPING SET / ROLLUP/ CUBE
  • Union / union all
  • LAG / LEAD
  • RANK () / DENSE_RANK () / NTILE ()…

4. Autres types de questions

Exemple : vous devez faire un lot de traitement, ils vous décrivent l’attendu de ce traitement et c’est à vous de choisir quel objet il faut utiliser :

  • Scalar user-defined function
  • Inline user-defined function
  • Stored procedure…

Bon courage 🙂

laila

70-461: Querying Microsoft SQL Server 2012

Vous trouverez ci-dessous quelques points utiles pour ceux qui souhaitent passer la certification 70-461

Il y’avait 2 types de questions :

–        Les QCM : un ou plusieurs choix possibles pouvant aller jusqu’à 8 choix !

–        Les constructions de batch : création d’une requête par drag and drop

Plusieurs sujets retombaient sur de nombreuses questions:

  • Utilisation des fonctions d’ordre : rank(), dense_rank(), ntile().
  • Rendu XML des requêtes FOR XML. Bien connaître la subtilité entre FOR XML RAW vs AUTO vs PATH avec l’option ELEMENTS ou pas.
  • Gestion d’erreurs : utilisation de @@ERROR, XACT_STATE(), @@TRANCOUNT
  • Les triggers surtout l’utilisation de « instead of »

Eléments qui tombent dans une ou deux questions :

  • Incrémentation automatique avec cycle.
  • Utilisation de SCHEMABINDING

Eléments qui m’ont posés problèmes :

  • A priori l’opérateur « + » est mieux que la somme …
  • « NOT IN » équivalent à « <> ALL »
  • Différence entre UNION et UNION ALL, le dernier garde les doublons

Voilà pour mon retour,

Bon courage aux prochains !

Ezra

MS 70-466 – Implementing Data Models and Reports with Microsoft SQL Server 2012

Voici un petit récapitulatif de 70-466

En fait, Il y a des points globaux pour MCSA ou MCSE :

  1. Maintaining and Troubleshooting
  2. Users Permissions
  3. Study Cases (Un scénario avec plusieurs questions)
  4. Properties (Dans VS la fenêtre F4)

Environ 50% de questions concernent les 4 points dessus. Donc il faut que l’on étudie beaucoup sur MSDN.

 

L’exam 70-466

  1. Build an SSAS Databse qui concerne MDX, Dimension, Partition, Perspective, etc

Ce sont des concepts. La question est un scénario normalement, il faut savoir clairement des concepts.

Par exemple : we should use the Regular Relationship or Fact Relationship.

 

  1. Manage, matain, and Troubleshoot an SSAS database

Cette partie est plus difficile. Il y a des questions qui concernent la modification ou la correction.

Par exemple : Un message d’erreur affiche : un doublon de clé a été trouvé lors du traitement….

 

  1. Build a Tabular Data Mdel

Cette partie est comme Partie 1. Mais il mélange la partie Power Pivot et DAX.

Par exemple : You should use which function DAX (Lookupvalue ou Related)

 

  1. Build a Report with SSRS

Il faut réviser tous les reports items dans SSRS et beaucoup de questions concernent des Properties de report items.

Par exemple : Set textbox visible when we click to…..

 

  1. Study Case

Il propose un projet entier : les besoins, la préparation, le développement, l’architecture et les feedbacks (Errors normalement)

Ce sont des expériences de BI chez client.

Wish us Good Luck for this case!

 

PS: les exemples ne sont pas les mêmes questions dans l’examen. Ce sont les mots clés pour mieux compréhensible.

Certification 70-457 : Transition Your MCTS on SQL Server 2008 to MCSA: SQL Server 2012, Part 1

Il s’agit d’un examen réservé aux personnes déjà certifié SQL Server 2008 qui regroupe les deux examens suivants :
– 70-461 : Querying Microsoft SQL Server 2012
– 70-462 : Administering Microsoft SQL Server 2012 Databases
Il comporte 50 questions décomposées en 2 ensembles :
– 25 questions pour la partie développement (70-461)
– 25 questions pour la partie administration (70-462)
Concernant la première partie, vous trouverez toutes les informations sur le post suivant :
http://mcnextpost.com/2014/03/28/certification-ms-querying-sql-server-2012-70-461/
Concernant la deuxième partie, j’ai relevé différents points d’attention
– Les différents mécanismes de réplication (Snapshot, Transactional, etc.)
– Le principe du Database Mirroring
– Les procédures de sauvegarde (Backup Differential, etc.)
– L’installation complète d’une plateforme SQL Server (Database Mail, Cluster, etc.)
– Le « Always On »
– Les différents outils de monitoring (Performance monitor, SQL Server Profiler, etc.)
– L’audit des instances SQL Server (Server Audit, Policy, etc.)
– La création de jobs avec l’agent SQL Server
Une certification pas si simple pour les personnes ne pratiquant pas l’administration SQL Server au quotidien.

Certification MS Querying SQL SERVER 2012 70-461

Suite à mon passage de la certification 70-461 voici un « petit » récapitulatif des parties qu’il est nécessaire de réviser pour obtenir la certification :

CTE :

  • Revoir les notions de requêtes récursives
  • Avantage sur les curseurs

XML (bloc de 5 questions) :

Savoir effectuer des requêtes XML à l’aide des opérateurs suivants :

  • Query()
  • Value()
  • Exist()
  • Nodes()
  • Modify()

Effectuer des requetes a partir des données SQL server en utilisant les fonctions:

  •   FOR XML RAW
  •   FOR XML AUTO
  •   FOR XML EXPLICIT
  •   FOR XML PATH

Connaitre les fonctions  :

  • GROUPING SET / ROLLUP/ CUBE
  • LAG / LEAD
  • UNBOUNDED PRECEDING (FIRST/LAST)

Utiliser la fonction MERGE :

  • When matched then
  • When not matched
  • When matched by source

Savoir utiliser et connaitre les différences entre :

  • PARSE / TRY PARSE
  • CAST / TRY CAST
  • CONVERT / TRY CONVERT

Connaitre les niveaux de transactions :

  • READ UNCOMMITED
  • READ COMMITED
  • SERIALIZABLES
  • REPEATABLE READ
  • XACT_STATE ()
  • @@TRANCOUNT

Savoir utiliser les vues revoir notamment les notions suivantes :

  • Vues indexés
  • Shemabinding
  • VIEW_METADATA
  • Encryption
  • CHECK_OPTION

Les index

  • Clustered index
  • Non clustered index
  • Reoganize
  • Rebuild
  • Fill factor

Connaitre Les fonctions :

  • RANK/DENSE_RANK/NTILE (bloc de 5 questions)
  • LAG/LEAD
  • ROWNUMBER

Connaitre l’ensemble des notions de triggers

  • Instead of
  • For update …

Schéma de base de données (bloc de 5 questions)

  • PK
  • FK
  • Contraintes
  • Newid()
  • newSequentientialID()

Connaitre les objets séquences SQL SERVER

  • NEXT VALUE
  • CYCLE

Avoir de très bonne notions de requetage SQL.

L’examen est composé de la façon suivante :

  • QCM 50 %
  • Requête à remettre en ordre sous forme de « Drag & Drop » 25 %
  • Etude de cas 25 %

Bien évidement toutes ces informations sont données à titre indicatives, néanmoins je vous invite à bien réviser les parties indiquées.