Kom ihåg mig?
Home Menu

Menu


Prestandaproblem med komplicerad SQL och 400.000 rader

 
 
Ämnesverktyg Visningsalternativ
Oläst 2011-12-02, 11:55 #1
pelmereds avatar
pelmered pelmered är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2010
Inlägg: 1 342
pelmered pelmered är inte uppkopplad
Har WN som tidsfördriv
pelmereds avatar
 
Reg.datum: May 2010
Inlägg: 1 342
Okej, tack!

Om man vill variera radien borde konstanten vara någonstans runt 0,009 per km om man kollar här:
http://en.wikipedia.org/wiki/Latitude#Degree_length

1/112(för att vara säker på att få med allt) ~ 0,008 per km

Konstanten kan man ju anpassa en del och ha olika för latituden och longituden efter vart man är för longituden varierar ju väldigt mycket beroende på vart man är.
pelmered är inte uppkopplad   Svara med citatSvara med citat
Oläst 2011-12-03, 12:12 #2
gregoff gregoff är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2010
Inlägg: 658
gregoff gregoff är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2010
Inlägg: 658
Kan nämna att jag fick ner laddningstiden till i snitt 0.15 sekunder. Lösningen var att fixa ett nybörjarmisstag...

Det var inte databassökningarna som var problemet. Problemet var PHP. Jag tänkte inte på att avgränsa mina sql-frågor, så vissa frågor gav 30.000 rader som svar, och det tar en stund för PHP att bearbeta (att skicka från databasen till en variabel i php antar jag).

I och med att jag aldrig vill ha mer än 20 svar i min lista, så körde jag en LIMIT 0,20 på sql-frågan och vips var laddningstiden ner till en tiondel på de tyngsta sidladdningarna.

Ifall att någon ville veta ;-)
gregoff är inte uppkopplad   Svara med citatSvara med citat
Oläst 2011-12-06, 22:24 #3
frecco frecco är inte uppkopplad
Nykomling
 
Reg.datum: Feb 2011
Inlägg: 3
frecco frecco är inte uppkopplad
Nykomling
 
Reg.datum: Feb 2011
Inlägg: 3
Citat:
Ursprungligen postat av gregoff Visa inlägg
Kan nämna att jag fick ner laddningstiden till i snitt 0.15 sekunder. Lösningen var att fixa ett nybörjarmisstag...

Det var inte databassökningarna som var problemet. Problemet var PHP. Jag tänkte inte på att avgränsa mina sql-frågor, så vissa frågor gav 30.000 rader som svar, och det tar en stund för PHP att bearbeta (att skicka från databasen till en variabel i php antar jag).

I och med att jag aldrig vill ha mer än 20 svar i min lista, så körde jag en LIMIT 0,20 på sql-frågan och vips var laddningstiden ner till en tiondel på de tyngsta sidladdningarna.

Ifall att någon ville veta ;-)
Använde du ett gemensamt index för båda kordinaterna? Jag fick lite bättre tider när jag gjorde så på stora datamängder.

Först gjorde jag som jag tror att du gjort och körde sedan alter table positions add index (lat, lon); vilket gjorde det lite lite snabare.
frecco är inte uppkopplad   Svara med citatSvara med citat
Oläst 2011-12-07, 07:07 #4
gregoff gregoff är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2010
Inlägg: 658
gregoff gregoff är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2010
Inlägg: 658
Citat:
Ursprungligen postat av frecco Visa inlägg
Använde du ett gemensamt index för båda kordinaterna? Jag fick lite bättre tider när jag gjorde så på stora datamängder.

Först gjorde jag som jag tror att du gjort och körde sedan alter table positions add index (lat, lon); vilket gjorde det lite lite snabare.
Nja jag har enskilda index per kolumn. Har inte testat så som du skriver.
gregoff är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 00:32.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017