GeoMesa命令行工具---摄取命令

delete-features:

从schema中删除特定的features。web

参数 描述
-c, --catalog * 包含schema元数据的catalog表
-f, --feature-name * schema的名称
-q, --cql CQL过滤器用来选择要删除的features

ingest:

ingest命令能够将多种格式的文件做为数据源,并将其转换为SimpleFeatures写入数据库。一般,须要一个“converter(转换器)”定义输入数据如何转换为SimpleFeatures。GeoMesa支持常见的输入格式,好比TSV、CSV、、JSON、XML和Avro。转换器能够经过Java SPI进行扩展,从而支持定制格式。shell

参数 描述
-c, --catalog * 存放schema 元数据的catalog 表
-f, --feature-name schema名
-s, --spec 要建立SimpleFeatureType的 说明
-C, --converter 指定转换器,必须为一下之一:一、已经在classpath中的converter 名;二、converter 的配置(一个字符串);三、包括converter的配置的名
–converter-error-mode 自定义的转换器的error mode
-t, --threads 指定并行度
–input-format 指定输入源格式(如csv, tsv, avro, shp, json,)
–no-tracking 指定提交的 ingest job什么时候终止(在脚本中经常使用)
–run-mode 指定运行模式,必须为:local(本地)、distributed (分布式)、distributedcombine(分布式组合)之一
–split-max-size 在分布式中,指定切片最大大小(字节)
–src-list 输入文件为文本文件,按行输入
–force 禁用任何的提示
<files>… 指定输入的文件

若是没有指定转换器,GeoMesa会根据输入文件区去推断转换器它支持GeoJSON、自描述Avro、存在分隔符的文本(TSV、CSV)和Shapefiles。若是GeoMesa可以推断出schema 和converter ,用户能够直接使用,或者将它们做为自定义转换器的基础。用户能够将推断出的转换器保存到文件中,这样能够方便地修改和重用。在摄取大型数据集时,在本地模式下摄取单个文件时,使用schema 推断来生成converter 比较好数据库

若是指定了 --feature-name而且schema 已经存在,则不须要 --spec。一样,若是没有定义converter ,则schema 将与converter 一块儿会被自定推断。不然, --spec是如下任何一种:json

一、字符串类型的属性, 例如 name:String,dtg:Date,*geom:Point:srid=4326
二、在classpath中已经存在的一个SimpleFeatureType
三、在配置中定义的属性字符串
四、包含上述内容之一的文件的名app

若是schema 不存在, --feature-name参数是必须的。分布式

—input-format参数可用于指定要摄取的文件的类型。GeoMesa支持Avro、CSV、TSV、Json/GeoJson、GML和SHP若是没有指定,将使用输入文件扩展名来肯定文件类型。svg

no-tracking参数指定为应用程序在提交了摄取做业以后关闭,而不是继续跟踪和显示摄取做业的进度。经常使用在脚本提交做业和不但愿JVM一直运行时经常使用。使用这个参数并不会使应用程序中止运行,它仍然会提供关于做业提交状态的信息。spa

—run-mode参数可用于本地或分布式模式运行摄取(使用map/reduce)。在分布式模式下运行,输入文件必须在HDFS中。默认状况下,本地文件系统上的输入文件将以本地模式接收,而HDFS中的输入文件将以分布式模式接收。若是使用distributedcombine模式,则每一个映射器将处理多个文件,直到 --split-max-size指定的限制为止。命令行

–threads参数可用于提升本地摄取速度(用于本地模式)。线程数要小于输入的文件数。对于分布式摄取, --threads参数将被忽略线程

– split-max-size参数可用于控制每一个mapper 进程的数据量。当与DistributedCombine模式结合使用时,若是输入文件很小,或者为每一个文件启动映射器的速度很慢,则这个参数很是有用。例如,若是您有100个5MB的文件,那么设置为100000000 (100MB)将会调度5个mappers。

当您要摄取的文件比命令行容许指定的要多时, --src-list参数很是有用。该文件指示GeoMesa将输入文件视为新行分隔的文件列表。

–force参数可用于抑制任何确认提示(一般来自转换器推断),经常使用在脚本

<files>…参数指定要摄取的文件。*能够用做文件路径中的通配符。**只要文件扩展名匹配压缩类型,GeoMesa就能够处理gzip、bzip和xz文件压缩。**GeoMesa支持从本地磁盘或HDFS摄取文件。

输入数据可使用stdin shell重定向直接经过管道传输到ingest命令,而不是指定文件**。这将只在本地模式下工做,而且只使用一个线程进行摄取**。在这种状况下,模式推断是禁用的,而且进度指示器可能不是彻底准确的,由于预先不知道总大小。例如:

cat foo.csv | geomesa-accumulo ingest ...