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

WinDev Discussion :

Table fichier sur trés gros fichier


Sujet :

WinDev

  1. #1
    Membre régulier
    Homme Profil pro
    Autodidacte
    Inscrit en
    Décembre 2016
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2016
    Messages : 195
    Points : 84
    Points
    84
    Par défaut Table fichier sur trés gros fichier
    Bonjour,

    J'ai un fichier avec 258 millions d'enregistrements
    L'affichage se fait par une table fichier

    Quand on demande le nombre de ligne (Tableoccurence) il écrit bien 258 000 000

    Mais lorsqu'on interroge la barre de recherche de la colonne, ça plante.

    (Je précise que c'est lorsqu'on recherche un enregistrement vers le milieu du fichier que ça plante)

    Quelqu'un a une idée ?

    Merci pour votre aide

  2. #2
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    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 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Bonjour,

    Une piste : reconstruire l'index (avec le centre de contrôle). A faire si possible sans que les utilisateurs aient accès à la base.

    Une question (qui te donner peut-être une autre piste) : je suppose que c'est du HFCS : est-ce que le cache du serveur est "bien" réglé ?
    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

  3. #3
    Membre régulier
    Homme Profil pro
    Autodidacte
    Inscrit en
    Décembre 2016
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2016
    Messages : 195
    Points : 84
    Points
    84
    Par défaut
    Citation Envoyé par frenchsting Voir le message
    Bonjour,

    Une piste : reconstruire l'index (avec le centre de contrôle). A faire si possible sans que les utilisateurs aient accès à la base.

    Une question (qui te donner peut-être une autre piste) : je suppose que c'est du HFCS : est-ce que le cache du serveur est "bien" réglé ?

    Non ce n'est pas du HFCS, c'est un fichier locale classique.... je vais reconstruire l'index et vous tiens au courant

    Merci

  4. #4
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    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 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Dans ce cas, même si c'est du classique, tu peux réindexer avec le centre de contrôle. Il offre plus de possibilités que WdMap.
    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

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2023
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2023
    Messages : 52
    Points : 105
    Points
    105
    Par défaut
    Bonjour,
    La question m'interpelle, y a t-il un quelconque intérêt à afficher 258 millions d'enregistrements (Est-ce exploitable) ?
    N'était-il pas possible d'imaginer l'affichage du résultat d'une requête dès le départ afin de limiter ces enregistrements?
    Cdlt

  6. #6
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    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 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Bonjour,

    @devocc, je suis d'accord avec toi, 258 millions d'enregistrements à afficher d'un coup, ce n'est pas logique.

    Pour l'instant, il doit vérifier son fichier, ensuite, il faudrait qu'il fasse un filtrage (genre 100 derniers enregistrements ou dernière semaine ou autre)
    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

  7. #7
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2003
    Messages
    942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2003
    Messages : 942
    Points : 1 933
    Points
    1 933
    Par défaut
    Citation Envoyé par DevOcc Voir le message
    Bonjour,
    La question m'interpelle, y a t-il un quelconque intérêt à afficher 258 millions d'enregistrements (Est-ce exploitable) ?
    N'était-il pas possible d'imaginer l'affichage du résultat d'une requête dès le départ afin de limiter ces enregistrements?
    Cdlt
    En réalité Windev ne charge pas 258 millions d'enregistrements, il en charge 100 et les affiche. C'est ce qui fait la rapidité de l'affichage des tables Windev. Par contre dès l'instant où l'on veut faire une recherche dans une colonne, il charge l'intégralité des données d'où l'erreur que rencontre notre ami.

    Il faudrait donc intégrer une barre de recherche externe à la table, qui exécuterait une requête et afficherait le résultat. Ce qui revient donc à la solution que tu proposes.
    Philippe,


    N'hésitez à lever le pouce si mon aide vous a été utile.

  8. #8
    Membre émérite
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    999
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 999
    Points : 2 526
    Points
    2 526
    Par défaut
    Citation Envoyé par Robert le débutant Voir le message
    Bonjour,

    J'ai un fichier avec 258 millions d'enregistrements
    L'affichage se fait par une table fichier

    Quand on demande le nombre de ligne (Tableoccurence) il écrit bien 258 000 000

    Mais lorsqu'on interroge la barre de recherche de la colonne, ça plante.

    Merci pour votre aide
    TableOccurence sur table fichier ?
    (Dans le cas d'un champ Table fichier, TO contient le nombre d'éléments affichés dans le champ Table.)

    Mais lorsqu'on interroge la barre de recherche de la colonne, ça plante.
    ça veux dire quoi ?
    Message d'erreur ?
    Tentez de faire une zone de recherche hors table.

  9. #9
    Membre régulier
    Homme Profil pro
    Autodidacte
    Inscrit en
    Décembre 2016
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2016
    Messages : 195
    Points : 84
    Points
    84
    Par défaut
    Citation Envoyé par serendib Voir le message
    TableOccurence sur table fichier ?
    (Dans le cas d'un champ Table fichier, TO contient le nombre d'éléments affichés dans le champ Table.)

    Mais lorsqu'on interroge la barre de recherche de la colonne, ça plante.
    ça veux dire quoi ?
    Message d'erreur ?
    Tentez de faire une zone de recherche hors table.
    Non ce n'est pas un message d'erreur, ca bloque , plus rien ne se passe , le disque ne tourne pas
    la reindexation pareil, ca comment puis message en haut de la fenêtre, " ne réponds pas"

    la fonction tableoccurence indique bien 258 millions d'enregistrement

    je vais essayer une zone de recherche hors table

    Merci pour votre aide

  10. #10
    Membre régulier
    Homme Profil pro
    Autodidacte
    Inscrit en
    Décembre 2016
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2016
    Messages : 195
    Points : 84
    Points
    84
    Par défaut
    Citation Envoyé par DevOcc Voir le message
    Bonjour,
    La question m'interpelle, y a t-il un quelconque intérêt à afficher 258 millions d'enregistrements (Est-ce exploitable) ?
    N'était-il pas possible d'imaginer l'affichage du résultat d'une requête dès le départ afin de limiter ces enregistrements?
    Cdlt
    Je vous explique pourquoi.

    J'ai demandé à l'IA de me dire combien d'immatriculation de véhicule étaient possible avec le système de plaque " AA-001-AA"

    Elle me donne le chiffre faramineux de 331,776,000

    Le prompt :

    Une immatriculation de véhicule français comprends 2 lettres, 3 chiffres et 2 lettre exemple "AA-001-AA" pour la première et "ZZ-999-ZZ" pour la dernière. les lettres "I","0","U" sont interdites. la combinaison de lettre "SS" est aussi interdite. combien de combinaison ce système peut engendrer de plaque


    Réponse de l'IA :

    Pour calculer le nombre de combinaisons possibles, nous pouvons examiner chaque partie de l'immatriculation séparément.

    Lettres (1ère et 2ème position): Il y a 24 lettres possibles pour chaque position (26 lettres de l'alphabet - les lettres interdites I et U). Donc, le nombre de combinaisons possibles pour les deux lettres est 24 * 24 = 576.

    Chiffres (3ème à 5ème position): Il y a 10 chiffres possibles pour chaque position, de 0 à 9. Donc, le nombre de combinaisons possibles pour les trois chiffres est 10 * 10 * 10 = 1000.

    Lettres (6ème et 7ème position): Encore une fois, il y a 24 lettres possibles pour chaque position, soit 24 * 24 = 576 combinaisons.

    Maintenant, multiplions ces trois parties pour obtenir le nombre total de combinaisons possibles:

    576 (lettres) * 1000 (chiffres) * 576 (lettres) = 331,776,000

    Donc, le système d'immatriculation peut engendrer 331,776,000 combinaisons de plaques d'immatriculation.


    Étant dans le doute, j'ai créé un algorithme qui crée un fichier avec toutes les combinaisons possibles et je trouve : 278 505 216,00, je n'explique pas la différence

    Avec une barre de recherche indépendante de la table ça fonctionne parfaitement.... mais impossible d'afficher cela sur la table (ne réponds pas)
    La table s'arrête de fonctionner à JA-500-ZZ....Donc les tables fichier Windev ne sont pas illimitées

    Merci pour votre aide

  11. #11
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 811
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 811
    Points : 5 270
    Points
    5 270
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Il y a trois lettres interdites donc 23 lettres possibles et non 24.
    Pourquoi vouloir afficher toutes les possibilités ? à 0.5 sec de lecture par ligne, cela fait un temps de lecture de l'ordre de 4,5 ans à ne faire que lire.
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  12. #12
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 057
    Points : 9 397
    Points
    9 397
    Par défaut
    Pour les 2 premières lettres ,il y a 23*23=529 couples possibles
    A ce nombre, il faut enlever 1, parce que la séquence SS est non valide. Donc 528 couples possibles.
    Idem pour les 2 lettres de fin.
    Pour les 3 chiffres, les nombres possibles sont ceux entre 001 et 999, soit 999 nombres possibles (ChatGPT compte en plus la combinaison 000, donc 1000 combinaisons selon lui).
    528*999*528, ça donne 278 505 216.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  13. #13
    Membre régulier
    Homme Profil pro
    Autodidacte
    Inscrit en
    Décembre 2016
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2016
    Messages : 195
    Points : 84
    Points
    84
    Par défaut
    Citation Envoyé par tbc92 Voir le message
    Pour les 2 premières lettres ,il y a 23*23=529 couples possibles
    A ce nombre, il faut enlever 1, parce que la séquence SS est non valide. Donc 528 couples possibles.
    Idem pour les 2 lettres de fin.
    Pour les 3 chiffres, les nombres possibles sont ceux entre 001 et 999, soit 999 nombres possibles (ChatGPT compte en plus la combinaison 000, donc 1000 combinaisons selon lui).
    528*999*528, ça donne 278 505 216.
    Wouawwww !!! bravo.... je n'avais pas pensé à "000" c'est vrai !!! en plus je n'avais pas vu au lieu d'écrire "O" , j'ai écrit "0"(zéro) en lettre interdite.... seule consolation, mon algorithme est juste

    Merci pour tout

  14. #14
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 811
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 811
    Points : 5 270
    Points
    5 270
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Robert le débutant Voir le message
    en plus je n'avais pas vu au lieu d'écrire "O" , j'ai écrit "0"(zéro) en lettre interdite...
    C'est bien pour cela qu'elle est interdite. De même, le I peut être confondu avec le 1 et le U avec le 0 aussi
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

Discussions similaires

  1. TFileStream : probleme de seek sur très gros fichiers
    Par simoryl dans le forum Composants VCL
    Réponses: 6
    Dernier message: 21/08/2007, 14h00
  2. Réponses: 2
    Dernier message: 20/08/2007, 14h36
  3. Réponses: 3
    Dernier message: 28/11/2006, 08h44
  4. Réponses: 2
    Dernier message: 11/10/2006, 18h43
  5. [Ms SQL server 5.0] gros fichiers dans une table ou sur le DD?
    Par rastamath69 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 10/10/2006, 14h09

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