云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

虚拟主机_专业网站建设公司排名_哪家好

小七 141 0

在3月3日星期六,世界各地将通过破解开放数据集来庆祝开放数据日。地理名称是其中一个最地理的,相应地,他们的网站:

你为什么不加入黑客使用SAP HANA的地理空间处理?所以,准备好你的环境。无法访问HANA?这不是借口,因为你可以使用免费的SAP HANA Express,就像我一样。

GeoNames提供他们每天的数据转储,这是你和我要从他们的服务器下载的内容,大数据可视化平台,然后上传到HANA db进行高级分析,包括空间分析。一旦实例启动并运行,按照以下步骤准备就绪所需的时间不应超过15分钟。我使用的是在GCP上运行的HXE,因此请根据您自己的配置和用户对命令进行必要的调整。

从GeoNames下载文件

默认情况下,只能从受限制的目录集将文件上载到HANA db。我将使用$DIR_INSTANCE/work.

现在让我们将文件下载到/usr/sap/HXE/HDB90/work/geonames/(或任何您的目录)并在必要时解包。我要下载波兰的数据,所以文件是邮政编码, 但是你应该为你自己的国家选择一个文件

检查文件。

我跳过了下载备选名称.zip因为替代名称可以作为主目录中的字段使用PL.txt文件文件

为参考数据创建模式和表格

让我们从参考数据(或主数据,大数据指的是什么,如果您愿意)。

注意:

CSV文件是以制表符分隔的,因此\t作为字段分隔。没有包含大陆代码的txt文件,所以我们需要创建INSERT语句。请注意,从中加载数据时跳过前51行countryInfo.txt文件文件。由于某些原因,文件开头包含51行长的元数据描述。

创建主表并计算地理空间点

现在是加载主文件的时候了。如前所述,我正在使用来自波兰的数据文件,但您可能希望为您自己的国家这样做,所以相应地修改语句!

要添加到结构中的两列(不在原始文件中)是LOC_4326和LOC_3857。它们将用于存储空间参考系统中位置的地理空间数据类型:4326(以度为测量单位的全球定位系统卫星导航系统的三维圆形地球模型)和3857(以米为测量单位的网络地图使用的二维伪墨卡托平面投影)。第一种方法给出了更精确的度量空间计算。后者更适用于空间谓词和集群。

SAP HANA安装默认包括一些空间引用系统定义,您可以在系统视图"PUBLIC"中看到这些定义。"ST\u spatial\u Reference\u SYSTEMS"。但是3857在默认情况下不包括在内,所以我们在创建表之前先添加它。

现在我们可以创建一个表来存储下载的地理名称。

下一步是从PL(或您国家的)文件上载数据…

注意:

我们需要按从文本文件加载的字段的顺序列出列,因为表中增加了两列LOC_4326和LOC_3857。一些NAME字段值以"that HANA将视为用于分隔字段数据的封闭字符"开头。为了避免这种情况,我们需要在IMPORT语句中添加可选的由""括起来的内容。

现在执行该语句并检查是否有任何被拒绝的记录写入到IMPORT语句中国家/地区.err文件。希望一切顺利!

另一个步骤是根据经度和纬度列中的数值,用点值填充地理空间列。我们将使用ST\u GeomFromText()方法来构造。

我的目标:废弃的地方

现在所有的数据都在那里了,下面是我想到的一个例子。波兰的废弃地(又称"鬼城")在哪里?下面是一个查询,我将使用它来查找它们并聚合到一个GeoJSON输出中–许多流行的GeoJSON可视化选项之一。

因此,很明显,这些地方的密度非常高(我不知道)。如果我想看到两个以上这样的地方在7公里以内,而这些地方距离我的家乡沃罗克劳200公里以内?

我可以使用SAP HANA中提供的空间群集,更具体地说是DBSCAN。您还可以看到,云服务器租用,我使用了两个空间参照系:平面3857用于聚类,而圆地球4326用于精确的距离计算。为了让SQL更清晰,我跳过了加入"GEONAME"。"FEATURECODES",但基本上PPLQ是废弃的位置,好的云服务器,而PPLA是有人居住的位置。

[显然,如果你深入挖掘,你会说7km是用SRS3857测量的距离,200km是用SRS4326测量的距离-你绝对是对的!我只是想在一个查询中显示混合和转换不同的srse]

为了使可视化更具可读性,我在中修改了这些集群的样式属性

所以,大数据app,我必须检查这些地方是什么。自下而上:

波兰/捷克/德国边界角落的区域是今天图罗煤矿的区域;下一条红线是Pstrąże——前苏联军事基地的一个地区;我还需要查一下北边这些大区域是什么。我只发现其中一个自1930年代以来一直是军事试验场。

所以,这就是我破解这个开放的地理空间数据集。你在这些数据中找到你的故事了吗?

和'直到下周与另一个#地理空间星期四!-Vitaliy,又名@Sygyzmundovych