9.16.11. 推特¶
9.16.11.1. 获取Twitter数据¶
与其他示例数据集不同,Twitter数据集没有可立即下载的链接。相反,必须使用 Twitter API 接收JSON格式的数据。
9.16.11.2. 清除数据¶
转换器期望数据是删除了换行符的JSON格式,这样每行只有一条记录。文件可能会被压缩。
9.16.11.3. 几何图形¶
如果用户发布了精确的位置,则使用位置数据收集的Twitter数据可能会有一个点位置。它存储在 coordinates
菲尔德。否则,该推文将与一个有边界框的命名地点相关联。
Twitter API提供的边界框不是格式正确的GeoJson多边形。点阵列不形成线性环,因为它不闭合。因此,转换器获取边界并从其构建一个多边形。然后,该长方体的质心被视为推文的点几何图形。
9.16.11.4. 摄取程序¶
检查是否有 twitter
在GeoMesa工具类路径中提供了简单要素类型。这是默认情况。
$ geomesa-accumulo env | grep twitter
如果不是,则合并 reference.conf
使用 $GEOMESA_ACCUMULO_HOME/conf/application.conf
,或确保 reference.conf
vt.在.中 $GEOMESA_ACCUMULO_HOME/conf/sfts/twitter
。
建议的摄取程序是首先摄取包围盒。带有点几何图形的推文可能无法执行此操作。然后摄取以获得积分。没有积分的推文将不会通过这次摄取,它们的几何结构将保持第一次传递时的设置。
$ geomesa-accumulo ingest -u USERNAME -c CATALOG -s twitter -C twitter-place-centroid hdfs://namenode:port/path/to/twitter/*
$ geomesa-accumulo ingest -u USERNAME -c CATALOG -s twitter -C twitter hdfs://namenode:port/path/to/twitter/*