Aller au contenu

Algorithmes et programmes⚓︎

Sources et crédits pour ce cours

Pour préparer ce cours, j'ai utilisé :

Recherche dans une collection de données⚓︎

Point de cours 4

Une table de données structurées peut faire l'objet de différentes opérations :

  • rechercher une information prĂ©cise dans la collection
  • trier la collection selon un ou plusieurs descripteurs
  • filtrer la collection selon un ou plusieurs tests sur les valeurs des descripteurs
  • effectuer des calculs
  • mettre en forme les informations produites pour une visualisation par les utilisateurs.

Une base de données est une collection de plusieurs tables de données structurées qu'on peut rapprocher sur les valeurs de descripteurs communs pour générer de nouvelles informations.

Les Systèmes de Gestion de Bases de Données (SGBD) sont très utilisés pour gérer les données structurées : abonnés d'une plateforme, stocks et commandes, systèmes de réservation ...

Les recherches dans une base de données sont effectuées à l'aide de requêtes.

alt

Modèle relationnel

Dans le modèle relationnel les tables sont appelées relations et les descripteurs attributs :

  • une clef primaire est un attribut ou un ensemble d'attributs identifiant de façon unique un enregistrement (\(=\) une ligne) de la relation (\(=\) table)
  • une clef Ă©trangère est un attribut ou un ensemble d'attributs qui fait rĂ©fĂ©rence Ă  une clef primaire d'une autre relation et permet de faire la jointure entre deux relations pour gĂ©nĂ©rer de nouvelles informations.

Le langage SQL permet d'effectuer des requêtes sur une base de données relationnelles.

alt

Exemple de la gestion d'une base de données musicale

Pour gérer une base de données de morceaux de musique, il est préférable d'utiliser plusieurs tables plutôt qu'une seule. Séparer les données des morceaux de celles des interprètes permet de ne pas ressaisir le nom de l'interprète pour chaque morceau. En éliminant les redondances, on réduit les risques d'erreurs de saisie ou de modification.

alt

Certains fichiers contiennent des données non structurée, par exemple des images, des documents de traitement de texte ou PDF. L'indexation permet de leur associer des métadonnées (titre, date) ou des mots clefs qui sont ensuite utilisés pour la recherche dans une collection de documents. Cette indexation peut être manuelle ou automatisée à l'aide de programmes de reconnaissance automatique de caractère (OCR) ou qui vont lire les métadonnées déjà présentes (dans les images par exemple ...)

Les logiciels de Gestion Electronique de Données (GED), comme Microsoft Sharepoint permettent de gérer des collections de données non structurées (factures dans une entreprise, archives ...)

Exercice 1

Objectif : Connaître les principales méthodes de recherche dans une collection de données

Pour chaque question de ce QCM, plusieurs bonnes réponses sont possibles.

Questions

  1. Que gère un Système de Gestion de Bases de Données ?

    • Une collection de plusieurs tables de donnĂ©es structurĂ©es

    • Une collection de documents non structurĂ©s

    • Un fichier CSV

    • Un dossier avec des sous-dossiers par catĂ©gories de fichiers

  2. Comment les recherches dans une base de données sont-elles effectuées ?

    • Par tri manuel des tables

    • Ă€ l'aide de requĂŞtes

    • Par classement alphabĂ©tique

    • Par reconnaissance automatique de caractères (OCR)

  3. Quelle est la fonction principale des logiciels de Gestion Électronique de Données (GED) ?

    • GĂ©rer des tables de donnĂ©es structurĂ©es

    • GĂ©rer des collections de donnĂ©es non structurĂ©es

    • Trier les commandes et les stocks

    • Effectuer des calculs sur des donnĂ©es structurĂ©es

  4. Quel est le nom du langage de requête des Systèmes de Gestion de Bases de Données ?

    • CSV

    • OCR

    • XLS

    • SQL

Utiliser un logiciel de tableur pour rechercher dans une table⚓︎

Exercice 2

Objectif : Réaliser des opérations de recherche, filtre, tri ou calcul sur une ou plusieurs tables, à l'aide d'un tableur

Question 1

Regardez la vidéo précédente pour découvrir la façon dont un logiciel de tableur permet de gérer une table de données structurées.

Question 2

  1. Se connecter Ă  son compte sur parcours-algorea.org.
  2. Lire attentivement la page À consulter absolument avant de commencer ! : télécharger le fichier musiques.csv et ouvir le fichier avec le tableur LibreOffice en suivant les instructions.
  3. Traiter les six exercices Musique 1 à Musique 6 dont les liens d'accès se trouvent sur la page Utiliser un tableur. Chaque exercice est une série de petits défis portant sur des recherches et tris à effectuer sur le fichier musiques.csv avec le tableur LibreOffice.

Utiliser un langage de programmation pour interroger une base de données⚓︎

Exercice 3

Question 1

Objectif : Réaliser des opérations de recherche, filtre, tri ou calcul sur une ou plusieurs tables, à l'aide d'un langage de programmation

  1. Se connecter Ă  son compte sur parcours-algorea.org.
  2. Traiter l'exercice Les régions et leurs capitales dans le module Programmer des requêtes - Python
  3. Traiter l'exercice Les grandes villes dans le module Programmer des requĂŞtes - Python
  4. Traiter l'exercice Les fleuves dans le module Programmer des requĂŞtes - Python
  5. Traiter l'exercice La RĂ©gion Grand-Est dans le module Programmer des requĂŞtes - Python
  6. Traiter l'exercice Les villes du Pas-de-Calais dans le module Programmer des requĂŞtes - Python
  7. Traiter l'exercice Les habitants des Hauts-de-Seine dans le module Programmer des requĂŞtes - Python
  8. Traiter l'exercice Les départements de Nouvelle-Aquitaine dans le module Programmer des requêtes - Python

Question 2 (en route vers la spécialité NSI)

Objectif : À partir de deux tables de données ayant en commun un descripteur, réaliser un croisement des données permettant d'obtenir une nouvelle information.

  1. Se connecter Ă  son compte sur parcours-algorea.org.
  2. Traiter les deux exercices Les villes de Bretagne et Les capitales de région de la page Programmer des requêtes avancées - Python

Exercice 4

Source : TP de la bibliothèque Capytale, réalisé par une équipe de formation de l'académie de Rennes

Pour traiter des données, ce TP utilise la bibliothèque Python Pandas. Une bibliothèque Python permet de rajouter des fonctionnalités par rapport au langage de base. La bibliothèque Pandas est très utilisée pour tout ce qui touche au traitement des données.