Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql] Projekt bazy
jachu151
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 26.02.2007

Ostrzeżenie: (0%)
-----


Witam serdecznie. Mam pytanie do osób doświadczonych w projektowaniu baz danych.

Problem, jak optymalnie zrealizować taki oto system:

- baza ogłoszeń nieruchomości
- cechy do oferty

Różne typy ogłoszeń mieszkania, domy, itd. każdy tych będzie zawierał trochę cech wspólnych trochę różnych. Domyślnie dużo cech.


Czy optymalnym rozwiązaniem będzie stworzenie tabeli:

offer - ogłoszenia, zawierające ID, opis, daty dodania modyfikacji itd
feature_date
feature_text
feature_int ...

osobne tabele dla różnych cech w zależności jakiego typu one będą.

Wyszukiwanie będzie zawierać dużo LEFT JOINOW, jeśli będę chciał znaleźć ofertę o 10 cechach to jest 10 joinów, da się to zrobić optymalniej? Z mniejszą zależnością od ilości wyszukiwanych cech?



Pozdrawiam
jachu
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
jachu151
post
Post #2





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 26.02.2007

Ostrzeżenie: (0%)
-----


Cytat
hm. co do cech..
a co w przypadku jeśli będziesz chciał dodać kolejną cechę ? będziesz dodawał kolejną tabelę? bez sensu.


Nie w ten sposób. Typy _date , _float, _int, _text przykładowo i więcej już nie będzie. Czyli przykładowo miejscowość, dzielnica, ulica .. po np okolice, ogrzewanie itd byłyby w _text, w _float byłyby powierzchnie wszelkie, ceny itd, w _int ilość pokoi, pomieszczeń, łazienek itd


Z tym przeniesieniem cech do sortowania do osobnej tabeli to jest chyba dobra myśl, tylko dla różnych typów oferty mogą być różne pola do sortowania... Czy tworzyć x osobnych tabel? Czy po prostu jedną z możliwymi pustymi kolumnami?



Dla przyśpieszenia odczytów zastanawiam się również nad trzymaniem wszystkich cech w JSON w tabeli oferta (służąca do wyświetlania), czy jest to dobry pomysł? Zakładając, że na tabeli cech nie ma ich edycji (przy aktualizacji są usuwane, następnie dodawane), więc ze spójnością danych nie byłoby problemu. Interesują mnie rozwiązania na dużych systemach, jak się je projektuje, żeby działało wydajnie (IMG:style_emoticons/default/smile.gif)


Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 20:29