![]() |
![]() |
![]()
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 |
|
|
![]() |
![]()
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) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 20:29 |