JDM

DataBase

Liens_WEB:

Une base de données permet rassembler et de stocker des données sous forme de tables pour les bases de données relationnels (de type SQL) et sous forme de collection pour les bases de données destructurées (de type NoSQL).

Dans le model MVC (Model Vue Controler), les bases de données représente le Model.

Il existe 2 philosophie dans les bases des données : Les bases de données relationnelles dites : SQL et les bases de données destructurées dites NoSQL.

Ces 2 philosophies se différencies par leur approches.

Ce qu’il faut retenir c’est que les bases de données SQL peuvent valider vos données et vos mises à jour (définition de contraintes), mais elles les rendent du coup très strictes. Les bases de données NoSQL sont plus flexibles mais ne valident pas les données : il en revient au développeur d’ajouter des contrôles dans la logique du programme car la base de données elle-même n’empêchera pas les erreurs.

Pour choisir une technologie plutôt qu’une autre on peut s’appuyer sur les éléments suivant :

Pour les projets dont :

  • La structure de données relatives aux logiques métier peuvent être identifiées à l’avance

  • L’intégrité des données (native dans le SGBD) est essentielle

  • Le caractère transactionnel est fortement présent (eCommerce)

SQL semble plus adapté.

Pour les projets dont :

  • L’organisation de données est indépendante, indéterminée et évolutive

  • L’organisation demande un forte agilité et gérant beaucoup de données structurées, semi-structurées, non structurées et polymorphes

  • Les besoins de performance et d’évolutivité (load balancing) sont impératives

noSQL semble être une solution.

CRUD
Liens_WEB:

Wikipedia : CRUD [5]

CRUD est un acronyme réutnissant l’ensemble des actions réalisables sur une base de données

  • C reate : créer

  • R ead : lire

  • U pdate : mettre à jour

  • D elete : supprimer

MERISE
Liens_WEB:

présentation de la méthode MERISE [6]

MERISE est une méthode de conception, de développement et de réalisation de projets informatiques. Le but de cette méthode est d’arriver à concevoir un système d’information. La méthode MERISE est basée sur la séparation des données et des traitements à effectuer en plusieurs modèles conceptuels et physiques.

La séparation des données et des traitements assure une longévité au modèle. En effet, l’agencement des données n’a pas à être souvent remanié, tandis que les traitements le sont plus fréquemment.

Cette méthode est donc parfaitement adaptée pour définir les modèles de base de données relationnelles.


PostGreSQL

Liens_WEB:

Installation

Sous Windows

Liens_WEB:

PostGreSQL téléchargement [10] (toutes les versions et tous les environnements)

Télécharger l’install automatique et ce laisser guider. Lorsque l’installation est terminée, il faut ajouter les 2 chemins suivants au “PATH” dans les Variables d’environnement.

1 "C:\Program Files\PostgreSQL\10\bin"
2 "C:\Program Files\PostgreSQL\10\lib"
3     # 'C:\Program Files\' est à adapté en fonction de m'emplacement de 'PostgreSQL'

Redis

Liens_WEB:

Installation

Redis n’est officiellement pas supporter par Windows. L’installation se fait donc uniquement en version Linux.

L’installation sous Windows10 est tout de même possible depuis le Bash Ubuntu intégrer (activer le mode développeur). L’utilisation d’un container (docker) est également possible.

Install Linux

 1 ## Téléchargement des dépendances
 2 sudo apt-get install build-essential
 3 sudo apt-get install tcl8.5
 4
 5 ## Télchargement et décompression du paquet
 6 wget http://download.redis.io/releases/redis-4.0.2.tar.gz
 7 # --> verifier si une version plus récente n'existe pas
 8
 9 tar xzf redis-4.0.2.tar.gz
10 cd redis-4.0.2
11
12 ## Compilation des sources
13 sudo make distclean
14 sudo make –j
15
16 ## Test des éléments compilés avant l'installation
17 sudo make test -j
18
19 ## Installation du serveur
20 sudo make install -j
21 cd utils
22 sudo ./install_server.sh
23 # --> Accepter tous les choix par défaut

Démarrer le serveur

  1. En mode manuelle :

    1 # Démarrer le service
    2 sudo service redis_6379 start
    3
    4 # Rédémarrer le service
    5 sudo service redis_6379 restart
    6
    7 # Arréter le service
    8 sudo service redis_6379 stop
    
  2. Démarrer le service automatiquement :

    1 sudo update-rc.d redis_6379 defaults
    

Lancer le CLI

1 redis-cli

Utilisation avec Python

Liens_Web:

Doc de la lib [15]

  1. Installation :

    1 sudo pip install redis
    

# Exemple d’utilisation :

1 >>> import redis
2 >>> r = redis.StrictRedis(host='localhost', port=6379, db=0)
3 >>> r.set('foo', 'bar')
4 True
5 >>> r.get('foo')
6 'bar'