• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Parametry produktów - Json czy Tabele MySQL

Fiszki IT
Fiszki IT
+1 głos
74 wizyt
pytanie zadane 3 kwietnia w SQL, bazy danych przez Renzov Użytkownik (980 p.)
Dobry wieczór wszystkim,

W ramach ćwiczeń mam zamiar zrobić sobie prostego klona Allegro. Podczas planowania napotkałem pewien drobny problem.

W projekcie będzie możliwość filtrowania produktów. Każda kategoria będzie posiadać filtry odpowiednie do niej (W sensie w kategorii telefony można filtrować pamięcią, kolorami, modelem etc. W zakładce samochody, proponowane filtry to będą np. ilość koni, czy auto powypadkowe etc).

I tutaj moje pytanie. Jak "zaprojektować" filtry?

Pierwszym moim pomysłem jest stworzenie 3 tabel.

- Pierwsza tabela zawiera nazwę kategorii [Name]

- Druga tabela będzie zawierać nazwę parametru, id kategorii [name] [category_id]

- Trzecia tabela będzie zawierać id parametru, wartość oraz id produktu do którego jest przypisany

Nie wiem tylko jak by było z wydajnością (Pytanie czysto teoretyczne). Jeśli dajmy na to mam 20 000 000 produktów, każdy posiada 50 parametrów, daje to już 10 00 000 000 rekordów w bazie

Drugim zamysłem jest użycie Firebase'a i baza w formie drzewka

2 odpowiedzi

+1 głos
odpowiedź 3 kwietnia przez SzkolnyAdmin Maniak (57,360 p.)
Ale dlaczego przy 20 tys.produktów z 50 parametrami każdy masz mieć 10 mln rekordów? Relacyjna baza tak nie działa. Po to są relacje,abyś właśnie nie miał 10 mln rekordów.
komentarz 3 kwietnia przez Renzov Użytkownik (980 p.)
Nie wiem czy dobrze wytłumaczyłem, ale chodziło mi o to, że każdy parametr to nowy record w bazie danych.

- Id productu

- Id parametru

- Wlaściwośc

Gdy jakiś obiekt ma 50 paremtrów jak np. kolor, pamięć, etc daje to już 50 recordów w bazie danych. 1 000 produktów, to już 50 000 recordów
2
komentarz 3 kwietnia przez SzkolnyAdmin Maniak (57,360 p.)
A nie będą się one powtarzać? Nie lepiej do produktu przypisać parametry z tabeli słownikowej? W ten sposób masz 1 produkt = 1 rekord.
+1 głos
odpowiedź 4 kwietnia przez mordimer Mądrala (5,520 p.)
Ratują cie tu indexy, partycje albo elastic search ... I raczej nie da sie inaczej bo jak dobrze rozumiem tu nie chodzi o to zeby tylko przechowywac jakos te dane jak najmniejszym kosztem tylko również wyszukiwać wydajnie po tych paramtetrach. A tak z ciekawości szkolnyadmin czym jest dla ciebie ta tabela słownikowa i jak ona by miala wygladac ? Chcialbys laczyc kategorie z parametrami w jakims indexie fulltextowym ?

Podobne pytania

0 głosów
0 odpowiedzi 1,122 wizyt
pytanie zadane 15 lipca 2018 w SQL, bazy danych przez voltex Obywatel (1,210 p.)
0 głosów
1 odpowiedź 138 wizyt
pytanie zadane 25 marca 2016 w SQL, bazy danych przez CzlowiekSkrypt Nałogowiec (26,440 p.)
0 głosów
1 odpowiedź 120 wizyt
pytanie zadane 24 czerwca 2019 w SQL, bazy danych przez Bartson Nowicjusz (150 p.)
Porady nie od parady
Forum posiada swój własny serwer Discord, dzięki któremu będziesz mógł po prostu pogadać z innymi Pasjonatami lub zapytać o jakiś problem. Podstrona z chatem znajduje się w menu pod ikoną człowieka w dymku.IRC

84,762 zapytań

133,562 odpowiedzi

296,003 komentarzy

56,018 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...