运行 AWS S3 上的 GeoMesa HBase,如何远程摄取/导出

Running GeoMesa HBase on AWS S3, how do I ingest / export remotely

我是 运行 EMR 集群上的 Geomesa-Hbase,按照 here 所述进行设置。我能够通过 ssh 进入 Master 并从那里摄取/导出。我将如何从例如 lambda 函数(最好是 python 解决方案)远程摄取/导出数据。现在对于摄取部分,我是 运行 一个 lambda 函数,它只是通过 SSH 发送 shell 命令:

c = paramiko.SSHClient()
c.connect(hostname = host, username = "ec2-user", pkey = k )
c.exec_command("geomesa-hbase ingest <file_to_ingest_on_S3> ...")

但我想我应该能够在不使用 ssh 的情况下远程摄取/导出。我一直在寻找解决方案,但到目前为止没有运气。

您只需在远程盒子上 运行ning GeoMesa 代码即可远程摄取或导出。这可能意味着安装命令行工具,或在您选择的处理框架中使用 GeoTools API。 GeoServer 通常用于交互式(非批量)查询。

ingest/export 没有任何通过 AWS lambda 的现成解决方案,但您可以使用 GeoMesa 命令行工具创建 docker 图像并调用它。

另请注意,命令行工具支持通过 map/reduce 作业摄取和导出,这允许您使用本地安装 运行 分布式进程。