IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

HyperFileSQL Discussion :

Viabilité des rubriques Tableau ?


Sujet :

HyperFileSQL

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 315
    Points : 202
    Points
    202
    Par défaut Viabilité des rubriques Tableau ?
    Bonjour,

    voilà nous devons stocker en base un nombre non connu (mais borné) de variables, la personne avant moi avait commencé à créer autant de rubriques que de variables possibles mais le boulot est gigantesque et c'est compliqué à gérer.
    Je pense utiliser des rubriques de type tableau dans HyperFile.

    1) Existe-t-il des limitations particulières, des choses à savoir sur ce type stocké en base ?

    2) est-ce que les temps de réponse sont bons via les requêtes ?

    3) Tout point de vue est apprécié

    Merci!

  2. #2
    Membre averti
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    256
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2010
    Messages : 256
    Points : 435
    Points
    435
    Par défaut
    Bonjour,

    Je n'ai jamais utilisé les rubriques tableau.
    Par contre, je créerais un fichier Variables (Clé,NomVar,Contenu)
    avec une clé du type CléFichierPrincipal+NomVariable

    On peut aussi y ajouter une rubrique "type de variable" et n rubriques contenu
    pour les différents types (Chaine, Monétaires, entiers,...)

    L'avantage de cette solution c'est qu'elle fonctionne pour toutes les BDD.

    Bon dev

    Patrick

  3. #3
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 204
    Points : 9 193
    Points
    9 193
    Par défaut
    Je plussoie ta méthode. Cela me paraît le plus simple. Je n'ai jamais, non plus, utilisé de champ tableau.

    Egalement pour l'écriture de requêtes qui du coup seront plus standard. Au cas où tu voudrais changer de système de bdd...
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 315
    Points : 202
    Points
    202
    Par défaut
    Merci pour ce précieux conseil.

    Je vais essayer de tester pour voir ce que ça peut donner, mais en effet les aspects positifs sont nombreux!

    Toute remarque / conseil supplémentaire pour construire ce type de fichier est bienvenu, j'en suis à la conception de la base, donc pas encore de contraintes (mise à part de bosser en HyperFile)

  5. #5
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    D'où provient la contrainte d'HyperFile étant donné que c'est un nouveau projet ?

    Je mise sur un décideur/chef incompétent et obstiné.

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 315
    Points : 202
    Points
    202
    Par défaut
    Citation Envoyé par vmolines Voir le message
    D'où provient la contrainte d'HyperFile étant donné que c'est un nouveau projet ?

    Je mise sur un décideur/chef incompétent et obstiné.
    Disons que jusqu'à aujourd'hui ils ont toujours bossé en HF, ils en sont contents et ils connaissent donc c'est plus par peur de l'inconnu je pense.
    C'est une toute petite structure, et au final on est plus bidouilleurs que vrais informaticiens, donc la politique c'est de rester sur ce qu'on "maîtrise" je pense.

  7. #7
    Membre averti
    Homme Profil pro
    Développeur Freelance
    Inscrit en
    Juin 2009
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Freelance

    Informations forums :
    Inscription : Juin 2009
    Messages : 221
    Points : 371
    Points
    371
    Par défaut
    J'ai travaillé sur un projet dans lequel on avait largement utilisé les rubriques de type tableau.
    J'ai eu à revoir ce qui avait été fait justement, je vais vous expliquer pourquoi.

    - Tout d'abord, avec les rubriques de type tableau, il y aura un jour des limitations de taille, c'est à dire que ce qui est représenté dans le tableau sera limité en taille et le jour ou on veut passer en illimité, ca va poser problème.

    - il n'y a pas de découpage en entités merisiennes correctes et là aussi cela peut poser problème.

    - Par contre c'est avantageux en vitesse d’exécution il me semble : même si on charge tout dans une seule ligne, il n'y a pas de jointures dans les requêtes.

    Je ne conseillerais pas d'utiliser les rubriques de type tableau.

    pour info, j'ai eu à refaire le cœur d'une application, avec de nouveaux fichiers dans une conception bien merisienne cette fois-ci. Il a fallu migrer les données dans des dimensions totalement différentes du fait que l'on est passé de deux fichiers à 8 (plusieurs rubriques tableaux dans chaque fichier).
    Dans cette application, il avait été ajouté des rubriques de type tableaux au fil des besoins dans deux fichiers.
    J'ai dû refaire tout cela et tout devait être géré par des classes...
    La connaissance s'accroît quand on la partage.

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 315
    Points : 202
    Points
    202
    Par défaut
    Citation Envoyé par leonidas34 Voir le message
    J'ai travaillé sur un projet dans lequel on avait largement utilisé les rubriques de type tableau.
    J'ai eu à revoir ce qui avait été fait justement, je vais vous expliquer pourquoi.

    J'ai dû refaire tout cela et tout devait être géré par des classes...
    Merci pour ce retour précieux. Il est vrai qu'on manque d'utilisateurs de ce genre de rubrique sur Windev...

    Pouvez-vous me dire si vous avez opté pour la solution préconisée par SevenSoftware : un fichier Variables (Clé,NomVar,Contenu) ??

    Merci beaucoup!

  9. #9
    Membre averti
    Homme Profil pro
    Développeur Freelance
    Inscrit en
    Juin 2009
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Freelance

    Informations forums :
    Inscription : Juin 2009
    Messages : 221
    Points : 371
    Points
    371
    Par défaut
    Non, on n'a pas opté pour la solution préconisée par sevensoftware car ce n'est pas ce qui m'a été demandé. La solution de sevensoftware doit avoir aussi ses limites. Il est plus sûr selon moi de refaire la modélisation de manière tout à fait classique, car là on ne sera pas limité.
    On a re-modélisé et les fichiers contenant des rubriques de type tableau ont été "éclatés". Le seul désavantage de cette façon de faire, c'est la dégradation des performances, qui n'est pas très importante par ailleurs.
    La connaissance s'accroît quand on la partage.

  10. #10
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Imaginons qu'on souhaite des attributs "dynamiques" sur une entité personne

    Personne = {IDPersonne, ...}
    AttributPersonne = {IDAttribut, NomAttribut}
    AttributPersonneValeur = {#IDPersonne, #IDAttribut, ValeurAttribut}

    Les points sur lesquels il faut être vigilant lorsqu'on utilise une modélisation par méta-données :

    - La gestion des types de données des attributs si on souhaite un typage fort. Avec le modèle simple que je propose, ValeurAttribut a un type fixe choisi au départ.
    - La gestion de l'ajout d'attribut -> que fait-on des personnes déjà saisies sans valeur pour le nouvel attribut ?
    - Chaque attribut dynamique n'étant pas une entité dans le modèle de données, il faut réserver cet usage pour les éléments qui n'ont pas vraiment besoin de figurer dans le modèle de données. On pourrait faire n'importe quelle base avec un même méta modèle mais c'est le serpent qui se mort la queue car notre méta modèle ne définit plus rien en soi (voir l'article de SQLPro que j'ai mis en lien).

  11. #11
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 315
    Points : 202
    Points
    202
    Par défaut
    L'article est vraiment intéressant et la méthode que je ne connaissais pas aussi, je pense effectivement l'utiliser dans le projet : merci à tous !

  12. #12
    Membre habitué
    Homme Profil pro
    Main frame, Unix, Windows, AS400
    Inscrit en
    Mars 2011
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Main frame, Unix, Windows, AS400
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2011
    Messages : 111
    Points : 171
    Points
    171
    Par défaut
    Salut cousins,

    J'utilise les tableaux partout... vraiment partout. La référence à une ligne est assignée à une classe. Lors d'un chargement d'un fichier, c'est un tableau à dimension variable que j'assigne. Impliqué avec une notion d'indicateur, on retrouve un compromis rapide et flexible sur l'utilisation des données.

    Je peux vous dire que c'est vraiment très rapide. Effectivement, il faut faire attention à créer un débordement lors d'un remplissage d'un tableau. L'utilisation d'un critère spécifique (un filtre) à tout niveau permet d'en maximiser l'utilisation.

    C'est mon avis.

  13. #13
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 315
    Points : 202
    Points
    202
    Par défaut
    @gardangel : merci pour votre retour. Utilisez-vous les rubriques tableau en Hyperfile ou un autre SGBDD ?

    Citation Envoyé par gardangel Voir le message
    La référence à une ligne est assignée à une classe. Lors d'un chargement d'un fichier, c'est un tableau à dimension variable que j'assigne. Impliqué avec une notion d'indicateur, on retrouve un compromis rapide et flexible sur l'utilisation des données.
    - Je ne comprends pas ce que veut dire "la référence à une ligne est assignée à une classe" : avez-vous un exemple pour m'aider à comprendre ?
    - Idem pour la "notion d'indicateur" ?
    - Un tableau à dimension variable ? je ne comprends pas, ne doit-on pas fixer dans l'analyse le nombre d'éléments maximum supportés par la rubrique tableau ?

    Citation Envoyé par gardangel Voir le message
    L'utilisation d'un critère spécifique (un filtre) à tout niveau permet d'en maximiser l'utilisation.
    - Là encore pouvez-vous me donner un exemple pour l'utilisation d'un filtre ?

    Merci beaucoup!

  14. #14
    Membre averti
    Homme Profil pro
    Développeur Freelance
    Inscrit en
    Juin 2009
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Freelance

    Informations forums :
    Inscription : Juin 2009
    Messages : 221
    Points : 371
    Points
    371
    Par défaut
    J'ai eu à faire la même chose. Des classes avec des tableaux d'éléments et chaque élément d'une tableau correspondait avec une ligne d'un fichier.
    Mais comme je l'ai déjà dit, c'était pour justement supprimer les rubrique de type tableau dans hyperfile.
    Cela fonctionnait bien.

    Il faut cependant faire attention au niveau performances, car le chargement d'un tableau de tableau de tableau de tableau, x fois, peut être long, les données étant récupérées sur des fichiers, si le modèle de données comporte trop de fichiers dépendant les uns à la suite des autres.
    La connaissance s'accroît quand on la partage.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récupérer la liste des rubriques de type tableau
    Par kuranes dans le forum HyperFileSQL
    Réponses: 2
    Dernier message: 20/08/2009, 09h06
  2. [Fichiers properties] Créer des rubriques
    Par MiJack dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 30/09/2005, 19h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo