云网站服务器_国内数据云存储_移动云数据库服务器主机-搜集站云

香港带宽_中山网站建设多少钱_最新活动

小七 141 0

在以前的一篇博客文章中,我在这里写到了向saphana添加额外的空间参考系统。EPSG数据集中定义了3900多个空间参考系。单击此处阅读更多信息。虽然您可以使用元数据安装程序(添加3900多条)或执行SQL语句(每个语句添加一条)轻松添加更多内容,但HANA默认支持4。其中三个是:笛卡尔坐标系(原点在0,0–一个平面二维坐标系,大数据专业,你可能记得从小学开始)、球体WGS 84(4326)和平面WGS 84(1000004326)。

在HANA中,你想在空间参考系(SRS)之间进行转换的原因有很多。您可能正在将数据流式传输或加载到具有不同SRS的HANA中,并且希望执行空间分析或将数据混搭。或者您可能只是希望空间数据位于同一SRS中。在HANA中执行转换非常快,可以处理数百万行。GIS包通常不打算批量执行转换。另一个原因是,例如,当从Esri ArcMap发布功能服务时,由于之前round earth SRS实现的限制,所有WGS84层在HANA中存储为SRID 1000004326。在某些情况下,使用空间参考系统4326在HANA中存储空间数据的表可能不会像ArcGIS中预期的那样工作。有关更多详细信息,请参见Esri网站上的此页。

一些空间计算,如ST\u面积、ST\u距离等,可以根据多边形的大小或两点之间的距离以及使用的空间参照系返回不同的答案。这是因为球状SRS考虑了地球的曲率。SAP HANA Spatial Reference Guide(SAP HANA空间参考指南)在此处有一节对此进行了描述。在执行这些和其他类似的计算之前,您可能需要将SAP HANA中存储的空间数据(SRID为1000004326)转换为类似于4326的球形SRS。相反,如果您要在ArcGIS平台中使用HANA空间数据,并且该数据存储的SRID为4326,则您可能需要将其转换为基础HANA表中或使用视图中的平面表示(SRID为1000004326)。

幸运的是,HANA中的空间参照系统之间的转换很容易。首先,检查加载到HANA中的数据所使用的空间参照系是否已定义。要检查SRID为3857,请在HANA Studio的SQL控制台中运行以下查询:

如果SAP HANA实例中存在SRID,则应看到以下结果:

在检查所有预期SRID是否已在HANA中定义之后,大数据调研报告,移动物联网卡,您可以将空间数据加载到HANA中,并根据需要在空间参照系统之间进行转换。

在本例中,我创建了一个表来保存转换后的值。我将两个浮点数(代表经度(x)和纬度(y))转换为两个不同空间参考系中的点。我使用的是两个HANA默认配置的空间参照系统。

请注意,一旦创建了一个带有空间列的表(如果没有如上所示指定空间列,则SRID默认为0),则无法修改该列的SRID。

下一步,我运行INSERT从一个现有的表中获取值:

让我们看看用于执行转换的空间函数。ST\u SRID()用于更改数据的SRID,但转换必须使用ST\u transform()完成。设置SRID需要使用ST\u SRID函数,因为上面使用的ST\u POINT构造函数形式返回SRID为零的值(没有定义转换)。

前提\u no转换为VARCHAR,因为ArcGIS需要唯一键,而float不是唯一标识符的有效数据类型。在ArcGIS中定义查询层需要指定一个唯一的键。

接下来,我发出一个SELECT来检查值并验证转换是否按预期工作:

函数ST_ASEWKT()以称为扩展已知文本(EWKT)的可读形式返回空间数据。这是结果:

选择做两件事。首先,它使用浮动的lat和long构造一个点,然后将该点转换为4326的SRID。其次,淘客采集,它显示了两个转换后的值–一个用于SRID 1000004326,啥是大数据,另一个用于SRID 4326。结果显示上面INSERT语句中的转换产生了预期的结果。

为了方便起见,我创建了一个视图,因为ArcGIS中的查询层不能返回多个空间列–我创建的表有两个。您可能还希望在视图中执行转换。我还可以在查询层定义中编辑SQL(见下文)

另一个限制是包含空间值的列只能包含相同空间数据类型("shape type")的空间值。例如,不能混合点和多边形。可以创建一个带有ST\u GEOMETRY列的表。只需确保表中该列中不包含不同的几何图形("形状类型")。或者,可以使用WHERE子句中的方法ST\u GeometryType()来筛选所需的空间数据类型。更多信息请参见此处。您可以在这里阅读有关查询层和要求的更多信息。

您可以使用以下对话框定义查询层。我可以简单地在目标列表中指定一个空间列,而不是创建一个视图。

以下是定义并执行查询层后在ArcMap中显示的内容:

总之,在SAP HANA中不同的空间引用系统之间进行转换是很简单的。只需确保您了解何时以及为什么需要在不同的空间参照系之间进行转换,尤其是在球体和平面之间,以及对空间计算(如ST_面积和ST_距离)的影响。转型快乐!