cadego blog

Ein weiteres tolles WordPress-Blog

cadego blog header image 2

Query Optimierung

Mai 12th, 2009 · Keine Kommentare

Eine klassische DB-Abfrage erzeugt unter Rails ein ‘select *’.  Logisch, Rails weiß ja nicht, was wir benötigen.

Als Beispiel:


@u = User.find(params[:id])
MySQL-Query:
SELECT * FROM `users` WHERE (`users`.`id` = 54312)

Wir benötigen aber nur den Namen, Permalink und die ID.
Optimierung von Hand:


@u = User.find(params[:id],:select=>['name, permalink,id'])
SELECT name,permalink,id FROM `users` WHERE (`users`.`id` = 54312)

Besser…
Man könnte jetzt alle DB-Abfragen von Hand optimieren. Der Aufwand ist bei einer größeren Rails-Anwendung aber schon heftig.


config.gem "methodmissing-scrooge",:lib=>'scrooge',:source => "http://gems.github.com"

der environment.rb hinzufügen und


rake gems:install

ausführen.

No related posts.

Tags: rails