![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 0 Dołączył: 26.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
Mam pytanie z serii optymalizacji bazy danych. Posiadam tabele o nazwie "coordinates" zawiera ona 4 kolumny. Poniżej przykładowe zestawienie
Łącznie zawiera ona 30 000 000 rekordów. API wywołuje takie zapytanie, aby na podstawie danych lat, long znaleźć parametr "city"
Teraz pytania: 1 Czy taka ilość powinna być rozdzielona na kilka tabeli? 2 Czy można, a może powinno się zastosować indeks? 3 Czy stosuje się jakieś zasady optymalizacji przy takim zapytaniu? Ten post edytował maksik 24.09.2016, 14:17:25 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 428 Pomógł: 77 Dołączył: 10.07.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
1. nie
2. index na lat/long raczej wymagany, zwłaszcza że nie robisz insertów (zakładam) 3. LIKE ogólnie boli -- Zinteresuj się Solr/ElasticSearch/inne, bardzo fajne mechanizmy które mają bardzo fajne funkcje pozwalające na osiągnięcie tego co chcesz, w czasie o niebo mniejszym --EDIT ElasticSearch Solr Ten post edytował kpt_lucek 24.09.2016, 14:43:18 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 02:27 |