Dne Út 7. července 2015 18:11:04, Marián Kyral napsal(a):

začal bych třeba několika člověko-dny práce a lehce upravil totálně 
plýtvající DB schema. Vysvětlím na jedné tabulce, na tabulce s uzly.

Máme tabulku nodes, obsahuje nody (id,version,lat,lon, changeset, visible, 
timestamp). V té tabulce jsou všechny, i smazané nody a všechny jejich 
verze za celou historii.

Pak máme tabulku current_nodes, která je prakticky úplně stejná jako nodes 
a obsahuje "jen" aktuálně platné nody. Ano, úplně ty samé, jako jsou v 
tabulce nodes.

Toto platí pro všechny tabulky (relations:current_relations, 
ways:current_ways, way_nodes:current_way_nodes, 
node_tags:current_node_tags, ...), takže celá aktuální planeta je v DB 2x 
plus celá historie.

Úloha vyloženě dělaná pro Postgresql partitioning. Navíc mě nenapadá žádný 
důvod, proč by měla být celá historie v hlavní DB

V Nominatimu jsou pro změnu geometrie 2x, některé až 4x; tam ale náprava 
není tak relativně jednoduchá. Tedy pokusil jsem se o částečné snížení 
redundance pro svoje účely, ale myslím, že mám reverzní geokodování 
rozbité :(

--
Petr

> Zdar,
> myslím, že tady to asi těžko vyřešíme. Možná bys mohl OWG
> (http://wiki.osmfoundation.org/wiki/Operations_Working_Group) nabídnout
> pomoc.

_______________________________________________
Talk-cz mailing list
Talk-cz@openstreetmap.org
https://lists.openstreetmap.org/listinfo/talk-cz

Odpovedet emailem