R07. Base de données - PastoriLucas/Dev.Web GitHub Wiki

PostgreSQL

Premières impressions

Dans un premier temps, nous avons directement pensé à PostgreSQL en tant que technologie liée à la base de données car nous avions déjà de l'expérience avec cette technologie. En effet, nous avions déjà eu affaire à une base de données lors de la conception de notre projet en Java au premier quadrimestre, et à ce moment là nous avions choisi PostgreSQL, ce qui nous a poussé a reprendre celui-ci dans le cadre de ce projet. Nous avons donc fait quelques recherches pour savoir si ça correspondait bien avec un projet web en Node.js, souvent assimilé à MongoDb, au sein du 'MEAN stack'. Ci-dessous sont répertoriés les avantages et inconvénients de l'utilisation de PostgreSQL que nous avons trouvé après nos recherches.

Avantages

  • La documentation de PostgreSQL très claire et la communauté est très présente. Il est donc très facile de trouver des informations concernant l'installation, le développement ou encore le debugging pour cette base de données.
  • PostgreSQL facilite aussi la migration de base données ou encore de créer / récupérer des backups sur celui-ci que sur ses rivaux.
  • Contrairement à MySQL par exemple, PostgreSQL est totalement Open Source. En étant Open Source, cela permet de ne pas dépendre d'une entreprise en particulier, et d'évoluer parfaitement en fonction des demandes et des envies des développeurs. Il y a aussi une certaine fiabilité dans le sens où du jour au lendemain, aucune entreprise possédant PostgreSQL ne peut rendre celui-ci payant ou du moins le rendre en accès réduit, ce qui impliquerait que nous perdrions tout notre secteur de base de données dans notre site.
  • Énormément de frameworks et de librairies supportent PostgreSQL, au point où il est très difficile d'en citer un seul qui ne le supporte pas. Angular et Node.js faisant partie de tout ce groupe supportant PostgreSQL, il ne va donc pas être trop compliqué d'implémenter cette base de données dans notre projet.

Inconvénients

  • Nous devons par contre citer le fait que l'installation de PostgreSQl est beaucoup plus compliqué que celle de MySQL. Plus longue et plus rigoureuse, c'est tout de même une différence non négligeable si nous n'avons aucune expérience dans l'implémentation d'une base de données.

Décision finale

Au vu des nombreux aspects positifs et du peu d'aspect négatifs, notre décision de partir sur PostgreSQL s'est faite tout naturellement. Bien que de nombreuses autres bases de données ont autant d'avantage, notre précédente expérience avec PostgreSQL a beaucoup pesé dans la balance. Quant au seul point négatif bous concernant que nous avons relevé, il a été très simple de passer au travers, de par le fait que nous avions déjà fait cette manœuvre d'installation pour le projet orienté application du premier quadrimestre. La création s'est donc faite assez facilement et nous n'avons pas eu de soucis à ce niveau là.