将osm文件导入Neo4j 3.3.2

时间:2018-02-22 02:31:22

标签: neo4j neo4j-spatial

我是neo4j&的新手使用neo4j版本3.3.2 neo4j空间分支 - 0.25-neo4j-3.3

你能提供一个代码片段来导入osm文件吗?

我试过https://github.com/maxdemarzi/OSM。 Neo4j spaceial自述文件(导入开放街道地图文件)示例不起作用。

/感谢

1 个答案:

答案 0 :(得分:1)

您只需安装Neo4j Spatial插件并运行cypher查询即可导入:

CALL spatial.addLayer('layerTestName', 'osm', '')
CALL spatial.importOSMToLayer('layerTestName', '/path/to/file.osm')

Java示例(from doc):

OSMImporter importer = new OSMImporter("/path/to/file.osm");
importer.setCharset(Charset.forName("UTF-8"));
BatchInserter batchInserter = getBatchInserter();
importer.importFile(batchInserter, "map.osm", false);
//batchInserter.shutdown();
//GraphDatabaseService db = new GraphDatabaseFactory().newEmbeddedDatabase(databasePath);
reActivateDatabase(false, false, false);
GraphDatabaseService db = graphDb();
importer.reIndex(db);
db.shutdown();