更新大数据连接数据集属性 (GeoAnalytics Desktop)

摘要

用于更新大数据连接 (BDC) 数据集的属性。 该工具可以修改指定 BDC 数据集的字段、几何、时间和文件设置。

使用情况

  • 此工具需要 BDC。 要创建 BDC,请使用新建大数据连接对话框创建大数据连接工具。

  • 在以下情况中,可以使用此工具修改 BDC 数据集方案、几何或时间,以用于分析或可视化:

    • 您的 CSV 数据集已注册到所有字符串类型字段中,并且您需要将这些字段设置为数字以用于分析。
    • 您的 BDC 数据集具有两个单独位置的属性值(例如出租车上客和下客点),并且您需要更改用于分析的几何。
    • 您的工作流要求在输入图层上设置时间。
    • 您要与仅对要素子集感兴趣的同事共享 BDC 数据集,因此您可以添加定义查询表达式并隐藏一些不使用的字段。

  • 可修改以下属性:

    • 定义查询 - 用于限制分析中使用的要素的表达式。
    • 字段 - 字段名称、字段类型和可见性。
    • 几何 - 几何的表示方式。 这些对于 shapefile 是不可编辑的。
    • 时间 - 时间的表示方式。
    • 文件 - 用于读取数据集的文件属性。

  • 使用新建大数据连接对话框以获得创建、编辑和预览大数据连接的简化体验。

  • 使用大数据连接数据集参数指定您要修改其属性的 BDC 数据集。 您可以浏览到数据集或使用路径(例如 c:\<path>\MyBDC.bdc\<dataset_name>)来指定数据集(例如 c:\MyBDCFolder\MyBDC.bdc\earthquakes_dataset)。

  • 使用表达式参数定义表达式以限制分析中使用的要素。 向 BDC 数据集添加过滤器类似于在地图的数据集中应用定义查询:指定一个 SQL 表达式以过滤感兴趣的要素。

  • 您可以更新分隔文件的字段类型。 您无法更新其他数据源(例如 shapefile ORC 或 parquet 文件)的字段类型。

  • 您可以修改分隔文件、ORC 和 parquet 文件的几何。 您无法修改源自 shapefile 的数据集的几何。

  • 下表概述了如何在编辑 BDC 数据集时为开始时间结束时间参数指定时间格式。 这些示例显示如何表示时间 2016 年 1 月 2 日下午 9:45:02.05。

    大数据连接中的时间格式

    符号含义示例

    yy

    年,以两位数表示。

    16

    yyyy

    年,以四位数表示。

    2016

    MM

    月,以数字表示。

    011

    MMM

    月,使用三个字母表示。

    Jan

    MMMM

    月,使用完整的拼写表示。

    January

    dd

    天。

    022

    HH

    小时,采用 24 - 小时制;值介于 0 - 23 之间。

    21

    hh

    小时,采用 12 小时制;值介于 1 - 12 之间。

    9

    mm

    分钟;值介于 0 - 59 之间。

    45

    ss

    秒钟;值介于 0 - 59 之间。

    02

    SSS

    毫秒;值介于 0 - 999 之间。

    50

    a

    AM/PM 标记。

    PM

    epoch_millis

    时间以从新纪元开始的微秒为单位。

    1509581781000

    epoch_seconds

    时间以从新纪元开始的秒为单位。

    1509747601

    Z

    以小时表示的时区偏差。

    -0100 -01:00

    ZZZ

    以 ID 表示的时区偏差。

    America/Los_Angeles

    ''

    使用单引号添加不表示此表中列出的值的文本。

    'T'

    下表显示了同一日期的不同格式示例,2016 年 1 月 2 日下午 9:45:02.05:

    时间格式示例

    输入日期日期格式

    01/02/2016 9:45:02PM

    MM/dd/yyyy hh:mm:ssa

    Jan02-16 21:45:02

    MMMdd-yy HH:mm:ss

    January 02 2016 9:45:02.050PM

    MMMM dd yyyy hh:mm:ss.SSSa

    01/02/2017T9:45:14:05-0000

    MM/dd/yyyy'T'HH:mm:ssZ

    You can specify the time zone using one of the following:
    • 时区全称:Pacific Standard Time
    • 以小时表示的时区偏差:-0100 或 -01:00。
    • UTC 或 GMT 缩写
  • 您可以修改分隔文件的以下属性

    • 字段分隔符 - 每个字段的分隔符。 常见分隔符为 ,;
    • 记录终止符 - 每行数据的终止符。 常见终止符为 \n\t
    • 引号字符 - 在源数据集中用于引号的字符。
    • 具有标题行 - true 或 false 值用于指示源数据集是否包含标题。 如果在数据集中包含标题行,则标题将用于字段名。
    • 编码 - 源数据集使用的编码类型。 默认格式为 UTF-8。

  • 更新大数据连接数据集属性工具用于更新单个数据集的属性。 使用以下工具来修改 BDC:

  • 您可以选择手动编辑 BDC 文件。 在以下情况下,您应该始终手动修改 .bdc 文件:

    • 您已使用一个或多个字段表示 x、y 或 z 位置。
    • 您要更新源路径。

    了解有关大数据连接文件格式化的详细信息

  • 此地理处理工具由 Spark 作为支持。有关大数据连接及其使用方法的详细信息,请参阅大数据连接

参数

标注说明数据类型
大数据连接数据集

要更新的 BDC 数据集。 根据源数据(shapefile、分隔文件、ORC 或 parquet 文件),编辑选项将有所不同。

Table View
表达式
(可选)

该表达式用于限制将在分析中使用的要素。

SQL Expression
字段属性
(可选)

指定要修改的字段名称和属性。

指定字段是可见还是隐藏。

  • 选中 - 这些字段将被设置为可见,并且可在地理处理工具中使用。 这是默认设置。
  • 未选中 - 这些字段将被隐藏,并且无法用作地理处理工具的输入。

  • 短整型此字段类型将为短型。
  • 长整型此字段类型将为长整型。
  • 双精度此字段类型将为双精度。
  • 转为浮点型此字段类型将为浮点型。
  • 字符串此字段类型将为字符串。
  • 日期此字段类型将为日期类型。
  • BLOB此字段类型将为 BLOB。
Value Table
几何类型
(可选)

指定将用于在空间上表示数据集的几何类型。 无法为源自 shapefile 的数据集修改几何。

  • 几何类型为点。
  • 折线几何类型为折线。
  • 几何类型为面。
  • 无几何类型。
String
空间参考
(可选)

WKID 值或 WKT 字符串将用于数据集的空间参考。 默认值为 WKID 4326 (WGS84)。 无法为源自 shapefile 的数据修改空间参考。

String
几何格式类型
(可选)

指定几何的格式化方式。 无法为源自 shapefile 的数据修改几何。

  • XYZ将使用两个或多个字段来表示 x,y 和可选的 z。
  • WKT几何将由熟知文本字段中的单个字段表示。
  • WKB几何将由熟知二进制字段中的单个字段表示。
  • GeoJSON几何将由 GeoJSON 格式的单个字段表示。
  • EsriJSON几何将由 EsriJSON 格式的单个字段表示。
String
几何字段
(可选)

用于表示几何的单个字段。 当几何格式为 WKT、WKB、GeoJSON 或 EsriJSON 时,将使用此字段。

String
X 字段
(可选)

用于表示 x 位置的字段。 如果您有多个表示 x 位置的字段,则需要手动修改 .bdc 文件。

String
Y 字段
(可选)

用于表示 y 位置的字段。 如果您有多个表示 y 位置的字段,则需要手动修改 .bdc 文件。

String
Z 字段
(可选)

用于表示 z 位置的字段。 如果您有多个表示 z 位置的字段,则需要手动修改 .bdc 文件。

String
时间类型
(可选)

指定用于临时表示数据集的时间类型。

  • 间隔时间类型将表示具有开始时间和结束时间的持续时间。
  • 即时时间类型将表示时刻。
  • 未启用时间。
String
时区
(可选)

数据集的时区。

String
开始时间
(可选)

用于定义开始时间和时间格式的字段。

Value Table
结束时间
(可选)

用于定义结束时间和时间格式的字段。

Value Table
文件扩展名
(可选)

源数据集的文件扩展名。 无法修改参数值。

String
字段分隔符
(可选)

源数据集中使用的字段分隔符。

String
记录终止符
(可选)

源数据集中使用的记录终止符。

String
引号字符
(可选)

源数据集中使用的引号字符。

String
具有标题行
(可选)

指定源数据集中是否包含标题行。

  • 选中 - 源数据集中包含标题行。
  • 未选中 - 源数据集中不包含标题行。

Boolean
编码
(可选)

用于源数据集的编码类型。 默认情况下,使用 UTF-8。

String

派生输出

标注说明数据类型
更新 BDC

使用应用于特定数据集的已编辑属性更新的 BDC 文件。

File

arcpy.gapro.UpdateBDCDatasetProperties(bdc_dataset, {expression}, {field_properties}, {geometry_type}, {spatial_reference}, {geometry_format_type}, {geometry_field}, {x_field}, {y_field}, {z_field}, {time_type}, {time_zone}, {start_time_format}, {end_time_format}, {file_extension}, {field_delimiter}, {record_terminator}, {quote_character}, {has_header_row}, {encoding})
名称说明数据类型
bdc_dataset

要更新的 BDC 数据集。 根据源数据(shapefile、分隔文件、ORC 或 parquet 文件),编辑选项将有所不同。

Table View
expression
(可选)

该表达式用于限制将在分析中使用的要素。

SQL Expression
field_properties
[field_properties,...]
(可选)

指定要修改的字段名称和属性。

  • SHORT此字段类型将为短型。
  • LONG此字段类型将为长整型。
  • DOUBLE此字段类型将为双精度。
  • FLOAT此字段类型将为浮点型。
  • STRING此字段类型将为字符串。
  • DATE此字段类型将为日期类型。
  • BLOB此字段类型将为 BLOB。

指定字段是可见还是隐藏。

  • TRUE这些字段将被设置为可见,并且可在地理处理工具中使用。 这是默认设置。
  • FALSE这些字段将被隐藏,并且无法用作地理处理工具的输入。
Value Table
geometry_type
(可选)

指定将用于在空间上表示数据集的几何类型。 无法为源自 shapefile 的数据集修改几何。

  • POINT几何类型为点。
  • LINE几何类型为折线。
  • POLYGON几何类型为面。
  • NONE无几何类型。
String
spatial_reference
(可选)

WKID 值或 WKT 字符串将用于数据集的空间参考。 默认值为 WKID 4326 (WGS84)。 无法为源自 shapefile 的数据修改空间参考。

String
geometry_format_type
(可选)

指定几何的格式化方式。 无法为源自 shapefile 的数据修改几何。

  • XYZ将使用两个或多个字段来表示 x,y 和可选的 z。
  • WKT几何将由熟知文本字段中的单个字段表示。
  • WKB几何将由熟知二进制字段中的单个字段表示。
  • GEOJSON几何将由 GeoJSON 格式的单个字段表示。
  • ESRIJSON几何将由 EsriJSON 格式的单个字段表示。
String
geometry_field
(可选)

用于表示几何的单个字段。 当几何格式为 WKT、WKB、GeoJSON 或 EsriJSON 时,将使用此字段。

String
x_field
(可选)

用于表示 x 位置的字段。 如果您有多个表示 x 位置的字段,则需要手动修改 .bdc 文件。

String
y_field
(可选)

用于表示 y 位置的字段。 如果您有多个表示 y 位置的字段,则需要手动修改 .bdc 文件。

String
z_field
(可选)

用于表示 z 位置的字段。 如果您有多个表示 z 位置的字段,则需要手动修改 .bdc 文件。

String
time_type
(可选)

指定用于临时表示数据集的时间类型。

  • INTERVAL时间类型将表示具有开始时间和结束时间的持续时间。
  • INSTANT时间类型将表示时刻。
  • NONE未启用时间。
String
time_zone
(可选)

数据集的时区。

String
start_time_format
[start_time_format,...]
(可选)

用于定义开始时间和时间格式的字段。

Value Table
end_time_format
[end_time_format,...]
(可选)

用于定义结束时间和时间格式的字段。

Value Table
file_extension
(可选)

源数据集的文件扩展名。 无法修改参数值。

String
field_delimiter
(可选)

源数据集中使用的字段分隔符。

String
record_terminator
(可选)

源数据集中使用的记录终止符。

String
quote_character
(可选)

源数据集中使用的引号字符。

String
has_header_row
(可选)

指定源数据集中是否包含标题行。

  • HAS_HEADER源数据集中包含标题行。
  • NO_HEADER源数据集中不包含标题行。
Boolean
encoding
(可选)

用于源数据集的编码类型。 默认情况下,使用 UTF-8。

String

派生输出

名称说明数据类型
updated_bdc

使用应用于特定数据集的已编辑属性更新的 BDC 文件。

File

代码示例

UpdateBDCDatasetProperties 示例(独立脚本)

以下 Python 脚本演示了如何使用 UpdateBDCDatasetProperties 函数。

# Name: UpdateBDCDatasetProperties.py
# Description: Add a filter and modify the schema, time, and geometry for a BDC dataset
# Requirements: ArcGIS Pro Advanced License

# Import system modules
import arcpy

# Set local variables
dataset = r"c:\Projects\MyProjectFolder\my_BigDataConnection.bdc\myBigDataset"
filter = "COUNT > 500"
field_properties = "Field1 FLOAT true;Field2 STRING true;Field3 DOUBLE true"
geometry_type = "POINT"
sref = "4326"
geometry_format = "XYZ"
x_field = "Long"
y_field = "Lat"
z_field = ""
time_type = "INSTANT"
time_zone = "UTC"
time_formats = "Year yyyy"
file_extenstion = "csv"
file_delimitor = ","
file_terminator = r"\n"
file_quotechar = '"'
has_header_row = True
file_encoding = "UTF-8"


# Execute Update BDC Dataset Properties
arcpy.gapro.UpdateBDCDatasetProperties(dataset, filter, field_properties, geometry_type, sref, geometry_format, "",
x_field, y_field, z_field, time_type, time_zone, time_formats, None, file_extension, file_delimitor, file_terminator, 
file_quotechar, has_header_row, file_encoding)

环境

此工具不使用任何地理处理环境。

许可信息

  • Basic: 否
  • Standard: 否
  • Advanced: 是

相关主题