Cheatah: schneller Algorithmus - Daten auslesen

Beitrag lesen

Hi,

"SELECT COUNTRY_CODE, COUNTRY_NAME FROM ip WHERE IP_FROM <= '$dec_ip' && IP_TO >= '$dec_ip'"

Dann habe ich es mit einem Index versuchen wollen, aber egal was ich da probiert habe hat das ganze eher verlangsamt als es zu beschleunigen. Lässt sich hier einfach kein sinnvoller Index verwenden?

doch; einer über ip_from und ip_to sollte die Effizienz steigern - Caching mal außer Acht gelassen. Ich kann mir allerdings gut vorstellen, dass er noch effizienter ist, wenn Du die Spalten nummerisch speicherst.

Aber was mich extremst wundert, wieso ist das auslesen von diesen paar Datensätzen um so viel langsamer ist als mit MySQL ohne jeglichen Index.

Auch ohne Index geht ein DBMS anders vor - es liest z.B. nicht _alle_ Daten in den Speicher, sondern nur die benötigten Spalten, und spart sich ebenfalls die Stringverarbeitung (inkl. Speicher-Management der Arrays et.al.). Ich muss jedoch zugeben, dass eine fünffache Geschwindigkeit doch überraschend ist.

Ich meine, wie bitte geht das dann mit dem Archiv hier performant?

Ah, tut es das? ;-)

Das beste was mir eingefallen war [...]
Das hat ja nun wirklich nichts gemacht, aber es liegt immer noch über 0,2 Sekunden. Wieso?

Keine Ahnung. Versuche es mal mit Verzicht auf $com.

Gibts irgendwelche "Tricks" sowas schneller zu machen?

So wie ich das sehe, hast Du schon eine konstante Zeilenlänge garantiert. Das wäre für mich ein solcher Trick. Mehr fällt mir ganz spontan auch nicht ein.

Cheatah

--
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes