Questa pagina spiega come utilizzare il dataset di OpenStreetMap per il testing.

Schema del database

Lo schema del database è disponibile qui. Per importarlo:

mysqladmin create osm
cat osmdb06.sql | mysql osm

Per default, questo schema utilizza un misto di tabelle InnoDB e MyISAM. Per convertirle in Aria:

sed -i -e 's/InnoDB/Aria/gi' osmdb06.sql
sed -i -e 's/MyISAM/Aria/gi' osmdb06.sql

30 tabelle vengono create.

Data

I dati sono forniti come file XML (estensione .OSM) che possono essere caricati in MariaDB con il tool Osmosis. Esso è disponibile su dev.openstreetmap.org. E' noto che la versione 0.36 funziona.

Sono disponibili vari file .OSM, tra cui tutto il mondo (>200Gb unzippato) e i singoli stati.

I dati si possono caricare dalla riga di comando (l'esempio utilizza il file bulgaria.osm, lo si sostituisca con quello desiderato):

chmod +x bin/osmosis
bin/osmosis --read-xml file=bulgaria.osm --write-apidb dbType="mysql" host="localhost:port" validateSchemaVersion=no database="osm" user="root" password="<password-goes-here>"

I dati vengono inseriti in 19 tabelle, come si vede di seguito:

MariaDB [(none)]> use information_schema;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [information_schema]> select TABLE_NAME, TABLE_ROWS from TABLES
    -> where TABLE_ROWS > 0
    -> AND
    -> TABLE_SCHEMA='osm'
    -> ORDER BY TABLE_ROWS DESC;
+--------------------------+------------+
| TABLE_NAME               | TABLE_ROWS |
+--------------------------+------------+
| current_way_nodes        |    1559099 |
| way_nodes                |    1559099 |
| current_nodes            |    1477247 |
| nodes                    |    1477247 |
| node_tags                |     311751 |
| way_tags                 |     287585 |
| ways                     |     100007 |
| current_ways             |     100007 |
| changeset_tags           |      18738 |
| current_relation_members |      14560 |
| relation_members         |      14560 |
| changesets               |       9369 |
| relation_tags            |       3948 |
| current_relations        |        937 |
| relations                |        937 |
| users                    |        537 |
+--------------------------+------------+
16 rows in set (0.00 sec)

Commenti

Sto caricando i commenti......