Vynechání importu parcel
Snažím se vytvořit db s adresními body a výše (tj. ulice, části obcí, atd.) za celou ČR, ale narážím na velikost výsledné db i dlouhý čas importu. Přitom většina importovaných dat je zbytečná (parcely a jejich bonitní díly, způsob ochrany pozemku). Zkusil jsem v DataConvertor nahradit convertorParcely.convert(reader); za XMLUtils.skipCurrentElement(reader); a import se výrazně zrychlil (vždy nad prázdnou db):
BEZ PARCEL
Processing file data\20121231_OB_505528_UKSH.xml.gz File processed in 687 ms Processing file data\20121231_OB_530395_UKSH.xml.gz File processed in 438 ms Processing file data\20121231_OB_530417_UKSH.xml.gz File processed in 656 ms Total duration: 2203 ms
S PARCELAMI
Processing file data\20121231_OB_505528_UKSH.xml.gz File processed in 2922 ms Processing file data\20121231_OB_530395_UKSH.xml.gz File processed in 1797 ms Processing file data\20121231_OB_530417_UKSH.xml.gz File processed in 2171 ms Total duration: 7343 ms
Šlo by přidat přepínač, který by zařídil vynechání parcel?
P.S.: Nejraději bych vyhodil i stavební objekty, čímž by se db zmenšila zásadním způsobem, ale bez stavebního objektu nelze rozlišit číslo popisné od čísla evidenčního, což je pro adresy zásadní.
možná by se mohl přidat přepínač --skip-object nebo s nějakým podobným názvem, kde by byly čárkou oddělené objekty, které se mají přeskočit (tj. na základě podmínky místo parsování volat XMLUtils.skipCurrentElement(reader)), např --skip-objects parcela,stavobj. pak by bylo na každém, jaké objekty si naimportuje.
Jo, to zní dobře. Byl bys ochotný to udělat? Přeci jenom v Javě běžně nědělám, takže mi to trvá déle, a ten hack je zatím pro moje účely stačí :)
Jo, za to bych se taky přimlouval... taky používám jen malou část dat z celkového objemu.