Heroku - 8 Heroku postgre partie 1

Bienvenue dans ce cours d'introduction à Heroku. Aujourd'hui, nous explorons Heroku Postgres, un add-on de base de données relationnelle. La spécificité d'une base relationnelle : les données peuvent être reliées entre elles, et la manipulation de l'une affecte les données associées. C'est ce qui différencie Postgres d'une base comme MongoDB, où il n'y a pas de relations. Postgres est connu pour sa haute évolutivité et de bonnes performances aussi bien sur de petits tableaux que sur des tableaux contenant des millions d'enregistrements. Cet add-on est maintenu directement par Heroku.

Installation et exploration de Heroku Postgres

Pour installer Postgres, allez dans l'application, section Resources, recherchez Heroku Postgres et ajoutez-le avec la version Hobby Dev gratuite. Une fois installé, allez voir les variables de configuration : Heroku a créé une variable DATABASE_URL qui contient les informations d'identification permettant au code de se connecter à la base. Tournons-nous maintenant vers le dashboard Postgres :

  • Overview : nombreuses informations sur la base — plan utilisé (Hobby Dev), version Postgres, date de création, fenêtre de maintenance, rollback (en cas d'erreur, revenir à un point dans le passé), nombre de connexions actuelles et maximum simultané.
  • Durability : protection de la base. Possibilité de faire des backups manuels, et Heroku effectue des copies en continu (continuous protection). Ces backups peuvent être restaurés dans Postgres.
  • Settings : récupération des credentials (utile pour accéder à la base depuis un outil externe), réinitialisation ou destruction de la base de données.
  • Dataclips : création de requêtes en lecture seule. Vous ne pouvez ni insérer, ni modifier, ni supprimer ici. Donnez un titre (ex. test), choisissez la base à interroger si vous avez plusieurs Postgres sur votre compte, puis sauvegardez et écrivez votre requête (ex. SELECT...). Pour l'instant, la base étant vide, ce n'est pas encore utile.

L'une des limitations à connaître : vous ne pouvez pas manipuler directement la base depuis Heroku. Il faut un outil externe pour accéder à Heroku Postgres et y effectuer les opérations CRUD. C'est exactement ce que nous ferons dans la prochaine vidéo en installant Postgres en local sur notre machine. À bientôt !

En résumé

Cette première partie du cours sur Heroku PostgreSQL introduit PostgreSQL, une base de données relationnelle hautement scalable proposée comme add-on natif Heroku, adaptée aux projets de toute taille. Le cours couvre l'installation et configuration de PostgreSQL dans Heroku, explique la variable DATABASE_URL générée automatiquement contenant les identifiants de connexion, et présente l'interface Heroku de gestion incluant l'aperçu des paramètres, les options de sauvegarde et de durabilité, ainsi que l'accès via pgAdmin.

Points clés

  • PostgreSQL est une base de données relationnelle haute performance proposée comme add-on Heroku, scalable de petits projets aux applications d'entreprise avec millions d'enregistrements
  • La variable DATABASE_URL est créée automatiquement lors de l'installation et contient les identifiants nécessaires pour accéder à la base de données à partir du code applicatif
  • L'interface Heroku Overview affiche les informations critiques : version PostgreSQL, date de création, rôles utilisés, limites et utilisation actuelle des connexions simultanées
  • La section Durabilité propose des backups manuels accessibles et une protection continue automatique avec sauvegarde régulière de la base de données
  • Heroku ne permet pas la manipulation directe de la base de données ; un outil externe comme pgAdmin est nécessaire pour insérer, modifier ou supprimer des données
  • PostgreSQL se différencie des bases NoSQL (MongoDB) par sa gestion des relations et dépendances entre les données, offrant un management relationnel au sein de la base

Questions fréquentes

Pourquoi PostgreSQL est-il recommandé sur Heroku plutôt que MongoDB ?

PostgreSQL est appelé le couteau suisse des bases de données car il est hautement évolutif et performant, aussi bien pour les petits projets que les applications d'entreprise. Contrairement à MongoDB qui n'a aucune relation entre les données, PostgreSQL gère les relations et dépendances entre les données, différenciant sa gestion relationnelle.

À quoi sert la variable DATABASE_URL créée automatiquement par Heroku ?

La variable DATABASE_URL contient les informations d'identification et identifiants nécessaires pour accéder à la base de données PostgreSQL. Elle est utilisée dans le code applicatif pour se connecter et interagir avec la base de données.

Comment accéder et manipuler les données dans PostgreSQL sur Heroku ?

Heroku ne permet pas la manipulation directe de la base de données depuis l'interface. Il est nécessaire d'utiliser un outil externe comme pgAdmin pour insérer, mettre à jour ou supprimer les données de la base. L'interface Heroku permet seulement de visualiser les informations et configurations.