assorted books on book shelves

Glossaire SQL

A

analyse multidimensionnelle : ensemble des techniques OLAP ou OLTP permettant d’analyser statistiquement des données à partir de valeurs appelées « dimensions » que l’on agrège pour les besoins de l’analyse.

anomalie (transactionnelle) : obtention d’information(s) erronée(s) au cours d’un traitement informatique portant sur des données. Les anomalies se combattent par l’utilisation judicieuse d’un niveau d’isolation des transactions.

API (Application Programming Interface ou interface de programmation) : définit la manière dont un composant informatique communique avec un autre. Le plus souvent, une API consiste en une bibliothèque de composants logiciels, c’est-à-dire d’une liste de fonctions ou procédures considérées comme utiles pour d’autres programmes et exploitables à l’aide de n’importe quel langage de développement informatique.

arbre équilibré (B-Tree ou Balanced Tree) : structure de données arborescente dont la profondeur est constante, c’est-à-dire que toutes les feuilles sont situées au même niveau.

ASCII (American Standard Code for Information Interchange) : norme américaine employée pour le codage des caractères alphanumériques. Elle a été inventée par l’Américain Bob Bemer en 1961, pour l’utilisation des télétypes et pour le codage des littéraux dans les systèmes informatiques.

assertion (affirmation) : dans les bases de données, règle globale (contrainte multitabulaire) qui doit toujours être vérifiée.

association : type de lien ou de relation au niveau conceptuel entre deux ou plusieurs entités ou classes (par exemple, association « achète » entre entités « client » et « produit »). Les associations se déduisent en général des verbes des règles dégagées au cours de la phase d’analyse.

asynchrone (contraire de synchrone) : se dit d’un mécanisme ou d’un traitement découplé d’un autre alors qu’il en est dépendant.

atomique (insécable) : se dit d’un programme qui doit être exécuté en tout ou rien garanti par le biais de transactions. Se dit d’une donnée qui ne peut être subdivisée. Par exemple, un numéro de sécurité sociale n’est pas une donnée atomique. On parle aussi d’atomicité.

attribut : propriété d’une entité dans un modèle, correspondant généralement à une colonne dans une table de la base.

authentification : opération consistant à vérifier les informations d’identification d’un processus tentant d’accéder au serveur. Il est autorisé s’il figure sur la liste d’acceptation.

Azure : solution globale de cloud computing de Microsoft qui propose, entre autres, des services de bases de données SQL Server.

autocommit : validation automatique d’une transaction.

Auto-incrément : donnée numérique dont la particularité est de fournir une nouvelle valeur résultat de la précédente augmentée d’un pas de croissance généralement de 1. La graine d’un auto-incrément est la valeur initiale et peut aussi être définie à la valeur que l’on souhaite. Dans SQL Server, les autoincréments sont définis soit par la propriété IDENTITY associée à une colonne d’une table, soit par le biais de séquence.

autojointure : jointure effectuée d’une table ou d’une vue sur elle-même.

autorisation : concerne la sécurité d’accès des utilisateurs aux bases de données relationnelles.


B

Balanced Tree, voir arbre équilibré.

balayage (ou scan) : technique qui consiste à accéder à une donnée d’une table ou d’un index par lecture de toutes les lignes l’une après l’autre.

balise : élément du langage XML définie par une chaîne de caractères constituant un identificateur et placé entre chevrons, par exemple <uneBalise> .

base de données : ensemble d’informations (données structurées) enregistrées sur des supports persistants, accessibles par un ordinateur, et qui sont destinées à satisfaire simultanément plusieurs utilisateurs de manière sélective et sécurisée et dans un temps opportun. L’interrogation et la mise à jour s’effectuent par l’intermédiaire d’un logiciel, le SGBD.

batch : ensemble de commande SQL ou Transact SQL généralement exécutées en une seule fois. Contrairement à une procédure, un batch n’est pas stocké dans la base et n’admet pas d’arguments. Il peut cependant renvoyer des messages et des jeux de données et encapsuler des transactions. Il est généralement utilisé pour des traitements à usage unique, comme la création des objets d’une base.

BCM (Bulk Changed Map) : page technique particulière d’un fichier de données d’une base SQL Server permettant d’indiquer par un bit à 1 parmi les 63 904 extensions suivantes lesquelles ont été visées par une opération BULK INSERT depuis la dernière sauvegarde complète. benchmark : banc d’essai destiné à étalonner et comparer la performance des systèmes.

BI (Business Intelligence) : ensemble des techniques de l’informatique décisionnelle (OLAP) destinée aux décideurs afin de piloter l’entreprise par la prise de décision découlant de l’analyse et du forage des données.

BIOS (Basic Input Output System) : système élémentaire pour les entrées/sorties. Composant microprogrammé d’un ordinateur destiné à assurer les tâches d’entrée et de sortie de bas niveau pour les périphériques.

Big Data : technique qui consiste à fouiller dans de grandes masses de données à la recherche de tendances. Le terme français « datamasse » est rarement employé.

bitmap (matrice de bit) : un index bitmap recense toutes les valeurs possibles de la clé d’index par une combinaison de bits, ce qui compresse les entrées de l’index.

BLOB (Binary Large OBject), voir LOB.

blocage : empêchement temporaire d’effectuer une action. Les blocages dans les bases de données sont le résultat de l’application des verrous permettant de protéger des accès concurrents intempestifs.

Boot (page Boot) : page particulière dans les fichiers de données de la base contenant des métadonnées essentielles de celle-ci.

B-Tree, voir arbre équilibré.


C

cache (ou mémoire cache) : mémoire qui contient temporairement des copies de données provenant d’une autre source de données, afin de diminuer le temps d’accès d’un matériel informatique. Dans SQL Server, le cache est assuré par l’utilisation de la RAM (voir ce mot).

cardinalité : nombre de lignes d’une table.

casse (en informatique) : forme majuscule (haut de casse) ou minuscule (bas de casse) des lettres.

catalogue (ou catalogue) : collection de schémas SQL. En réalité, ce terme ancien désignait la base de données. Par extension, il définit aussi les informations de métadonnées des bases.

certificat : document électronique destiné à s’assurer de l’identité d’un utilisateur. Un certificat encapsule une clé de cryptage.

CHECKPOINT: commande forçant l’écriture physique des données modifiées de la base.

cherchable : néologisme signifiant qu’un prédicat peut utiliser un index vu que l’accès aux données de l’index s’effectue par une technique dichotomique et non par un balayage de toutes les valeurs.

CHECK : contrainte de ligne de table permettant de valider une ou plusieurs valeurs de colonnes.

chiffrement : cryptage par calcul mathématique.

clause : partie syntaxiquement distincte d’un ordre SQL précisant un fonctionnement particulier (membre d’une commande SQL). Par exemple : clause ORDER BY de l’ordre SELECT.

clé : ensemble de colonnes dont les valeurs permettent de retrouver au plus une seule occurrence des informations d’une table. Dans cette dernière, elle assure l’unicité d’accès à la ligne. Une clé peut être primaire ou alternative.

clé alternative (ou subrogée) : clé pouvant se substituer à l’usage à une clé primaire d’une table. Celle-ci peut contenir plusieurs clés alternatives. Elle se traduit dans la table par la contrainte UNIQUE.

clé candidate : clé pouvant figurer en tant que clé primaire ou alternative.

clé d’index : par extension du concept de clé, ensemble de colonnes qui assurent la recherche dans un index, pas forcément unique.

clé de cryptage (ou de chiffrement) : donnée binaire permettant par le biais d’un algorithme de chiffrement de crypter ou décrypter de l’information en toute confidentialité (chaque clé étant en principe différente).

clé de hachage : donnée sur laquelle est calculée une valeur de hachage.

clé étrangère : ce n’est pas à proprement parler une clé. C’est plus exactement la copie de valeurs d’une clé externe à la table, assurant un lien entre deux tables (lien découlant des associations du modèle relationnel). Composée d’une ou plusieurs colonnes, elle référence les valeurs de la clé primaire ou d’une clé alternative d’une autre table dite « de référence » dans la table courante. Elle se traduit dans la table par la contrainte FOREIGN KEY.

clé primaire : clé composée d’une ou plusieurs colonnes dont les valeurs sont toujours renseignées (non NULL). Une table ne peut avoir qu’une seule colonne clé primaire. Elle se traduit dans la table par la contrainte PRIMAKY KEY.

clé subrogée : synonyme de clé alternative, voir ce mot.

cliché (snapshot) : copie d’un ensemble de données.

cliché de base de données (database snapshot) : captation des données de l’intégralité de la base à un instant donné.

client/serveur (ou C/S) : mode d’interaction en réseau permettant à deux processus, appelés client et serveur, de communiquer entre eux. Dans les SGBDR de type C/S, le client génère les requêtes et les envoie au serveur. Ce dernier exécute les requêtes et renvoie la réponse au client. Le C/S est généralement opposé à la méthode d’accès par partage de fichiers.

CLOB, voir LOB.

cloud computing : solution informatique hébergée proposant des services dont l’emplacement physique est indéfini et « mouvant », afin de rendre le système très hautement disponible (redondance occulte).

cluster (littéralement, emplacement) : pour une instance de serveur SQL, un cluster est un ensemble de machines redondées destinées à assurer un seul et même service par le relais d’une machine de secours en cas de défaillance de celle principale. Les applications clientes ne voient qu’un seul serveur de bases de données.

clustered : pour un index, cette notion indique qu’il est créé « sur place », c’est-à-dire sur la table elle-même. Les index dits « secondaires » (non clustered) sont, quant à eux, des copies d’une partie des données de la table.

clustering : technique de haute disponibilité consistant à générer un serveur « fantôme » qui représente une grappe de serveurs redondants de manière à ce que l’un des participants (appelé « nœud ») puisse être remplacé en cas de défaillance. Dans SQL Server, le clustering peut se faire avec de nombreux nœuds, mais il nécessite de partager les bases de données via un SAN.

cœur (core) : sous-ensemble d’un microprocesseur moderne, constitué d’une UAL (Unité arithmétique et logique) indépendante. Il est présent en plusieurs exemplaires dans le même processeur et destiné à augmenter la puissance de calcul global en permettant le parallélisme.

cohérence : ensemble des liaisons logiques des différents éléments d’une base de données n’offrant aucune contradiction.

collation : littéralement, c’est la comparaison de deux informations afin de vérifier si elles sont identiques. Dans SQL Server, il s’agit d’objets définissant les propriétés de sensibilité à la casse (majuscule/minuscule), aux accents (et autres caractères diacritiques), de kanatypes (japonais) ou encore de la largeur de trait des caractères.

colonne : élément vertical dans une table, présentant un ensemble de valeurs de même type.

columnstore (index) : technique d’indexation de différentes colonnes d’une même table basée sur une structure dite « verticale », rendant uniforme l’accès à l’une des colonnes cherchées.

COMMIT: commande de validation de transaction.

Common Table Expression (CTE) : forme particulière d’écriture de sous-requêtes permettant de définir un ensemble de pseudo-tables utilisées par une requête finale et introduite par le mot-clé WITH.

compression : technique consistant à organiser différemment les données pour en diminuer le volume physique tout en conservant l’usage logique. SQL Server dispose de nombreuses possibilités de compression, pour certaines colonnes (vardecimal, sparse), comme pour les lignes, pages et fichiers de sauvegarde.

concaténation : opération consistant à mettre bout à bout des chaînes de caractères afin d’en former une plus complète.

connexion : phase durant laquelle un processus encore inconnu tente de pénétrer dans le serveur SQL en essayant de s’authentifier.

conteneur : objet destiné à en contenir d’autres. Les principaux conteneurs dans SQL Server sont : l’instance qui contient les bases, la base qui contient des schémas SQL et le schéma SQL qui contient des objets relationnels.

contention : phénomène généralement transitoire par lequel, du fait de blocage, les temps de réponse moyens d’un système commence à s’allonger de façon problématique. Les embouteillages sur la route sont un exemple de contention.

courbe de Lebesgue (ou courbe en Z) : courbe cheminant par un tracé en forme de Z et destinée à assurer le remplissage d’un espace en parcourant tous les éléments qui le pavent.

contrainte : objet d’une base ayant pour objectif de programmer des règles de gestion au niveau des données. Les contraintes agissent soit par barrage, soit par mécanisme de modification automatique. Il existe trois niveaux de contraintes : celle de domaine qui porte sur des valeurs (réalisée par des RULE avec SQL Server), celle de table qui porte sur les données (clé primaire, alternative, étrangère, validation et obligation de valeur : PRIMARY KEY, UNIQUE, FOREIGN KEY, CHECK, NOT NULL) et celle générale (dite « d’assertion ») qui porte sur de multiples tables et qui est réalisée généralement par des déclencheurs sinon par des contraintes CHECK appelant des UDF.

couvrant : se dit d’un index dont la composition (listes des colonnes composant la clé d’index et colonnes incluses) suffit à répondre pleinement aux données d’une table pour la requête considérée. Un index couvrant évite la double lecture : recherche dans l’index plus lecture d’informations complémentaires dans la table.

CPU (Central Processing Unit, unité centrale de traitement) : composant essentiel de l’ordinateur qui exécute les instructions machine. Les CPU modernes possèdent plusieurs cœurs.

CTE, voir Common Table Expression.

CU (Cumulative Update) : ensemble de mises à jour, corrections, améliorations cumulatif et testé de correctifs logiciels (voir aussi Service Pack) visant généralement une thématique spécifique (sécurité, composant, fonctionnalité d’un produit…) et, par conséquent, destiné à résoudre un problème particulier.

cryptage (ou crypter) : action consistant à transformer une information naturellement interprétable (claire) en une autre impossible à déchiffrer (opaque) pour celui qui ne connaît pas la méthode employée ou bien ne possède pas les paramètres de celle-ci.

cylindre (disque) : ensemble des pistes des différentes plateaux d’un disque dur informatique ne nécessitant aucun déplacement de la tête de lecture pour en lire les données (celles-ci étant lues par la simple rotation synchrone des plateaux).


D

Database Snapshot, voir cliché de base de données.

DATALINK : type particulier de données que la norme SQL a prévu pour le stockage des fichiers sous le contrôle du SGBDR. Il est représenté dans SQL Server par FILESTREAM.

DBA (DataBase Administrator) : administrateur de bases de données.

DBCC (Database Console Command) : outil interne permettant de piloter le moteur de stockage de SQL Server.

DCL (Data Control Language) : partie du SQL qui traite de la sécurité par mise en place de privilèges sur des objets, accordés aux utilisateurs. Ordre Transact-SQL GRANT, DENY et REVOKE.

DCM(Differential Changed Map) : page technique particulière d’un fichier de données d’une base SQL Server permettant d’indiquer par un bit à 1 parmi les 63 904 extensions qui la suivent, lesquelles ont été mises à jour depuis la dernière sauvegarde complète.

DDL (Data Definition Language) : partie du SQL qui traite de la structuration de la base et permet donc de modifier le schéma de celle-ci. Comprend principalement des ordres SQL CREATE, ALTER et DROP.

DEFAULT: contrainte de colonne de table indiquant qu’une valeur sera donnée à cette colonne en cas d’insertion de ligne ignorant la colonne.

déférable : possibilité de dévolution d’une action. Une contrainte déférable possède une évaluation qui peut être reportée en fin de transaction. On parle aussi de « déférabilité ».

déclencheur (trigger) : routine Transact-SQL attachée à une table ou une vue (déclencheur DML), ou encore une base ou un serveur (déclencheur DDL), exécutée lors de la survenue d’un événement (INSERT, UPDATE, DELETE pour les déclencheurs DML et CREATE, ALTER, DROP, etc., pour les déclencheurs DDL).

degré : nombre de colonnes d’une table.

déni (de privilège) : interdiction de l’octroi d’un privilège.

densité : indice inverse de la sélectivité (voir ce terme).

dépersonnalisation : état permettant à un utilisateur de se faire temporairement passer pour un autre.

diacritique : signe typographique (accent, cédille…) ou forme (ligature…) affecté à une lettre afin de lui conférer une graphie ou une phonie différente. Par extension, on parle de « caractère diacritique » lorsqu’une lettre est, par exemple, accentuée.

diadique : caractérise une fonction ou un opérateur prenant en compte deux éléments en entrée.

différence : opération relationnelle consistant à rechercher les lignes qui n’existent pas d’une table par rapport à une autre. Avec l’opérateur EXCEPT.

DML (Data Manipulation Language) : partie du SQL qui traite de la manipulation des données, en lecture (SELECT) comme en écriture (INSERT, UPDATE, DELETE et MERGE).

DMV (Data Management View, vue de gestion des données) : ensemble de vues système (présentes dans le schéma sys) destinées à fournir des informations sur l’état de l’instance SQL à différents niveaux (serveur, bases, objets…). Ces données ne figurant qu’en mémoire, elles sont perdues en cas d’arrêt du serveur.

doublon : ligne d’une table contenant des données strictement identiques à une autre.

domaine : au niveau conceptuel, ensemble des valeurs possibles d’un attribut. Au niveau SQL : objet d’une base de données permettant de définir un type de données associable à des règles afin de représenter un domaine conceptuel. Les domaines SQL Server sont réalisés par le biais des TYPE.

données géodésiques : données de cartographie prenant en compte la courbure spatiale de l’écorce terrestre, permettant la mesure et la représentation de la surface de la terre.

DTD (Document Type Definition, définition de type de document) : document décrivant un modèle permettant de contrôler le contenu de documents XML notamment. Actuellement en voie de disparition du fait de la proéminence de XML Schema pour assurer cette même fonction.

durabilité : propriété du SGBDR qui assure qu’une transaction informatique validée survit de façon permanente. Elle se traduit généralement par l’écriture des données sur un support physique et durable.

dump (littéralement, « vidage ») : copie de la mémoire vive et des registres d’un processeur, permettant d’avoir un instantané de l’état d’un système. Terme trop souvent confondu avec la notion de sauvegarde. Pour les bases de données, un dump est un fichier contenant une extraction des commandes SQL permettant de reconstituer la base.


E

EBCDIC (Extended Binary Coded Decimal Interchange Code) : mode de codage des caractères sur 8 bits créé par IBM à l’époque des cartes perforées. EBCDIC existe en six versions différentes incompatibles entre elles, et certains caractères de ponctuation ne sont pas disponibles dans toutes les versions. EBCDIC est néanmoins encore utilisé dans les systèmes AS/400 d’IBM ainsi que sur les mainframes sous MVS, VM ou DOS/VSE. Cet encodage de caractères étant très décrié du fait de sa complexité et de son aspect propriétaire, il a tendance à disparaître au profit d’encodages plus standards comme l’ASCII, Unicode ou encore UTF-16.

équijointure : opération de jointure dont le prédicat utilise exclusivement des opérateurs d’égalité entre des colonnes de table.

ensembliste : manipulation d’ensembles de données utilisant le schéma relationnel.

entité : ensemble d’éléments informatifs, cohérents, relatifs à un même concept dans un modèle de données (par exemple, entité « client »). Correspond généralement à une table dans l’univers des bases de données.

ES (ou E/S : Entrée/Sortie, en anglais IO : Input/Output) : opération de lecture ou d’écriture d’une page.

espace de nom (namespace) : lieu abstrait destiné à accueillir des ensembles de termes appartenant à une même famille. Dans les langages informatiques, ce sont souvent des fichiers particuliers, regroupant des définitions d’objets et de méthodes, partagés et utilisés par d’autres programmes. Anciennement « bibliothèque » (library).

exception : condition particulière, généralement non prévue, pouvant survenir du fait d’une défaillance matérielle, d’un bogue logiciel, d’une contrainte violée ou d’une condition la générant.

expansion : mots ou expressions dérivés d’un autre mot ou d’un acronyme (utilisé dans l’indexation textuelle), par exemple Société nationale des chemins de fer au lieu de SNCF.

expression rationnelle : modèle créé via les caractères ASCII, permettant de manipuler des chaînes de caractères à l’aide de motifs (notamment, extraction de portions de la chaîne correspondant au modèle). Ce système est emprunté au système POSIX (système d’exploitation). De nombreux scripts sous Unix l’utilisent.

extension (extent) : ensemble consécutif de 8 pages physiques de données (table ou index) figurant sur le disque.


F

famine : situation dans laquelle un système informatique est engagé dans un traitement où une phase critique ne peut être finalisée avec certitude.

file group, voir groupe de fichiers.

Filestream : technique destinée à stocker des fichiers de toutes natures, sous le contrôle exclusif ou partagé du serveur SQL en faisant croire que les données sont présentes dans une table.

Filetable : type de table particulier permettant de représenter les fichiers et répertoires d’un point d’entrée du système de fichier et d’y effectuer des opérations de fichier (création, modification, suppression…) sous le contrôle exclusif ou partagé du serveur SQL. C’est une extension du concept de Filestream.

flou : élément dont le dessin est incertain. L’indexation textuelle permet des recherches floues.

floutage : rendre flou tout ou partie d’un élément. Dans l’indexation textuelle, permet de réaliser des recherches par approximation.

fonction : routine de code générant une information de sortie constituée d’une seule valeur atomique (scalaire) ou d’un ensemble de données (table). Une fonction admet généralement des paramètres en entrée.

fonction scalaire : fonction renvoyant une seule valeur atomique.

fonction table : fonction renvoyant un ensemble de données. Elle peut être constituée d’une seule instruction SELECT contenant d’éventuels paramètres (fonction table en ligne) ou bien d’une table de sortie dont les données sont alimentées par le biais de commandes INSERT, UPDATE, DELETE (fonction table multi-instruction).

forme fléchie : ensemble des mots dérivés de la racine d’un mot pour ses différents modes (pluriel, singulier), genres (masculin, féminin, neutre) ou temps (conjugaison).

FOREIGN KEY : contrainte de clé étrangère applicable à une ligne de table. Oblige à définir les valeurs de référence par lien à une autre table.

fragmentation (d’index) : présence de « trous », c’est-à-dire d’espaces inaffectés dans les structures d’index. La fragmentation résulte des opérations de mise à jour de données (INSERT, UPDATE et DELETE) affectant les index.

Full Text Search, voir plain text.


G

GAM (Global Allocation Map) : page technique particulière d’un fichier de données d’une base SQL Server permettant d’indiquer par un bit à 1 parmi les 63 904 extensions lesquelles sont vides de toutes données utilisables.

Géodésique, voir données géodésiques.

graphe : ensemble de points connexes (« puits ») reliés les uns aux autres par des chemins (« noeuds »), formant un réseau orienté ou non.

groupe de fichiers (file group) : emplacement logique de stockage des données des tables et index. Correspond aux notions de tablespace d’Oracle. Un groupe de fichiers peut contenir plusieurs fichiers. Une table ou un index peut être placé sur un groupe de fichiers particulier. En cas de partitionnement des données (tables et/ou index), il faut créer autant de groupes de fichiers qu’il y a de partitions.

granularité (de l’information) : ensemble plus ou moins grand de données. Ligne, ensemble de lignes, page, extensions, tables, base et serveur sont les différentes granularités au sein d’une instance SQL Server.

GUID (Globally Unique Identifier) : suite de 16 octets de valeurs arbitraire, générée automatiquement à partir de l’identifiant unique d’un périphérique (adresse MAC d’une carte réseau), de la date et de l’heure en cours et d’une séquence numérique, et dont la valeur s’avère en principe unique dans tout l’univers. En réalité, la collision de deux GUID, c’est-à-dire la possibilité d’obtenir un GUID identique en provenance de deux sources différentes, n’est pas impossible mais très peu probable, même si les adresses MAC ont été recyclées du fait de l’épuisement des valeurs.


H

hachage : mécanisme de conversion d’une donnée d’un type quelconque en une donnée condensée, (entier ou chaîne binaire), par le biais d’une fonction.

Hadoop : outil open source basé sur le langage Java destiné à faciliter la création d’applications distribuées et « échelonnables » (scalables), notamment par le biais d’un algorithme de type MapReduce pour un accès à des données stockées sur une grille de serveur et destiné principalement au Big Data.

haute disponibilité : ensemble de techniques permettant de continuer l’activité du serveur même en cas de défaillance sévère. SQL Server intègre des mécanismes natifs de haute disponibilité comme le log shipping, le clustering, le mirroring ou la technologie AlwaysOn (combinant clustering et mirroring). Certains de ces mécanismes peuvent pallier une perte de données totale d’un des serveurs, sans discontinuité de fonctionnement ni perte de données, et sans que les applications aient à se reconnecter.

hash, voir hachage.

hash join, voir jointure par hachage.

hash aggregate, voir agrégation par hachage.

HTTP (HyperText Transfer Protocol) : protocole de communication client-serveur développé pour le World Wide Web et basé sur des requêtes littérales envoyées sur des contenus web, dont l’adresse est formée d’une URL.

HTTP endpoint, voir point de terminaison.

HSM (Hardware Security Module) : dispositif physique (boîtier électronique) réputé inviolable, placé sur le réseau informatique et stockant les clés et algorithmes de cryptage.

hyperthreading : implémentation dans les processeurs Intel du Simultaneous Multithreading à deux voies qui consiste à simuler dans un seul cœur deux processeurs logiques, par une technique de partage des ressources, en alternance pour certaines, en redondance pour d’autres.


I

IAM(Index Allocation Map) : page technique particulière d’un fichier de données d’une base SQL Server permettant d’indiquer, pour un objet particulier stockant des données (table, index, partition…) dans les 4 Go suivant du fichier, quleels sont les extensions utilisées.

identifiant : terme pouvant désigner une colonne servant de clé dans une table, comme un nom d’objet (identifiant SQL).

identifiant SQL : nom d’un objet SQL (table, vue, colonne, contrainte…).

IDENTITY : propriété d’auto-incrémentation d’une colonne d’une table. Ne peut être affectée qu’à une seule colonne au plus par table. À défaut, commence à 1 avec un pas d’incrément de 1. Peut être paramétrée au niveau graine (valeur initiale) et pas. Peut être réinitialisée à tout moment.

impersonnalisation, voir dépersonnalisation.

In Memory : technologie récente destinée à supporter des tables figurant essentiellement en mémoire vive par opposition aux tables habituellement destinées à du stockage physique. Ceci inclut en sus, l’utilisation de procédures stockées compilées en code natif (C).

inclus (index) : se dit lorsque les composantes d’un index (clé plus éventuelle clause INCLUDE) sont incluses dans un autre index.

index : structure de stockage redondante, dotée d’une organisation particulière dont l’agencement permet d’accélérer certaines recherches. Les techniques en jeu dans l’indexation sont toutes basées sur la famille d’algorithme « diviser pour régner ».

indexation : recherche et mise en place des index (voir ce mot) les plus pertinents en vue de diminuer sensiblement les temps de réponse. L’indexation vise à réduire drastiquement le coût des recherches dans une base de données, dès lors que la volumétrie des données pèse sur les temps de réponse.

indexation textuelle : mécanisme d’indexation de littéraux permettant des recherches plain text.

instance : installation d’un serveur (SQL Server) logique. Un même serveur système (Windows) peut accueillir différentes instances (jusqu’à 50) dans différentes éditions/versions. Chaque instance peut avoir des réglages différents, mais chacune entre en concurrence pour les ressources physique du serveur (CPU, RAM, disque, réseau…).

intersection : opération relationnelle consistant à rechercher les tuples communs à deux relations. Se fait avec l’opérateur ensembliste INTERSECT dans le langage SQL.

intégrité : l’intégrité des données au sein d’une base procède par le respect des contraintes.

intégrité référentielle : mécanisme permettant d’assurer dans une table fille que les valeurs d’une clé étrangère soient toujours synchronisées avec celle de la table mère dite de référence. L’intégrité référentielle peut être assurée de manière déclarative (DRI par contrainte FOREGN KEY) ou fonctionnelle par le biais de déclencheurs.

IO (I/O, Input/Output), voir ES.

ISO (International Standardization Organization) : organisme international de normalisation, composé de représentants nationaux. L’ISO produit des normes internationales dans les domaines industriels et commerciaux. Le langage SQL est fortement normalisé. Une norme ne devient ISO, qu’après avoir été norme nationale (le langage SQL a été normalisé pour la première fois par l’ANSI en 1986).

isolation : mécanisme qui prévoit que les modifications de données effectuées au cours d’une transaction ne soient pas atteignables par d’autres utilisateurs. L’isolation est assurée par la pose de verrous plus ou moins forts ou étendus en fonction de force d’isolement demandée.

isolation snapshot : mode d’isolation des transactions agissant par verrouillage optimiste.


J

JDBC(Java DataBase Connectivity) : interface de programmation (API, en anglais) destinée à mettre en relation des bases de données (le plus souvent relationnelles) et des programmes informatiques de gestion (middleware) écrits avec le langage Java. JDBC reprend la spécification ODBC comme référence de son implémentation.

jointure : opération permettant d’associer plusieurs objets de la base par le biais d’un lien logique de données entre les différentes tables ou vues.

jointure par fusion : technique de jointure faisant appel à l’algorithme de tri fusion, c’est-à-dire par rapprochement des valeurs lors de la lecture descendante dans deux listes triées.

jointure par hachage : technique de jointure qui consiste à transformer les données à joindre en données « hachées » (calculées à l’aide d’une fonction de hachage) afin de travailler sur un plus petit ensemble de données mieux ventilé.

jointure par boucle imbriquée : technique de jointure qui consiste à utiliser une boucle externe itérant sur les lignes d’une table, encapsulant une boucle interne itérant sur les lignes de l’autre table.

journal de transaction : outil traçant l’ensemble des opérations de mise à jour des données destiné à la finalisation des transactions, soit par validation (COMMIT), soit par retour arrière (ROLLBACK). Pour ce faire, sont inscrites dans le journal les valeurs des données avant de procéder à la mise à jour. L’annulation entraînant la relecture du journal.

joker : caractère particulier servant à définir un élément de recherche générique, par exemple une lettre quelconque ou une chaîne de caractères de longueur quelconque. Essentiellement utilisé dans l’opérateur LIKE de SQL ou dans la recherche textuelle.


K

kanatype : forme d’écriture des idéogrammes japonais, déclinée en deux graphies : le katakana (à la graphie très anguleuse) et l’hiragana (à la graphie cursive). Le katakana étant plutôt destiné au titrage des documents tandis que l’hiragana est utilisé pour les textes « littéraires ».


L

lecture logique : opération de lecture d’une page de données en mémoire.

Lebesgue, voir courbe de Lebesgue.

lecture physique : opération de lecture d’une page de données sur le disque.

ligne : élément horizontal d’une table, constitué d’une énumération de données de différents types. Unité de stockage logique minimale d’une table.

ligne fantôme : dans les index, ligne ayant été supprimée logiquement, mais dont l’emplacement n’a pas été réutilisé, ce qui conduit à de la fragmentation. Dans les transactions, ligne indésirable apparaissant dans le cadre d’une opération concurrente d’insertion dans une table et nécessitant d’augmenter le niveau d’isolation pour l’interdire afin d’éviter des résultats faux.

LOB (Large OBject) : objet de grandes dimensions stocké dans la base de données. LOB est un terme générique pour désigner les CLOB (Character LOB, grand texte encodé en ASCII), les NCLOB (National Charcater LOB, grand texte encodé en UNICODE), ou encore BLOB (Binary LOB). Ces types de données génériques doivent être réalisés avec respectivement les types de données VARCHAR(MAX), NVARCHAR(MAX) et VARBINARY(MAX) dans SQL Server.

lot, voir batch.

LLD (Langage de définition de données), voir DDL.

LMD (Langage de manipulation de données), voir DML.

LOOKUP, voir recherche éparse.

LUN (Logical Unit Number) : identifiant d’une unité de stockage logique réalisée à partir de disques physiques originellement dans un système disque en SCSI. Aujourd’hui fréquemment employé pour désigner un espace de stockage vu comme un disque, taillé dans un SAN.


M

masquage : (aussi appelé obfuscation) technique consistant à interdire l’accès à certaines informations. Permet, dans SQL Server, de masquer la définition des vues ou le code des routines.

MCD, voir modèle conceptuel.

merge join, voir jointure par fusion.

mémoire virtuelle : extension de la mémoire vive physique représentée par un ou plusieurs fichiers disque sur lequel on effectue des opérations de déchargement ou de chargement au fur et à mesure de l’utilisation des données qui y sont stockées. La mémoire étant organisée en pages, le processus de montage et descente des pages de la RAM vers les disques est appelée pagination, et procède généralement pas échange (swap disque).

métadonnées : données permettant de décrire les données de la base, constituée par des tables dites « système » et accessibles depuis SQL Server 2005 uniquement par des vues représentant la vision logique (schéma SQL de nom INFORMATION_SCHEMA – norme SQL) ou physique (schéma SQL sys -vues spécifiques SQL Server).

mise à jour : toute opération conduisant à une écriture des données : INSERT, UPDATE, DELETE ou MERGE.

mirroring : technique de haute disponibilité consistant à reproduire en permanence, de façon synchrone ou asynchrone, une base de données sur un autre serveur distant ou sur plusieurs autres, par le biais de la couche HTTP.

modèle conceptuel : représentation sémantique d’une base de données à l’aide de structures de données et de règles de description basées sur des « idées » (concepts), donnant lieu à un schéma dit « conceptuel » découlant de l’analyse d’un système. L’acronyme MCD signifie « modèle conceptuel de données ».

modèle externe : représentation « visuelle » d’une base de données (vues, fonctions utilisateur, procédures…), destinée à faciliter la manipulation des données pour les applications externes. L’acronyme MED signifie « modèle externe de données ».

modèle logique : représentation mathématique d’une base de données (relations) découlant de l’application de l’algèbre relationnelle.

modèle physique : représentation physique d’une base de données (tables, vues, liens d’intégrité, déclencheurs, stockage, index…), prenant en compte les spécificités du SGBD. L’acronyme MPD signifie « modèle physique de données ».

modèle relationnel : nom commun donné à une représentation de base de données spécifique à un SGBDR. Voir modèle physique.

monadique : se dit d’une fonction ou d’un opérateur qui n’admet qu’un seul argument. Par exemple, la fonction SQL UPPERCASE, ou encore l’opérateur – (négation).

mot noir : mot vide de sens que l’on évite de considérer dans les requêtes de recherches plain text (par exemple, articles, pronoms, conjonctions de coordination…).

MTBF (Mean Time Between Failures) : moyenne de temps de bon fonctionnement entre mise en route initiale et première panne ou entre deux pannes d’un système.

MPD, voir modèle physique.


N

NAS (Network Attached Storage) : boîtier de stockage en réseau, généralement partagé entre différents ordinateurs. Ne convient généralement pas pour le stockage des bases de données de SQL Server sauf attachement particulier (mais performances moins bonnes).

NCLOB, voir LOB.

niladique : se dit d’une fonction qui n’admet aucun argument (nombre d’arguments nuls). Par exemple, la fonction SQL CURRENT_DATE.

nonclustered : se dit d’un index qui n’est pas clustered. Voir ce dernier mot.

n-uplet, voir tuple.

Nested Loop Join, voir jointure par boucle imbriquées.

nested triggers : déclencheurs imbriqués.

NULL : marqueur d’absence de valeur. Dans SQL Server, ce marqueur est représenté par un bit dans le « slot » représentant la ligne de la table ou de l’index.

NOT NULL : contrainte de colonne indiquant que la colonne ne peut rester vide (valeur obligatoire).

NUMA(Non Uniform Memory Access) : accès mémoire non uniforme – système d’adressage multiprocesseur dans lequel les zones mémoire sont séparées et accessible par certaines processeurs en fonction des différents bus alloués. Le système NUMA a été conçu pour pallier les limites de l’architecture SMP dans laquelle tout l’espace mémoire est accessible par tous les processeurs, ce qui induit de la contention du fait de la concurrence d’accès.


O

occurrence : une ligne particulière valuée dans une table.

ODBC (Open DataBase Connectivity) : interface de programmation (API, en anglais) destinée à mettre en relation des bases de données (le plus souvent relationnelles) et des programmes d’informatique de gestion (middleware). Initié par un comité indépendant (le SQL Access Group), ODBC est devenu populaire grâce à Windows de Microsoft. Il est basé sur l’API CLI de SQL.

octroi (de privilège) : autorisation donnée à un utilisateur de lancer certaines commandes SQL sur certains objets.

offset (décalage) : par extension, désigne une adresse accessible de manière relative.

OLAP (On-Line Analytical Processing) : catégorie de logiciels permettant une analyse d’informations multidimensionnelles stockées dans une base de données dont la structure particulière (décisionnelle) est prévue à cet effet.

OLTP (On-Line Transaction Processing) : type de traitement informatique dans lequel une base de données effectue des transactions (écriture par ajout, modification ou suppression) à la demande de l’utilisateur et par opposition au mode batch.

optimiseur : organe d’un SGBD relationnel destiné à élaborer le plan d’exécution d’une requête le plus adéquat (donc le moins coûteux).

ordre SQL (ou commande SQL) : construction littérale dont la syntaxe répond aux spécificités du SQL et qui intime au moteur de la base de données d’effectuer tel ou tel travail (SELECT, UPDATE, CREATE, ALTER, GRANT, etc.).

OS (Operating System) : système d’exploitation permettant à un ou plusieurs programmes d’utiliser au mieux des périphériques de différentes natures et d’en partager les ressources entre les programmes. Bien qu’installé sur l’OS Windows, SQL Server possède son propre OS de nom SOS pour SQL Server Operating System).

overclocking : surcadencement. Manipulation destinée à faire fonctionner un processeur à une vitesse supérieure à sa vitesse nominale. Ceci diminuant en général le MTBF.


P

page (de données) : unité de base de structuration physique des données (table, index) d’une base de données. Les pages de données sont identiques sur le disque (physique) et en mémoire (logique) et constituent la plus petite unité de lecture/écriture du SGBDR.

partitionnement : technique consistant à scinder les données d’objets volumineux (tables ou index) afin de répartir la charge et diminuer le coût d’accès.

parseur : module d’analyse syntaxique d’une commande SQL permettant d’une part d’en vérifier la syntaxe et d’autre part de la traduire en algèbre relationnelle.

PCA (Plan de continuité d’activité) : ensemble des moyens à mettre en oeuvre afin de pallier une panne en diminuant le plus possible, ou en éradiquant les temps d’indisponibilité (haute disponibilité). La plupart du temps assurée par des outils hardware (redondance) et logiciels (réplication). SQL Server dispose de nombreux moyens internes pour assurer cette tâche (log shipping, clustering, mirroring, AlwaysOn, réplication de données…). Voir aussi PRA.

plain text, voir recherches plain text.

persistance : mécanismes assurant qu’un programme puisse se terminer sans que ses données ou son état d’exécution ne soient perdus. Dans un SGBDR, fonction assurée par la journalisation des transactions.

PFS (Page Free Space) : page technique particulière d’un fichier de données d’une base SQL Server permettant d’indiquer la quantité d’espace résiduel parmi les 8 088 pages qui suivent.

PITR (Point In Time Recovery) : restauration avec arrêt à un point dans le temps. Technique consistant à arrêter une restauration effectuée à partir d’une sauvegarde transactionnelle à une date/heure précise afin de récupérer une base dont l’état des données est à un instant du passé.

plan d’exécution , voir plan de requête

plan de requête : ensemble des opérations unitaires (lecture des données, opérations d’algèbre relationnelle telles que jointures, restriction, union… calcul divers tels que agrégation, tri…) que le SGBDR a prévu d’effectuer en réponse à une requête.

plateau (disque) : composant d’un disque magnétique destiné au support de l’information et constitué d’un disque métallique en rotation à vitesse constante dont la surface est une couche ferromagnétique destinée à recevoir l’information par polarisation magnétique. La plupart des disques possèdent plusieurs plateaux (généralement 3).

point de terminaison : point d’accès permettant l’utilisation du protocole HTTP pour communiquer avec le serveur SQL.

position ordinale : rang d’un élément au sein d’une série, d’une collection. L’emplacement par défaut des colonnes d’une table SQL est défini par leur position ordinale dans le dictionnaire des données (colonne ORDINAL_POSITION de la vue INFORMATION_SCHEMA.COLUMNS).

PRA (Plan de reprise d’activité) : ensemble des moyens à mettre en oeuvre afin de pallier un sinistre majeur en diminuant le plus possible les temps d’indisponibilité (haute disponibilité). La plupart du temps assurée par des outils hardware (redondance) et logiciels (réplication) répartis sur différents sites d’exploitation. SQL Server dispose de nombreux moyens internes pour assurer cette tâche (log shipping, clustering, mirroring, AlwaysOn, réplication de données…). Voir aussi PRA.

prédicat : expression booléenne dont l’évaluation donne Vrai ou Faux. En SQL, du fait de la logique trois états, un prédicat peut prendre trois valeurs : TRUE, FALSE ou UNKNOWN.

PRIMARY KEY : contrainte de clé primaire applicable à une ligne de table.

privilège : possibilité accordée à un utilisateur de lancer telle ou telle commande sur tel ou tel objet.

procédure stockée : routine Transact SQL ou SQL CLR stockée au sein de la base dans une table système, composée de code que l’on peut lancer depuis une application cliente. Une procédure peut lancer tout type de requêtes (DDL, DML, DCL, TCL…), gérer des transactions et exécuter du SQL dynamique. Elle admet des paramètres « scalaires » en entrées (y compris variable table, XML, spatial…) et peut renvoyer des valeurs scalaires et des jeux de données.

processeur : composant électronique central de tout ordinateur, qui exécute les instructions machine des programmes informatiques.

processus : code informatique devant effectuer un traitement exécuté sur un processeur.

profiler (SQL) : outil de trace des activités opérationnelles, notamment transactionnelles, de l’instance dont la vocation est de diagnostiquer par le biais de mesure, les problèmes potentiels, par exemple de performances des requêtes et routines.

projection : opération de l’algèbre relationnelle qui consiste à ne prendre que certains attributs d’une relation en précisant leur nom. Dans le langage SQL la projection se fait dans la clause SELECT de l’ordre SELECT.

propriétaire : par rapport aux objets relationnels, utilisateur SQL particulier ayant créé l’objet considéré ou l’ayant dernièrement modifié.

Proxy : objet non relationnel spécifiquement utilisé par l’agent SQL pour définir un contexte de sécurité dans lequel une étape de travail peut être exécutée lorsqu’elle doit utiliser des ressources externes à l’instance SQL

pseudo-table : table volatile non persistante n’ayant pas d’existence propre en dehors de certains contextes. Les pseudo-tables inserted et deleted ne sont disponible que dans les déclencheurs ou la, clause OUTPUT d’un ordre SQL de mise à jour. Elles empruntent leur structure à la table cible. On peut les considérer comme des vues « volatiles ».


R

RAID (Redundant Array of Independant Disk) : techniques permettant de répartir des données sur plusieurs disques durs afin d’améliorer soit les performances, soit la sécurité ou la tolérance aux pannes de l’ensemble du stockage.

RAM (Random Access Memory) : mémoire à accès aléatoire. C’est la mémoire vive de l’ordinateur, qui sert de cache à SQL Server pour les données, les plans de requête et de nombreuses métadonnées.

RBS (Remote BLOB Storage) : outil permettant de stocker les LOB par le biais de dispositifs de stockages externes aux serveurs SQL

recherche (ou SEEK en anglais) : technique qui consiste à accéder à une donnée par dichotomie dans un index afin d’accélérer la quête de ladite donnée.

recherche éparse (ou LOOKUP en anglais) : technique qui consiste à accéder à diverses données éparses par lancement en parallèle d’autant d’opérations de dichotomie dans l’index afin d’accélérer la quête desdites données.

recherches plain text : possibilité de recherches de mots ou combinaisons de différents mots à l’aide d’opérateurs particuliers opérants à travers des données littérales.

RECOVERY, voir récupération.

récupération : phase pendant laquelle la base ayant redémarrée, rejoue les dernières transactions dont les données n’ont pas fait l’objet d’une écriture physique sur disque.

récursivité : se dit d’un processus qui fait appel à une nouvelle instance de lui-même (réentrant). La notion de récursivité a été introduite par le mathématicien américain Stephen Kleene. En informatique, une fonction qui contient un appel à elle-même est dite récursive. Il est nécessaire qu’elle contienne une condition d’arrêt, sous peine de boucler indéfiniment.

Recursive Triggers : déclencheurs récursifs.

redondance : pour les données, duplication inutile, contre-performante et dangereuse des informations. Pour le hardware, moyen utile destiné à améliorer la fiabilité des systèmes par doublement des équipements afin de prévenir la défaillance de l’un d’entre eux.

relation : objet mathématique porteur de données (voir algèbre relationnelle) contenant des attributs et affecté d’une clé. Toutes les occurrences d’une relation doivent être valuées (pas de “NULL“) et il n’y a pas de doublons (du fait de l’obligation de clé). Une table peut être relationnelle ou non. Elle sera relationnelle à deux conditions : qu’elle possède une clef primaire et que toutes ses colonnes soient NOT NULL.

relationnel[le[s]] : qui se rapporte aux relations. Base de données relationnelle : base de données structurée, contenant des relations (voir ce mot).

requête : demande formulée en vue d’obtenir une faveur, une mesure, un résultat. Dans les bases de données, ordre lancé au serveur afin d’exécuter une tâche ou d’obtenir un résultat.

révocation (de privilège) : retrait d’un privilège précédemment octroyé.

restauration : mécanisme permettant de reconstituer une base de données à partir d’une sauvegarde préalablement effectuée de ladite base. La commande restauration de SQL Server est RESTORE.

restriction : opération de l’algèbre relationnelle qui consiste à ne prendre que certains tuples d’une relation en fonction d’un critère de filtrage. Dans le langage SQL, la restriction se fait principalement dans la clause WHERE.

rôle : collection de privilèges que l’on peut attribuer à un utilisateur.

ROLLBACK : commande d’annulation de transaction.

routine : désigne tout type de programme Transact SQL qu’il soit UDF (fonction utilisateur), procédure, déclencheur ou encore « batch ».


S

SAN (Storage Area Network) : réseau de stockage permettant de mutualiser des ressources disques. Contrairement aux NAS (voir ce mot), les SAN sont directement attachés aux serveurs et ne passent ni par les hubs ni par les switches d’un réseau IP, mais utilise des protocoles spécifiques tel Fibre Channel (norme ANSI X3T11) permettant une connexion haut débit (de l’ordre du gigabit par seconde). SQL Server ne fonctionne de façon optimale que lorsque le serveur utilise un SAN dédié.

Sargable, voir cherchable.

sauvegarde : mécanisme produisant un ensemble de données permettant de reconstitué l’intégralité de la base à un instant donné. SQL Server permet la sauvegarde à chaud de toute base à l’aide de la commande BACKUP et dans différentes modes (complète, différentielle ou transactionnelle) de l’intégralité de la base, d’un fichier ou encore d’un groupe de fichier.

SCAN, voir balayage.

schéma de la base : structure et articulation de l’ensemble des objets relationnels de la base (tables, vues, procédures, contraintes, déclencheurs…). Une opération de modification de schéma impose de lancer une commande du DDL SQL.

schéma SQL : conteneur situé au niveau de la base et destiné à stocker les différents objets relationnels de la base de données. L’idée étant d’organiser différents espaces de stockages logiques afin de ventiler ces objets, par exemples dans des « catégories » fonctionnelles. Dans SQL Server, le schéma par défaut est dbo. Il en existe d’autres comme INFORMATION_SCHEMA et sys.

SEEK, voir recherche.

sécurisable : objet de la base de données relationnelle pouvant être sécurisé (table, vue, procédure…).

sélectivité : indice permettant de déterminer approximativement le nombre de lignes résultant d’une opération de recherche portant sur une valeur précise. Calculée par division du nombre de valeurs sur le nombre de lignes.

séquence : objet de la base, indépendant de toute table et destiné à fournir une numérotation monotone (auto-incrémentation).

serveur : définit un système qui peut indifféremment être une machine physique ou virtuelle (PS, machine Windows) ou bien logicielle (serveur SQL, Web…).

service pack (SP) : ensemble de mises à jour, corrections, améliorations de logiciels livré sous forme d’un package installable. Microsoft fournit régulièrement des « services packs » pour Windows comme pour SQL Server qu’il est nécessaire d’installer la plus rapidement possible. (Voir aussi CU – Cumulative Update)

session : laps de temps pendant lequel un utilisateur ayant réussi à s’authentifier navigue dans le serveur SQL et dans les bases relationnelles pour y effectuer différentes opérations.

SGAM (Shared Global Allocation Map) : page technique particulière d’un fichier de données d’une base SQL Server permettant d’indiquer par un bit à 1 parmi les 63 904 extensions lesquelles sont mixtes et ont au moins une page vides de toutes données utilisable.

SGBD : logiciel permettant à différents utilisateurs de visualiser, créer, maintenir ou supprimer de l’information et des structures de données dans une base de données. Le SGBD peut être relationnel; dans ce cas, on lui donne l’acronyme SGBDR.

SIG (Système d’information géographique, en anglais GIS pour Geographical Information System) : système de gestion de données planaires et spatiales permettant d’élaborer des objets géométriques et géographiques.

signature : donnée ajoutée à un élément informatique (par exemple programme) et vérifiable par le biais d’un certificat, afin d’obtenir une assurance sur l’identité de la source de l’objet.

slammer : célèbre « vers » ayant contaminé de nombreux serveurs SQL 2000 suite à une faille de sécurité qui avait été détectée et corrigée six mois plus tôt, mais dont les administrateurs des serveurs SQL n’avaient pas pris la peine mettre en oeuvre le correctif.

snapshot (voir également database snapshot, isolation snapshot) : cliché, c’est-à-dire captation de données à un instant précis pour copie de travail.

snapshot isolation, voir Isolation snapshot.

SQL (Structured Query Language) : littéralement langage structuré de requêtes. Langage informatique à base d’ordres permettant de créer des structures de données relationnelles, d’y stocker l’information et de la maintenir, d’extraire les données et de gérer des utilisateurs et leurs autorisations. Le langage SQL n’est pas le seul langage opérant sur les bases de données. On peut noter le langage QBE de Zloof ou QUEL à l’origine dans Ingres.

SRID (Spatial Reference IDentifier) : identificateurs de référence spatiale. Code correspondant à un système de référence spatial (paramètres) basé sur un ellipsoïde spécifique destinée à fournir une approximation du mappage de la terre sur une zone considérée.

SSAS (SQL Server Analysis Services) : solution Microsoft pour BI incluant un moteur décisionnel pour la création et l’analyse des cubes, y compris avec le data mining et fournit avec les versions Developper, Standard et BI.

SSD (Solid State Drive) : disque électronique dont le support de stockage est constitué de mémoire flash.

SSIS (SQL Server Integration Services) : ETL de Microsoft fournit avec les versions Developper, Standard et BI.

SSMS (SQL Server Management Sudio) : outil client pour la gestion et le développement des applications utilisant une instance SQL Server. Existe en deux versions : Express (allégée) et professionnelle (complète) venant avec les éditions Developper, Standard, BI et Enterprise.

SSRS (SQL Server Reporting Services) : outil de reporting de Microsoft fournit avec les versions Developper, Standard, BI et Express with Advanced Services.

slot : emplacement physique d’une ligne (par réservation d’espace) dans une page de données relatif à une table ou un index.

socket : emplacement de CPU physique.

spatial : ensemble des techniques mises en œuvre pour traiter les données du SIG (voir ce mot), notamment cartographie géodésique.

split (de page) : opération consistant à couper une page d’index en deux lorsqu’elle est pleine, afin d’y ajouter une ligne. Conduit à de la fragmentation.

SMTP (Simple Mail Transfer Protocol) : protocole standardisé de communication utilisé pour le transfert de courrier électronique vers les serveurs de messagerie électronique.

statistiques (sous-jacentes aux index et à certaines colonnes de table) : métadonnées composées d’un échantillon des valeurs de l’index ou de la colonne obtenu par une méthode statistique (sondage ou analyse complète) permettant d’évaluer la distribution et donc la sélectivité d’une recherche dans l’index ou hors index (table).

storage, voir groupe de fichiers.

synchrone : se dit d’un traitement ou d’un mécanisme déclenché systématiquement par un autre de manière simultané ou séquentielle. Les déclencheurs SQL sont activés de manière synchrone aux mises à jour des tables ou des vues. La mise à jour des index d’une base est synchrone avec les modifications de données, sauf pour les index textuel qui peuvent être mis à jour au fil de l’eau ou par batch.

synonymisation : technique consistant à indiquer les synonymes d’un mot.


T

table : structure de données basique contenant une collection de données organisée sous forme de colonnes et formant des lignes.

TDE (Transparent Data Encryption) : technique consistant à crypter le stockage (au niveau des fichiers physiques) et non les données dans les tables.

thesaurus : document d’un index textuel contenant une liste définie de termes et leurs équivalents pour activer la recherche par synonyme ou équivalences.

thêta jointure : opération de jointure des tables qui n’est pas basée sur un critère d’égalité entre colonnes.

thread : littéralement fil d’exécution. Processus allégé ayant sa propre pile d’appel, mais partageant la mémoire. Dans SQL Server, les requêtes pouvant être parallélisées par le lancement de multiples threads, cela permet d’obtenir plus rapidement une réponse à une requête.

TPC (Transaction processing Performance Council) : organisme indépendant des éditeurs mettant en place des benchmarks destinés au SGBDR et recensant les performances de solutions globales.

transaction : ensemble d’actions qui modifient les données d’une base de données, d’un état cohérent à un nouvel état cohérent.

transaction explicite : transaction dont le démarrage (BEGIN TRANSACTION) et la finalisation (par COMMIT ou ROLLBACK) ont été initiés par l’utilisateur ou le code applicatif.

transaction implicite : transaction dont les frontières (démarrage et finalisation) ont été initiées automatiquement par le moteur relationnel.

transact SQL : langage spécifique à Microsoft SQL Server pour la programmation des routines (UDF, procédures stockées, routines ou batch…). À l’origine inventé par Sybase.

trigger, voir déclencheur.

tuple ou n-uplet : occurrences des attributs d’une entité ou d’une association dans le cadre d’un modèle conceptuel. Équivalent à la ligne d’une table ou d’une vue au niveau du modèle physique ou externe (ligne comprenant ou non des valeurs pour chaque colonne).

turbo boost : technologie présente sur les CPU Intel, permettant de désactiver à la volée certains cœurs tout en augmentant la fréquence des autres.


U

UDF (User Defined Function) : fonction utilisateur développée par écriture d’un programme en langage Transact SQL et disponible dans la base pour être utilisée au sein de requêtes comme de routines SQL (UDF, procédure ou déclencheur).

UNIQUE : contrainte (dite d’unicité) représentant une clé alternative. unicité : données vérifiant une contrainte UNIQUE.

unicode : standard informatique développé par le Consortium Unicode, qui vise à donner à tout caractère de n’importe quel système d’écriture de langue (alphabets, idéogrammes, etc.) un identifiant numérique unique, et ce quels que soient la plate-forme informatique ou le logiciel utilisé. Le codage Unicode est basé sur la norme ISO/CEI 10646 et représente un caractère sur 2 octets.

union : opération relationnelle consistant à concaténer les tuples de deux tables relations différentes. Se fait avec l’opérateur ensembliste UNION dans le langage SQL.

unité lexicale : élément de contenance de termes littéraux : mot, phrase, paragraphe, chapitre…

URL (Uniform Resource Locator) : chaîne de caractères utilisée pour accéder à des ressources web (serveur, pages…).

UUID (Universal Unique Identifier), voir GUID


V

verrou : mécanisme destiné à protéger certains modes d’accès à une ressource par d’autres processus que celui qui l’a posé.

verrou mortel (interblocage, étreinte fatale) : problème rencontré lorsque différents processus transactionnels ont posé des verrous sur des objets distincts, et que chacun de ces processus tente d’acquérir un nouveau verrou sur un objet que l’autre a déjà verrouillé. La seule méthode de résolution connue à ce jour consiste à annuler la transaction.

verrou optimiste : technique consistant à vérifier en fin de traitement que la modification repose bien toujours sur le même jeu de données, c’est-à-dire n’ayant subi aucune modification. Pour ce faire, il est nécessaire d’obtenir une version d’entrée des informations et de voir en sortie si elle est toujours d’actualité. Dans le cas contraire, la transaction doit être abandonnée.

verrou pessimiste : technique consistant à verrouiller de manière préventive, c’est-à-dire à placer les verrous avant de commencer le traitement et à les libérer après finalisation de la tâche.

vue : table virtuelle car elle ne nécessite aucune allocation en mémoire pour contenir les données (sauf vue indexée). Seule sa structure est stockée dans le dictionnaire de données. Une vue est créée à l’aide d’une instruction SELECT appelée « requête de définition ». Cette requête interroge une ou plusieurs tables ou vues. Une vue se « recharge » chaque fois qu’elle est interrogée.

vue indexée : se dit d’une vue contenant des données synchrones provenant des tables qui définissent la vue.


X

XML (eXtensible Markup Language) : métalangage de balisage « extensible » destiné à décrire des structures de données, spécialement utilisé sur le Web et dans l’échange de données informatisé. XML est un standard du World Wide Web Consortium (W3C) et sert de base pour créer des langages balisés spécialisés. Les bases de données relationnelles utilisent couramment XML Schéma, un dialecte XML spécialisé dans la gestion des données des bases relationnelles.

XML Schema : sous-ensemble du langage XML déterminant des spécifications de balises destinées à formaliser le contenu de documents XML. XML Schema est donc un métalangage de description de, documents XML. Il est devenu un standard, après avoir été initié par Microsoft.

XPath : langage, non XML, destiné à localiser un fragment de document XML. Il est souvent utilisé conjointement avec XQuery.

XQuery : langage de requête informatique permettant la manipulation de documents XML : extraction, calculs ou encore construction de nouveaux documents ou fragments XML.

XSLT (Extensible Stylesheet Language Transformations) : langage de transformation de document XML permettant de générer d’après un document XML, un nouveau document dans un autre format, notamment pour la génération de pages web.


Z

Z (courbe en Z), voir courbe de Lebesgue.