Aktywne Wpisy
![nadziej_c](https://wykop.pl/cdn/c0834752/a72e7cb9a0a2d84a4fcbc7575e277652b1a5385e76697c6f583418f8dc61c12c,q60.jpg)
nadziej_c +410
#mecz Ehhh ale kiedyś to był samiec alfa, co może zrobić p0lka z chłopem
![nadziej_c - #mecz Ehhh ale kiedyś to był samiec alfa, co może zrobić p0lka z chłopem](https://wykop.pl/cdn/c3201142/f599be4c16de768c401ed03110920bb5c1fb0d1b1a8ac519f10621231fa03b06,w150.gif?author=nadziej_c&auth=7b22caced428d23fef0c94817b51252b)
źródło: image_picker_652EC341-BF20-4A99-AA58-AF0788AD097D-19309-00000306740C918B
Pobierz![Lewusx](https://wykop.pl/cdn/c0834752/738585934edb8f9e73b68673e430a89a846b8c3364efc4cafc618690edb3c733,q60.jpg)
Lewusx +30
Siema, siema.
ROZROST Up10.
Zdecydowałem, że będę regularnie co tydzień w dzień raportu robił mały update tego co u mnie, również tutaj.
No dobra, minęło kilka kolejnych tygodni, tygodni które były przepracowane mogę śmiało powiedzieć na 95%.
Ważę obecnie najwięcej w życiu bo około 124-125kg, najwyższe ważenie 125,2kg co jest moim absolutnym rekordem, a jeszcze lepsze jest to, że sylwetka wcale nie jest tak bardzo zalana.
Wpadł rekord siłowy w 5 ruchach
ROZROST Up10.
Zdecydowałem, że będę regularnie co tydzień w dzień raportu robił mały update tego co u mnie, również tutaj.
No dobra, minęło kilka kolejnych tygodni, tygodni które były przepracowane mogę śmiało powiedzieć na 95%.
Ważę obecnie najwięcej w życiu bo około 124-125kg, najwyższe ważenie 125,2kg co jest moim absolutnym rekordem, a jeszcze lepsze jest to, że sylwetka wcale nie jest tak bardzo zalana.
Wpadł rekord siłowy w 5 ruchach
![Lewusx - Siema, siema.
ROZROST Up10.
Zdecydowałem, że będę regularnie co tydzień w ...](https://wykop.pl/cdn/c3201142/04c02bca83f6067c0e7cb1a36a8e6b433eacaed001991e663d70e65446738bb1,w150.png?author=Lewusx&auth=429ef15665d73ccb6f9f0683d8bf95be)
źródło: IMG_8634
Pobierz
String departureAirport
String destinationAirport
Float price
Date date
Jak mozecie zauwazyc mamy tutaj loty tylko w jedna strone.
Głównym celem mojego projektu jest wyszukiwanie lotów w dwie strony z określonego lotniska wylotu do listy lotnisk docelowych, moje obecne rozwiązanie wyglada nastepujaco. Użyłem MongoDB jako magazynu bazy danych. Każdy lot przechowuję niezależnie. Kiedy mam request o wyszukanie, najpierw szukam lotu w pierwszą stronę według podanych kryteriów, a następnie iteruje po liscie znalezionych lotów w pierwszą stronę. Dla każdego znalezionego lotu muszę wykonać niezależne zapytanie do Mongo, aby znaleźć lot powrotny. Niestety to generuje bardzo dużo żądań i cała operacja trwa naprawdę długo. Może macie inne pomysły, jak mógłbym to rozwiązać? Może powinienem użyć relacyjnej bazy danych lub bazy danych grafów? Może powinienem przechowywać wszystkie loty dla jednego połączenia w jednym rekordzie/dokumencie?
Post scriptum: Kiedy pisałem ten post, wpadłem na nowy pomysł. Może powinienem zagregować wszystkie loty w pierwszą stronę i zrobić jedno zapytanie Mongo, a później przefiltrować je w Javie, co byłoby zdecydowanie szybsze, ale z drugiej strony pochłonie znacznie więcej pamięci.
#programowanie #bazadanych #bazydanych
2. Jeśli ktoś szuka lotów A->B
-- to możesz dodatkowo założyć sobie index A,B albo samo B (trochę przyspieszy i baza taniej wypluje loy A-B_
3. Teraz jak szukasz lotów powrotnych to robisz jeden strzał do bazy o loty B->A (zindexowane) i możesz to jakoś ograniczyć czasowo jesli potrzebujesz tego ograniczenia.
4.
Bo wiesz - jeśli baza ma 400MB to mógłbyś w trakcie requesta po prostu ładować dane z pliku robiąc pierwsze filtrowanie, a potem z górki.
Takie coś pozwoliło by Ci to opędzić nawet jako lambda/serverless funkcje gdzieś w cloudzie.
Druga sprawa - jeśli to jest statyczna mapa lotów i te 400MB nie urośnie
@obieq jaki tech stack? może połączymy siły :D
@Krolik Jesli juz to bym je zaladowal raz, trzymał w pamięci i aktualizowal w momencie kiedy pobiore aktualne dane lotów