The Feature layer output writes data pipeline datasets to a hosted feature layer or hosted table. You can create a feature layer or table, replace the data in an existing feature layer or table, or add and update records in an existing feature layer or table.
Parameters
The following table outlines the parameters used in the Feature layer output:
Parameter | Description |
---|---|
Input dataset | The dataset that will be written as a feature layer. |
Geometry | The point, line, or polygon geometry field containing the locations that will be used in the output feature layer. If no geometry field is specified, the output will be a hosted table. |
Time type | Specifies the time type of the output feature layer. The options are Instant, Interval, or None. None is the default. |
Time | The time field containing the time stamps that will be used in the output layer. This parameter is required if Time type is Instant. |
Start time | The time field containing the start time stamps that will be used in the output layer. This parameter is required if Time type is Interval. |
End time | The time field containing the end time stamps that will be used in the output layer. This parameter is required if Time type is Interval. |
Output method | Specifies the method that will be used to write the output results. The options are Create (the default), Replace, or Add and update. |
Feature layer | The hosted feature layer or table that will be replaced with new data. This parameter is required if Output method is Replace or Add and update. |
Unique identifier | The field containing unique values for each record. This parameter is required to update existing records in a feature layer using the Add and update output method. |
Output name | The name for the output feature layer or table. |
Overwrite if layer already exists | Specifies whether an existing layer with the provided output name will be overwritten (checked). |
Folder | The output folder where the feature layer or table will be saved. |
String field length | An optional parameter for specifying the length of all output string fields. The default is 4000 single-byte characters. |
Usage notes
To run a data pipeline, at least one output must be configured.
Use the Input dataset parameter to identify the dataset that will be written as a hosted feature layer or table.
Use the Geometry parameter to optionally set geometry on the output. If the input dataset has a single geometry field, it will be specified by default. If the input dataset has multiple geometry fields, specify the one that will be used in the feature layer. Geometry fields not specified in this parameter will be dropped and not available in the output. If no geometry field is specified, the output result will be a table.
Optionally, you can set time on the output by specifying a value for Time type. The options are as follows:
- Instant—A single moment in time. Use the Time parameter to specify the field that represents the time of the record. Time fields must be of type date.
- Interval—An interval in time represented by a start time and an end time. Use the Start time parameter to specify the field that represents the start time of the record, and the End time parameter to specify the field that represents the end time of the record. Time fields must be of type date.
- None—The output feature layer will not have time.
To modify the item properties, such as the summary or tags, browse to your portal content page and edit the feature layer item directly.
Learn more about item details in ArcGIS Online
Use the Output method parameter to specify how the data pipeline results will be written to a feature layer or table. The options are as follows:
- Create—A hosted feature layer or table will be created. The output will be stored in your portal content. The output will contain the features (or rows) and fields (or columns) from the input dataset. The following parameters are available when the Create output method is selected:
- The Output name parameter specifies the name of the layer that will be created or overwritten.
- The Overwrite if layer already exists parameter allows you to rerun the data pipeline without changing the output name, as well as to change the schema or geometry type of an existing layer. This parameter is enabled by default. If the layer does not already exist in the organization, a new layer will be created on the first run of the data pipeline and will be overwritten in subsequent runs. Overwriting a layer is permanent and cannot be undone.
- Replace—The data in an existing feature layer or table will be completely replaced.
- Add and update—Append new records or update existing records in a feature layer or table. To update existing records, you must specify a field containing unique values to identify existing records using the Unique identifier parameter. The field you specify must be set as a unique field on the feature layer or table item page. See Add a unique constraint to a field for more information.
Use the String field length parameter to specify the length of the string fields to be created in the output feature layer. The specified length applies to all output string fields. The default is 4,000 single-byte characters. If strings in the input dataset exceed the specified string length, the values will be truncated and written to the output feature layer.
Limitations
The following are known limitations of the Feature layer output:
- You can only write to a single layer or table for each output. To create multiple outputs, you must configure multiple output feature layer elements in the diagram. Each output will be stored in your portal content as its own item.
- If you have multiple output feature layers configured and one fails to write, the data pipeline will continue writing the remaining output feature layers. Any output feature layers that failed to write will be rolled back.
- Not all field types supported from input sources will be maintained when writing results to a feature layer. See the table below for details on how field types will be converted.
- You cannot use Replace or Add and update for feature layers or tables you do not own unless you are an administrator, or the layer or table is shared with a shared update group that you are a member of.
- When using Replace or Add and update, the fields are updated based on matching field names. Field matching is case sensitive. To match field names to the desired output layer, use the Map fields tool. To modify a selection of field names, use the Update fields tool.
- When using the Replace option, the following limitations apply:
- Replacing data for a feature layer or table that is the origin of a relationship is not supported.
- If sync is enabled on the feature layer or table, replace is not supported.
- The geometry type of the layer to replace must be the same as the input dataset. For example, you cannot replace a table with polygons, or replace points with polylines.
- The time type of the layer to replace must be the same as the input dataset. For example, you cannot replace instant time properties with interval time properties.
- If the spatial reference of the layer to replace is different than the input geometry, the input geometry will be projected to the spatial reference of the layer to replace.
- If a field exists in the data pipeline result but not in the layer to replace, it will not be added to the layer.
- If a field exists in the layer to replace but not in the data pipeline result, it will be maintained in the layer and appended with null values or the default values defined by the feature layer.
- When using a combination of the Create and Overwrite if layer already exists output options, the following limitations apply:
- The layer to overwrite must be owned by you.
- The layer to overwrite must be created by Data Pipelines.
- The overwrite option is not recommended for scheduled or automated runs. Unlike Replace and Add and update, the overwrite option can alter the schema, geometry, and records, which may result in broken downstream workflows such as pop-ups or filters.
- Overwrite operations do not rollback when a failure to write occurs, which may result in the loss of the layer until the data pipeline is run again. The Replace and Add and update options rollback when a failure occurs and the original data is maintained.
- You cannot update the spatial reference of an existing feature layer using the overwrite option. The geometry field must be in the same spatial reference as the existing feature layer. To update the spatial reference of the input geometry, use the Project geometry tool.
- The String field length parameter applies to all output string fields. To create a feature layer with string fields of varying lengths, create a new layer and use the replace output method for that layer. This will maintain the lengths of the fields you defined and update the feature layer with the records from the data pipeline. To learn more about creating a feature layer, see Define your own layer.
You can convert field types and values from the input dataset to new types and values that are supported in the output feature layer. Data type conversions are outlined in the following table:
Input dataset field type | Output feature layer field type | Notes |
---|---|---|
String | esriFieldTypeString | String fields in output feature layers are created with a length of 4,000 characters by default. Use the String field length parameter to specify a different length. Values that exceed the specified length will be truncated. |
Small integer | esriFieldTypeInteger | |
Integer | esriFieldTypeInteger | |
Big integer | esriFieldTypeBigInteger | |
Float | esriFieldTypeSingle | |
Double | esriFieldTypeDouble | |
Date | esriFieldTypeDate | Date fields will be written without a time zone and stored in the format of milliseconds from epoch. When using preview to view date values, the time zone of the locale of the browser or client will be used. |
Date only | esriFieldTypeDateOnly | |
Blob | esriFieldTypeString | BLOB values will be converted to base64 encoded strings in the output feature layer. When previewing this field in the app, the values will be converted to a string ("BLOB"). |
Boolean | esriFieldTypeString | Boolean values will be converted to strings and stored in the feature layer in a string field. True values will be written as "True" and false values will be written as "False". |
Array | esriFieldTypeString | Array values will be converted and stored as string fields. |
Map | esriFieldTypeString | Map values will be converted and stored as string fields. |
Struct | esriFieldTypeString | Struct values will be converted and stored as string fields. |
Geometry | esriFieldTypeGeometry | The geometry field can represent point, line, or polygon geometries depending on the Geometry parameter value. |
Licensing requirements
The following licensing and configurations are required:
- Creator or Professional user type
- Publisher, Facilitator, or Administrator role, or an equivalent custom role
To learn more about Data Pipelines requirements, see Requirements.
Related topics
See the following for additional information:
- To learn how to update existing feature layers on an automated schedule, see Schedule a data pipeline task.
- To learn about properties set on feature layers, see Manage hosted feature layers.
- To learn more about feature layers, see Feature layers in the ArcGIS Online help.