关于大数据文件共享
大数据文件共享是在您的门户中创建的项目,引用了 ArcGIS GeoAnalytics Server 可访问的位置中的要素数据(点、线、面或表格数据)。门户中的大数据文件共享项目可用于通过 ArcGIS GeoAnalytics Server 工具浏览已注册数据。大数据文件共享可以引用以下数据源:
- 文件共享 - 本地磁盘或网络共享上的数据集目录。
- HDFS - 数据集的 Hadoop 分布式文件系统 (HDFS) 目录。
- Hive - 元数据存储数据库。
- 云存储 - 包含数据集目录的 Amazon Web Services (AWS) 简单存储服务 (S3) 存储段或 Microsoft Azure Blob 容器。ArcGIS 10.5.1 及更高版本提供了云存储。
注:
仅在门户管理员启用 GeoAnalytics Server 后才能使用大数据文件共享。有关启用 GeoAnalytics Server 的详细信息,请参阅设置 ArcGIS GeoAnalytics Server。
使用所有数据源公用的大数据文件共享存在诸多益处。在可以开始执行分析前,您可以将数据保存在您可访问的位置。大数据文件共享可用于在运行分析时访问数据,以便您可以继续将更多数据添加到大数据文件共享的现有数据集,无需重新注册或发布数据。您还可以修改清单以删除、添加或更新大数据文件共享中的数据集。大数据文件共享在时间和几何的定义方式上极其灵活,允许在单个数据集上使用多种时间格式。大数据文件共享还可用于对数据集进行分区,同时仍将多个分区视为一个数据集。
注:
只有当您运行 GeoAnalytics Tools 时,才能访问大数据文件共享。这意味着您只能浏览大数据文件和将其添加到您的分析中;无法在地图上显示该数据。
大数据文件共享是 GeoAnalytics Tools 访问数据的多种方式之一。有关可能使用的 GeoAnalytics Tools 数据输入的列表,请参阅在门户地图查看器中使用 GeoAnalytics Tools。
准备要注册为大数据文件共享的数据
文件共享和 HDFS
要准备进行大数据文件共享的数据,需要将数据集格式化为将注册的单个父文件夹下的子文件夹。在要注册的该父文件夹中,子文件夹的名称表示数据集名称。如果子文件夹包含多个文件夹或文件,则所有顶级子文件夹的内容将读取为一个数据集。下面的示例演示了如何注册包含三个数据集(即 FileShareFolder、Earthquakes 和 Hurricanes)的文件夹 GlobalOceans。注册父文件夹时,您指定的文件夹下的所有子目录也将注册到 GeoAnalytics Server。始终注册包含一个或多个单个数据集文件夹的父文件夹(例如 \\machinename\FileShareFolder)。
包含三个数据集的大数据文件共享示例:Earthquakes、Hurricanes 和 GlobalOceans。|---FileShareFolder < -- The top-level folder is what is registered as a big data file share
|---Earthquakes < -- A dataset is all files and folders within the top-level subfolder
|---1960
|---01_1960.csv
|---02_1960.csv
|---1961
|---01_1961.csv
|---02_1961.csv
|---Hurricanes
|---atlantic_hur.shp
|---pacific_hur.shp
|---otherhurricanes.shp
|---GlobalOceans
|---oceans.shp
尽管术语不同,但文件共享和 HDFS 均采用该相同结构。在文件共享中,存在一个顶级文件夹或目录,数据集通过子目录表示。在 HDFS 中,文件共享位置已注册并包含数据集。下表概述了区别:
文件共享 | HDFS | |
---|---|---|
大数据文件共享位置 | 文件夹或目录 | HDFS 路径 |
数据集 | 顶级子文件夹 | HDFS 路径内的数据集 |
在将数据按照包含数据集子文件夹的文件夹进行组织后,需要按照使数据可供 GeoAnalytics Server 访问中的步骤进行操作以使数据可供 ArcGIS Server 访问,并注册数据集文件夹。
Hive
在 Hive 中,数据库中的所有表格将识别为大数据文件共享中的数据集。在下面的示例中,存在包含两个数据库(default 和 CityData)的元数据存储。当通过 ArcGIS Server 将 Hive 大数据文件共享注册到 GeoAnalytics Server 时,只能选择一个数据库。在此示例中,如果选择了 CityData 数据库,则大数据文件共享中将存在两个数据集,即 FireData 和 LandParcels。|---HiveMetastore < -- The top-level folder is what is registered as a big data file share |---default < -- A database |---Earthquakes |---Hurricanes |---GlobalOceans |---CityData < -- A database that is registered (specified in Server Manager) |---FireData |---LandParcels
云存储
可以通过以下三个步骤来注册云存储类型的大数据文件共享:
准备数据
要在云存储中准备大数据文件共享的数据,需要将数据集格式化为单个父文件夹下的子文件夹。
以下是如何构建数据的示例: 本示例将注册父文件夹 FileShareFolder,其中包含三个数据集:Earthquakes、Hurricanes 和 GlobalOceans。注册父文件夹时,您指定的文件夹下的所有子目录也将注册到 GeoAnalytics Server。 以下是如何在云存储中构建将用作大数据文件共享的数据的示例: 此大数据文件包含三个数据集:Earthquakes、Hurricanes 和 GlobalOceans。|---Cloud Store < -- The cloud store being registered
|---Container or S3 Bucket Name < -- The container (Azure) or bucket (Amazon) being registered as part of the cloud store
|---FileShareFolder < -- The parent folder that is registered as the 'folder' during cloud store registration
|---Earthquakes < -- The dataset "Earthquakes" composed of 4 csvs
|---1960
|---01_1960.csv
|---02_1960.csv
|---1961
|---01_1961.csv
|---02_1961.csv
|---Hurricanes < -- The dataset "Hurricanes" composed of 3 shapefiles
|---atlantic_hur.shp
|---pacific_hur.shp
|---otherhurricanes.shp
|---GlobalOceans < -- The dataset "GlobalOceans" composed of 1 shapefile
|---oceans.shp
将云存储注册到您的 GeoAnalytics Server
从 ArcGIS Server Manager 连接到 GeoAnalytics Server 站点以注册云存储。注册云存储时,必须包含 Azure 容器名称或 AWS S3 存储段名称,以及容器或存储段内的文件夹。指定文件夹由子文件夹组成,且每个子文件夹都代表单独的数据集。每个数据集由子文件夹的全部内容组成。
将云存储注册为大数据文件共享
将云存储注册为大数据文件共享的方式取决于您使用的云存储。
请按照以上步骤将您在之前部分中创建的 AWS S3 云存储注册为大数据文件共享。
- 从 ArcGIS Server Manager 登录到您的 GeoAnalytics Server 站点。
您可以作为发布者或管理员进行登录。
注:
在 GeoAnalytics Server 10.5.1 中,无法使用 IAM 凭据注册 AWS 云存储。
- 转至站点 > 数据存储,然后从注册下拉列表中选择大数据文件共享。
- 请在注册大数据文件共享对话框中提供以下信息:
- 输入大数据文件共享的名称。
- 从类型下拉列表中选择云存储。
- 从云存储下拉列表中选择 AWS 云存储的名称。
- 单击创建,将您的云存储注册为大数据文件共享。
现在,您拥有 AWS 云存储的大数据文件共享和清单。您的门户中的大数据文件共享项目将指向 GeoAnalytics Server 中的大数据目录服务。
请按照以上步骤将您在上一部分中创建的 Azure 云存储注册为大数据文件共享:
- 从 ArcGIS Server Administrator Directory 登录到您的 GeoAnalytics Server 站点。
ArcGIS Server Administrator Directory 要求您作为管理员进行登录。要连接您的联合 GeoAnalytics Server 站点,必须使用门户令牌(需要门户管理员凭据)或作为 GeoAnalytics Server 站点的主站点管理员进行登录。如果您不是门户管理员或者没有主站点管理员帐户信息权限,请联系您的门户管理员为您完成这些步骤。
- 转至数据 > registerItem。
- 复制下列文本并将其粘贴到项目文本框中。注册到您的 GeoAnalytics Server 站点时,请使用您所需的大数据文件共享名称更新值 <bigDataFileShareName>,并使用您为 Azure 云存储指定的名称更新值 <cloudStoreName>。
{ "path": "/bigDataFileShares/<bigDataFileShareName>", "type": "bigDataFileShare", "info": { "connectionString": "{\"path\" : \"/cloudStores/<cloudStoreName>\"}", "connectionType": "dataStore" } }
- 单击注册项目。
注册项目后,大数据文件共享将作为数据存储显示在 ArcGIS Server Manager 中。
- 从 ArcGIS Server Manager 登录到您的 GeoAnalytics Server 站点 GeoAnalytics Server 站点。
您可以作为发布者或管理员进行登录。
- 转至站点 > 数据存储,然后单击新的大数据文件共享旁边的重新生成清单按钮。
现在,您拥有 Azure 云存储的大数据文件共享和清单。您的门户中的大数据文件共享项目将指向 GeoAnalytics Server 中的大数据目录服务。
注册大数据文件共享
要将文件共享、HDFS 或 Hive 云存储注册为大数据文件共享,请通过 ArcGIS Server Manager 连接到您的 GeoAnalytics Server 站点。有关所需步骤的详细信息,请参阅 ArcGIS Server 帮助中的使用 Manager 将数据注册到 ArcGIS Server。
提示:
上一部分中介绍了将云存储注册为大数据文件共享的步骤。
注册大数据文件共享后,将生成一个清单,其中介绍共享位置中的数据集格式,包括表示几何和时间的字段。将在门户中创建一个大数据文件共享项目,该项目指向注册数据的 GeoAnalytics Server 中的大数据目录服务。有关大数据目录服务的详细信息,请参阅 ArcGIS Services REST API 帮助中的大数据目录服务文档。
修改大数据文件共享
创建大数据目录服务后,系统将自动生成一个清单并将其上传到注册数据的 GeoAnalytics Server 站点。在生成清单的过程中,可能无法始终正确估算表示几何和时间的字段,您可能需要应用编辑。要编辑清单,请遵循使用 Manager 编辑大数据文件共享中的步骤。有关大数据文件共享清单的详细信息,请参阅 ArcGIS Server 帮助中的了解大数据文件共享清单。
在大数据文件共享中运行分析
可通过支持 GeoAnalytics Server 的任何客户端在大数据文件共享的数据集上运行分析,具体包括:
- ArcGIS Pro
- Portal for ArcGIS 地图查看器
- ArcGIS REST API
要通过 ArcGIS Pro 或 Portal for ArcGIS 地图查看器在大数据文件共享上运行分析,请选择要使用的 GeoAnalytics Tools。对于工具的输入,请浏览到 ArcGIS Pro 的门户下或 Portal for ArcGIS 地图查看器的浏览图层对话框中数据所在位置。如果您之前注册了数据,则该数据将位于我的内容中。否则,请在群组或所有门户中查找。请注意,为分析选择的大数据文件共享图层不会显示在地图中。
注:
请确保您登录到具有已注册大数据文件共享的访问权限的门户帐户。可使用项 bigDataFileShare* 搜索门户以快速查找您可以访问的所有大数据文件共享。
要通过 ArcGIS REST API 在大数据文件共享上运行分析,需要使用大数据目录服务 URL 作为输入。该 URL 格式将为 {"url":" https://webadaptorhost.domain.com/webadaptorname/rest/DataStoreCatalogs/bigDataFileShares_filesharename/BigDataCatalogServer/dataset"}。例如,如果计算机名为 example、域名为 esri、Web Adaptor 名为 server、大数据文件共享名为 MyData 且数据集名为 Earthquakes,则 URL 将为:{"url":" https://example.esri.com/server/rest/DataStoreCatalogs/bigDataFileShares_MyData/BigDataCatalogServer/Earthquakes"}。有关通过 REST 的大数据分析输入的详细信息,请参阅 ArcGIS Services REST API 文档中的要素输入主题。