Gestion centralisée des informations : Différence entre versions
(→La BD) |
(→La BD) |
||
Ligne 26 : | Ligne 26 : | ||
#Démarrer la BD en exécutant PostgreSQLPortable.exe | #Démarrer la BD en exécutant PostgreSQLPortable.exe | ||
#Dans l'invite de commande, créer une table au nom de '''invposte''' | #Dans l'invite de commande, créer une table au nom de '''invposte''' | ||
− | ##postgres=# CREATE DATABASE invposte; | + | ##postgres=# '''CREATE DATABASE invposte;''' |
##Si ok = CREATE DATABASE | ##Si ok = CREATE DATABASE | ||
#Ensuite créer un utilisateur '''invposte''' avec le mot de passe '''invposte''' | #Ensuite créer un utilisateur '''invposte''' avec le mot de passe '''invposte''' | ||
− | ##postgres=# CREATE USER invposte WITH password 'invposte'; | + | ##postgres=# '''CREATE USER invposte WITH password 'invposte';''' |
##Si ok = CREATE ROLE | ##Si ok = CREATE ROLE | ||
+ | #Affecter les pleins droits du compte invposte sur la BD invposte: | ||
+ | ##postgres=# '''GRANT ALL privileges ON DATABASE invposte TO invposte;''' |
Version du 22 juin 2018 à 18:04
L’objectif pour centraliser les données est de convenir avec l’utilisation d’une base de données suffisamment performante pour répondre aux besoins futurs. Selon la topologie du réseau et la structure des appareils, les données peuvent être à la fois mise en cache sur les appareils et par la suite, soit être traité localement puis transféré; ou simplement transférer le lot des données brutes, afin qu'elle soit traité par la suite.
- Le choix s'impose davantage sur la conservation locale, si la cache est chiffrée et invisible à l'utilisateur.
- Les données sensibles soit traités en priorité
- Le traitement locale diminue la charge de travail du serveur et devient un bon compromis entre la relation client et serveur
- Les données brutes demeurent consultable au besoin du serveur et les rapatrient lorsque nécessaires
Les Pré-requis
- Infrastructure de serveurs assurant la redondance et la haute disponibilité
- Base de données: PostgreSQL --> Ouvert et Puissant
- Structure Web: NGINX, Apache, NodeJS, IIS
- Connaissance des langages Scripts orientés aux OS: Shell (BSH/KSH), DOS, VBScript, PowerShell
Le prototype
Dans le cadre du projet Windows 10 à la Régie de l'Assurance Maladie du Québec (RAMQ), l'absence d'une CMDB, un cycle de mise à jour en continue, impose la mise en place d'un outil centralisé pour recueillir les informations des postes de travail, l'état, les logiciels, les applications Maisons/Missions, les intervenants et responsables. La solution la plus adaptée consiste à centraliser ces informations au sein d'une base de données, afin qu'elle soit traitée par la suite par des requêtes adaptées aux besoins.
L'environnement
Les produits Microsoft sont majoritaires au sein du gouvernement québécois, ainsi il est préconisé d'utiliser les outils offerts par le fournisseur, lorsqu'ils sont accessibles. Dans le cadre de l'environnement présent, les accès sont très limités. Les points bloquant sont:
- Les utilisateurs ne peuvent installer de logiciels.
- Les utilisateurs ne peuvent ainsi créer de services ou ouverture de ports
- Les demandes entre différents services peuvent prendre un temps important voir décourageant
- Facteur de démotivation vis-à-vis l'innovation
- Les produits Microsoft ne sont pas toujours adaptés pour répondre au besoin
- Ils peuvent être moins performant dans certaines situations
La BD
Mon choix s'est orienté vers des applications portables et légères: PostgreSQL sur Windows 10
- Extraire le fichier dans C:\RAMQ\PostgreSQL
- Télécharger les drivers ODBC 32bit et 64bit de PostgreSQL adaptés à la version BD téléchargée, accéder au source de PostgreSQL
- Installer ces Drivers ODBC !Attention, des droits Admins sont nécessaires!
- Démarrer la BD en exécutant PostgreSQLPortable.exe
- Dans l'invite de commande, créer une table au nom de invposte
- postgres=# CREATE DATABASE invposte;
- Si ok = CREATE DATABASE
- Ensuite créer un utilisateur invposte avec le mot de passe invposte
- postgres=# CREATE USER invposte WITH password 'invposte';
- Si ok = CREATE ROLE
- Affecter les pleins droits du compte invposte sur la BD invposte:
- postgres=# GRANT ALL privileges ON DATABASE invposte TO invposte;