K logům přátel: bych to nijak nehrotil, určitě ne v první vlně. Když si někdo dá velký seznam přátel, může si dát větší počet logů. K eliminaci přítele - diskutéra v logu se dá omezit na poslední log, případně na poslední log každého typu každého přítele, ale to mi přijde už jako zbytečný orloj.
Pro rychlost je zásadní vytažení logů ke keši, pak nasledné hrátky jsou už pro databázi pohodlnou třešničkou.
- testoval jsem rychlost mého (s rank() fcí) a nalano dotazu. Subjektivně je to jedno, dle SQLite studia se doba běhu pohybuje na SSD v setinách vteřiny i u mojí keše, kde to musí přebrat >1400 logů. Chtělo by to zkusit v cyklu při generování gpx, kdy to poběží pro víc keší za sebou. Možná se tam projeví db režie. Ale jeden i druhý dotaz už je prvotně zoptimalizovaný celkem pěkně. Takže bych teď nechal na YaMD, jaký si vybere dotaz a pustil to mezi uživatele na testování. Další optimalizaci bych řešil za provozu.
včera jsem testoval LM při navigaci v Locusu a i při dynamickém zoomu se keše načítají celkem svižně. Příští týden jedu do Rakous tak to otestuju jak při jízdě po dálnici, tak při motání se po horách. DB má přes 100k keší jen za CZ, s Rakouskemu se dostanu přes 200k kousků, takže bude vidět rychlost provádění dotazů.
jak často je při LM dotazována databáze? Při každém pohybu v mapě? Nebo je to i vázáno časově? Aby se to při rychlém pohybu neptalo každou vteřinu a dotaz se nevyhodnocoval vteřiny dvě…
Já to dnes testoval krátce po D1. Je pravda, že jsem si udělal takovou turbo verzi s využitím dotazů s rtree od HaLuMy, taky tam nedochází k řazení, odstraňování duplicit, prostě max optimalizace na rychlost pro LM. V DB mám 30k keší. Podlě mě to jelo relativně pěkně. Sekání mapy v 1. videu je způsobený auto režimem v Locusu, proto to moc nepoužívám, asi nestíhá telefon.
Locus posílá tzv. broadcast, tj. nějaká informace o změně pro ostatní appky nebo doplňky, posílá ho cca každou sekundu. Doplněk zjištuje, jestli došlo ke změně zoomu, nebo k posunu středu obrazovky o vzdálenost [(pravý horní roh <-> střed) / 2.5] (tohle jsem okoukal u Geocaching4Locus). Pokud je jedno z toho splněno dojde načtení keší.
Zvažuju tam přidat načítání většího prostoru než je obrazovka, třeba půl obrazovky na každou stranu, tím by to mohlo být plynulejší.
Edit: Ještě je na tom 1. videu vidět, že to po najetí na D1 nezareagovalo na posun a načetlo keše až po chvíli. Zkusím něco vymyslet.
- Kompletně přepsána část pro načítání keší z databáze. Výsledkem by měl být mnohem rychlejší chod, který se projeví hlavně u Živé mapy.
- V nastavení Živé mapy přídána možnost zvětšit oblast načítání.
- Opraveno řazení u logů.
Bug s notifikační ikonou po vypnutí Locusu jsem zatím nevyřešil, nepřišel jsem zatím na nějaké efektivní řešení (každých 5 vteřin kontrolovat jeslti Locus běží jsem prozatím vyhodnotil jak neefektivní).
-Zvětšení oblasti pro LM zrychluje, jen se projevuje divný moment, kdy po posunu všechny ikony na krátkou dobu zhasnou (cca 0,3s) a pak se hned vykreslí
-Logy mi to vrací posledních x podle času
Porovnám časy při stejném nastavení starého a nového pluginu.
Bug s notifikační ikonou po vypnutí Locusu jsem zatím nevyřešil, nepřišel jsem zatím na nějaké efektivní řešení (každých 5 vteřin kontrolovat jeslti Locus běží jsem prozatím vyhodnotil jak neefektivní).
a neslo by do toho notifikacniho prouzku dat tlacitko na vypnuti mapy. To by bohate stacilo, nemusel by se kvuli vypnuti poustet znovu Locus. Diky
a neslo by do toho notifikacniho prouzku dat tlacitko na vypnuti mapy. To by bohate stacilo, nemusel by se kvuli vypnuti poustet znovu Locus. Diky
To je v tuhle chvíli asi nejlepší řešení, díky. Chtěl bych to dořešit, aby se to vypínalo samo, ale prozatím nevím jak.
Přidána nová verze:
-----| 0.15 |-----
Vylepšeno zobrazování bodů z Živé mapy.
Přidáno tlačítko vypnout k notifikaci Živé mapy.
Zobrázování Živé mapy by mělo být ještě lepší, teoreticky by už neměly body problikávat a jen se dočítat další.
Kdo má chuť experimentovat, nechť po spuštění appky (v O aplikaci) 7x klikne na obrázek, spustí se testovací režim (stejným způsobem se i vypne) a přibude možnost otevřít nastavení k tomuto režimu. Je tam pár možností jak laborovat s výkonem LiveMapy. Další pokusné hodnoty přidám, ještě mám pár nápadů, jak by to šlo možná zrychlit.
Pokud ti půjde ta chyba nasimulovat ještě jednou, mohl by si prosím napsat jak přesně ta hláška zněla? Tuhle hlášku, tak jak si ji teď napsal, tam nemám.
Logů nejde nastavit 0 až 99, vždy je tam jen jedno číslo, v základu 15. Akorát mě se teď načítá 5-6, ale nevím, jeslti to není tím, že jsem si jich do GG víc nestáhnul.
-Čas načítání s vypnutým i zapnutým režimem RTree se moc neliší - resp. rozdíly v časech jsou menší než rozdíly v časech mezi několikanásobným spouštěním
-Načítá se mi posledních 15 logů chronologicky
-ta notifikační ikona LiveMap mi tam visí i po skončení. Osobně mi přijde informačně zbytečná, buď mám tu mapu zapnutou nebo vypnutou, sklerotický ještě nejsem natolik, abych si to nepamatoval, jestli jsem si to zapnul nebo vypnul.
Pokud ti půjde ta chyba nasimulovat ještě jednou, mohl by si prosím napsat jak přesně ta hláška zněla? Tuhle hlášku, tak jak si ji teď napsal, tam nemám.
Logů nejde nastavit 0 až 99, vždy je tam jen jedno číslo, v základu 15. Akorát mě se teď načítá 5-6, ale nevím, jeslti to není tím, že jsem si jich do GG víc nestáhnul.
Tak cestou z práce jsem zkoušel chybu nasimulovat, ale hláška se už neobjevila. Vše proběhlo korektně.
Tak jsem o vikendu keskoval a prisel na jednu pro me neprijemnou vec. Normalne si importuju kese v nejakem okruhu, ale jen zakladni udaje.
Kdyz hledam s Locusem, tak jsem zvykly, ze v pop-up menu mam volbu hint. U takto naimportovanych kesi se ale hint neukaze. Samozrejme detilu kese po rozkliknuti uz hint vidim.
Chci se jen zeptat. Nesel by hint pridat do zakladnich infomaci pri importu?
Testovací jízda s Live mapou na trase Praha - Zell an See a zpět:
- je to rychlé, při velikém odzoomování to v pohodě mimo VELKÁ města načte rychle keše. Problém byla rychlá jízda kolem větších měst (Budějice, Linec, Salzburg). Ale to je pochopitelné, mělo to naráz zobrazit moc keší, bližší zoom to spravil.
- je to robustní - i když to občas napíše "Nenačtena databáze", tak při dalším pokusu (když se dostatečně posune mapa) už to kešky načte. Locus mi za těch 1000km spadl asi 4x, ale nevím, jestli to bylo LM, navigací, zapráskanou pamětí telefonu, nebo erupcemi na slunci. Na letní bezcílné courání se po okreskách za volantem busíku to bude naprosto dostatečné.
- testováno na Motorola Moto G5s Plus s A8.1
- ještě jednou se přimlouvám, aby zapnutí LM trigerovalo načtení keší a nebylo nutné posouvat mapu. Pokud je toto implementováno, tak jsem si toho nevšimnul.
Ad hint: do importu bych to mohl přidat, to by šlo. Zvažuju i do LiveMapy, ale asi s možností volby, protože to je další věc co se tahá ze solo tabulky a chci ten select mít co nejrychlejší.
Ad padání: vím o tom, je to přesycením Locusu daty, opravím.
Ad rychlost: v další verzi by to mělo být ještě rychlejší, optimalizoval jsem selecty a snad to poletí.
Ad trigger: jo, už vím jak na to, menion mě nasměroval (kdo má pořád číst všechnu tu dokumentaci :-D )
Ad hint: do importu bych to mohl přidat, to by šlo. Zvažuju i do LiveMapy, ale asi s možností volby, protože to je další věc co se tahá ze solo tabulky a chci ten select mít co nejrychlejší.
Tak ono to byla v sobotu docela sranda. U pate kese mi prislo divny, ze je opet bez hintu. Rikal jsem si, divny je to tady kraj bez napoved :-)
Vylepšení výkonu Živé mapy, opraveny drobné chyby a spouštění ŽM.
Notifikace ŽM se sama vypíná po 3 sekundách od nečinnosti Locusu.
V režimu Zobrazení keší a Import keší (základní data) se načítají nápovědy. U ŽM je možné si to zapnout.
Snad bude poznat zlepšení výkonu ŽM, používají se rtree indexy (lépe než v předchozí verzi), nastavil jsem lépe limity a pár dalších úprav.
Řeším teď ještě jednu otázku výkonu a to je, zda waypointy načítat současně s kešemí pomocí LEFT JOIN ..., nebo samostatně pro každou keš. Pokud by měl někdo chuť to testovat, nechť si zapne testovací mód (viz výše) a tam zkusí zapnout načítání wp samostatně. Ve výchozím, jsou wp načítány s kešemi, přijde mi to rychlejší.
Pokud si zapnete zobrazování času běhu, tak se to vypisuje v tomto pořadí:
"doba provedení sql dotazu" / "doba zpracování načtených keší" / "celková doba zpracování doplňkem" / "celková doba".
Rozdíl mezi poslední a předposlední hodnotou je doba než to Locus zpracuje (tj. potvrdí přijetí dat, nikoliv zobrazí), to jen na vysvětlenou.
Pár dní to budu ještě testovat a budu rád když přijde nějaká zpětná vazba od vás. Potom bych se vrhnul na offline obrázky.