2008-11-22 10 views
7

Niedawno zmieniłem projekt z MySQL InnoDB na PostgreSQL i czuję większe opóźnienie podczas wstawiania i aktualizowania danych za pomocą ajax. To może być subiektywne. Wiem, że twórcy Django polecają postgres i wiem, że psycopg2 ma być szybszy niż MysqlDB. Osobisty Podoba mi się sposób, w jaki postgres wymusza integralność bazy danych, ale najbardziej martwię się wydajnością tego projektu. Chcesz usłyszeć opinię innych ludzi na ten temat.Którego RDBMS używasz z Django i dlaczego?

Odpowiedz

0

SQLite. Brak serwera zaplecza. Doskonały do ​​dev

3

Dlaczego nie mierzysz? To jedyny sposób, aby upewnić się o wydajności. Ręczne machanie o tym, jak powolne, czy nie jest czymś bez twardych danych, to jak próbować złapać wodę za pomocą rąk.

Mierz transakcje na sekundę lub nawet lepiej, żądania na sekundę za pomocą narzędzia do naprężania serwerów WWW, takiego jak The Grinder (który może być skryptowany w Jython) zarówno z backendem MySQL, jak i PostgreSQL, a następnie sprawdź, czy to robi różnicę. Jeśli tak, zapytaj tutaj, a dokładniej, zapytaj na listach dyskusyjnych pgsql-general lub pgsql-performance. Jest wielu ekspertów, którzy znają się na tym, nawet na głównych programistach. Istnieje mnóstwo gałek w konfiguracji PostgreSQL związanych z wydajnością.

3

Może to być nieprawidłowe użycie indeksów. Po prostu upewnienie się, że masz odpowiednie indeksy i upewnienie się, że tabele są analizowane i odkurzane okresowo, powinno dawać dość przyzwoite wyniki.

Nawet jeśli Postgres okazuje się być nieznacznie wolniejszy, w niektórych przypadkach moja osobista opinia jest taka, że ​​funkcje, które zapewnia, znacznie przewyższają niewielkie straty wydajności.

Postgres to naprawdę piękna baza danych i za każdym razem, gdy używam czegokolwiek innego, chciałbym używać PostgreSQL.

+0

Prawda. Założę się, że podstawą byłoby się zająć :-) I rzeczywiście Postgres jest sympatyczny. –

3

Użyłem SQLite po raz pierwszy w fazie rozwoju ostatniego projektu. Jest łatwy w konfiguracji, wygodny do przenoszenia z jednego systemu do drugiego itp. Muszę dodać, że kiedy w końcu przeniosłem projekt do produkcji na MySQL, wiele subtelnych problemów ujawniło się z MySQL, które nie były obecne w ogóle z SQLite. Nic wielkiego, ale od teraz, jeśli muszę wdrożyć projekt na MySQL, wolałbym używać MySQL również w fazie rozwoju.

Powiązane problemy