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

delete-features:

从schema中删除特定的features。

参数 描述
-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进行扩展,从而支持定制格式。

参数 描述
-c, --catalog * 存放schema 元数据的catalog 表
-f, --feature-name schema名
-s, --spec 要创建SimpleFeatureType的 说明
-C, --converter 指定转换器,必须为一下之一:1、已经在classpath中的converter 名;2、converter 的配置(一个字符串);3、包括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是以下任何一种:

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

如果schema 不存在, --feature-name参数是必须的。

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

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

—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 ...

猜你喜欢

转载自blog.csdn.net/qq_21705851/article/details/93392202