CI - spójne zarządzanie modelami a wydajność

0

Witam,

Mam dwie tabele, np:

klienci(login, imie, nazwisko, wiek);
zlecenia(id, klient_login, data_przyjecia);

Chciałbym pobierać wpisy z odpowiednich tabel poprzez ich reprezentacje w CI, czyli np:

$zlecenia = $this->Zlecenia->pobierz_zlecenia( $_od, $_ile ); // zwraca tablice loginow klientow, których powyższe zlecenia dotyczą
$loginy_klientow = pobierz_loginy( $zlecenia ); //zwraca tablicę loginów z powyższych zleceń
$dane_klienta = $this->Klienci->pobierz_klienta( $loginy_klientow ); //pobiera dane tych klientów, których dotyczą powyzsze zlecenia

Czy takie rozwiązanie jest poprawne pod względem wydajnościowym ? Przypadkiem w którym w taki sposób chciałbym postąpić, jest np moment w którym korzystając z paginacji pobieram tylko część zleceń, no i chciałbym pobirać również tylko tych klientów których te pobrane zlecenia dotyczą.

1

dobrze zrealizowane, z wydajnością nie będzie problemów, jest to dość powszechne rozwiązanie,
możesz zobaczyć sobie jak to zrelizowano tutaj http://stensi.com/datamapper/ , coś w tym stylu

1

ok, dzięki

0

Hmm, nie znam CI ale w takim wypadku idą dwa zapytania do bazy: pobierz_zlecenia i pobierz_klienta, a prostym join'em można wyciągnąć te dane w jednym zapytaniu. Jedno zapytanie będzie zazwyczaj szybsze od dwóch.

1 użytkowników online, w tym zalogowanych: 0, gości: 1