大家好,我是 GeoMesa 的新手。并尝试将我的 MySQL 表导入其中。正如他们的http://www.geomesa.org/documentation/user/commandline_tools.html网站上给出的。
要摄取 .csv 文件,可以在 application.conf 文件中放置一个名为 renegades 的 SimpleFeatureType 和一个名为 renegades-csv 的转换器:
geomesa {
sfts {
renegades = {
attributes = [
{ name = "id", type = "Integer", index = false }
{ name = "name", type = "String", index = true }
{ name = "age", type = "Integer", index = false }
{ name = "lastseen", type = "Date", index = true }
{ name = "friends", type = "List[String]", index = true }
{ name = "geom", type = "Point", index = true, srid = 4326, default = true }
]
}
}
converters {
renegades-csv = {
type = "delimited-text"
format = "CSV"
options {
skip-lines = 1 //skip the header
}
id-field = "toString($id)"
fields = [
{ name = "id", transform = "$1::int" }
{ name = "name", transform = "$2::string" }
{ name = "age", transform = "$3::int" }
{ name = "lastseen", transform = "date('YYYY-MM-dd', $4)" }
{ name = "friends", transform = "parseList('string', $5)" }
{ name = "lon", transform = "$6::double" }
{ name = "lat", transform = "$7::double" }
{ name = "geom", transform = "point($lon, $lat)" }
]
}
}
}
但问题是:
- 我找不到任何关于如何制作这个文件的教程或帮助,上面的例子中已经给出了一些数据类型。但我的一些 sql DB 值是 varchar、tinyint、float 和 datetime。现在,对于 renegade和 converters,GeoMesa 中的数据类型与这些数据类型相似。
- 以及何时为renegades 设置 index= true 或 false。