PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 31/08/2017 10:05:46

_AK_
Membre

Architecture base de données.

Bonjour,

Nous allons migrer un logiciel de comptabilité vers un nouveau langage + migration vers postgreSQL et refonte de la base de données.
Du coup, on se pose des questions sur l'architecture de la base.

quelques éléments :

le logiciel est utilisé par des groupes de cabinets comptables qui ont 0,n cabinets.
chaque cabinet a 0,n client

chaque cabinet a des paramètres commun à son groupe et d'autres propre a lui même.
il y a des fichiers communs (ex fichiers utilisateurs pour authentification)

les collaborateurs de cabinets peuvent avoir à récupérer des informations sur plusieurs clients dans une même requête.

niveau quantité :
a terme on veut que la base puisse tenir
plusieurs dizaines de groupes
plusieurs centaines de cabinets
plusieurs milliers de clients.



plusieurs options s'offrent donc a nous :

------------------------
1 seule base de données,
avec dans chaque table l'id du groupe, du cabinet et du client.

a mon avis la moins bonne solution pour des questions de sécurité, et de perf.


-----

1 base par groupe de cabinet
avec dans chaque table l'id du cabinet et du client.


------
1 base gérant les groupes
puis une base par cabinet
avec dans chaque table l'id du client.

------
1 base gérant les groupes
puis une base par cabinet
avec chaque table préfixée par l'id du client.

------
1 base globale
avec toutes les tables préfixées par idcabinet.idclient



Il y a certainement d'autres solutions.
si besoin de plus de détails je peux compléter.


Merci beaucoup pour votre aide.

Hors ligne

#2 31/08/2017 10:46:27

ioguix
Administrateur

Re : Architecture base de données.

Bonjour,

Et pourquoi pas une seule base, mais avec un schéma pas cabinet. C'est l'équivalent de votre dernière option, mais sans préfixer les tables. Chaque cabinet a ses propres tables, "isolées" dans un schéma propre avec au besoin ses droits particuliers.

Cette approche vous permettra  par exemple d'intégrer les données de plusieurs cabinets à la fois dans la même requête, sans difficultés (pour des besoins de reporting par exemple).

Voir: https://www.postgresql.org/docs/current … hemas.html

Hors ligne

#3 31/08/2017 14:12:16

_AK_
Membre

Re : Architecture base de données.

Merci pour votre réponse rapide.
Je suis en train d'analyser les possibilités avec les schemas mais il reste pas mal de questions.
Vu l'importance de partir sur de bonnes bases (sans jeu de mot...) je pense que je vais faire appel a un architecte pour une analyse.
(il me semble que le lien dans votre signature devrait pouvoir nous aider wink )

cdt,

Hors ligne

Pied de page des forums