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

Android Discussion :

Optimisation methode sqlite


Sujet :

Android

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 71
    Points : 45
    Points
    45
    Par défaut Optimisation methode sqlite
    Bonjour a tous,
    Je developpe une application qui enregistre les coordonnes gps du telephone et les stocke dans une table d'une base sqlite, jusque la pas de probleme. J'ai une autre table qui contient des points d'interets (23000 lignes) avec leurs coordonnées respectives. Je veux afficher les points d'interets qui sont proches geographiquement du parcours du telephone qui est lui constitué du serie de coordonnées gps (plusieurs milliers de lignes).
    Ma methode actuelle est de faire une requete pour chaque enregistrement de coordonnées gps pour les comparer avec les coordonnėes de la table contenant les points d'interets.
    C'est extrement long, est ce que vous auriez une meilleure methode a me conseiller ?

  2. #2
    Rédacteur
    Avatar de David55
    Homme Profil pro
    Ingénieur informatique
    Inscrit en
    Août 2010
    Messages
    1 542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 1 542
    Points : 2 808
    Points
    2 808
    Par défaut
    Bonjour,

    Ce que je ferais: Je ne ferais pas une requête sur chaque point GPS comme tu l'as dis c'est assez long. En revanche je prendrais les points extrêmes du parcours (le plus à droite, le plus à gauche, le plus au nord, le plus au sud) afin de pouvoir déterminer une zone dans laquelle tu afficheras tes points d’intérêts. Tu auras peut être plus de points d’intérêt mais ca serra plus rapide puisqu'au lieu de comparer chaque point tu récupéreras les points d'une zone!
    Ca pourrait être une solution...

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 71
    Points : 45
    Points
    45
    Par défaut
    Citation Envoyé par David55 Voir le message
    Bonjour,

    Ce que je ferais: Je ne ferais pas une requête sur chaque point GPS comme tu l'as dis c'est assez long. En revanche je prendrais les points extrêmes du parcours (le plus à droite, le plus à gauche, le plus au nord, le plus au sud) afin de pouvoir déterminer une zone dans laquelle tu afficheras tes points d’intérêts. Tu auras peut être plus de points d’intérêt mais ca serra plus rapide puisqu'au lieu de comparer chaque point tu récupéreras les points d'une zone!
    Ca pourrait être une solution...
    Merci de ton aide, mais le problème est que si mon parcours est un ligne "diagonale", je vais me retrouvé avec des points d'interets très éloigné de mon parcours.
    Et inversement si mon parcours est une ligne horizontale ou verticale, j'aurais seulement les points d'interets très proche de mon parcours.

  4. #4
    Membre extrêmement actif
    Avatar de Ryu2000
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    9 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 9 593
    Points : 18 498
    Points
    18 498
    Par défaut
    J'ai pas compris ça comme ça.

    Imagine que tu ais une table "zone", avec max_X, max_Y, min_X, min_Y.

    Bon après c'est toi qui décide de la taille de ta zone.

    L'autre table (où tu entres tes coordonnées) sera lié à cette table.
    Chaque entrée de ta table de coordonnée fera partie d'une zone.

    Imagine si ta zone fais 100*100.
    T'as une coordonées et tu veux récupérer la liste des coordonnées à proximité.
    Ben tu fais une requête qui va te retourner toutes les coordonnées qui appartiennent à la zone.

    Au pire tu peux faire les zones qui touchent.

    Normalement ça devrait être déjà beaucoup plus léger.
    Keith Flint 1969 - 2019

  5. #5
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 71
    Points : 45
    Points
    45
    Par défaut
    ok je vois, je vais suivre vos conseils, merci !

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 30/07/2014, 14h35
  2. Optimisation requête SQLite
    Par raimus88 dans le forum Android
    Réponses: 10
    Dernier message: 20/06/2011, 09h00
  3. [SQLite ADO.NET Provider] Optimisation de performances
    Par Zoolive dans le forum Windows Forms
    Réponses: 2
    Dernier message: 01/07/2009, 15h25
  4. Optimisation par la methode du gradient conjugue
    Par mfontan dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 12/03/2008, 18h41
  5. Optimisation methode insertion
    Par keub51 dans le forum DB2
    Réponses: 9
    Dernier message: 09/10/2007, 11h32

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