The Field Enricher (File) Processor is used to enrich (or join) event records with attribute data contained in a system file rather than from a published feature service. GeoEvent enrichment from a system file requires the folder containing the file be registered with GeoEvent Server as a data store. Once a registered system folder is specified, the processor can retrieve the enrichment data from a named file.
Examples
The following are example uses of the Field Enricher (File) Processor:
- The processor can be used to enrich (or join) real-time 311 service-area phone call records with a specific location from a lookup table of addresses. The attribute join can occur using a matching phone number associated with the 311 call and the address from the table. The enriched event record can provide a specific location for the 311 call that a service responder can navigate to.
- The processor can be used to enrich (or join) real-time flight data with corresponding arrival airport information from a look-up table of airports. The attribute join can occur using a shared IATA airport code associated with the flight’s arrival destination and the airport data’s IATA code field. The enriched flight event record can provide additional information about the arrival airport such as reference links to terminal information, baggage claim, and ground transportation.
Usage notes
Keep the following in mind when working with the Field Enricher (File) Processor:
- When using a text file as the source for enrichment, the file must follow the format illustrated below. Specifically, the first line of the file must identify the field names as comma-separated values. The second line must specify the data type of each field. The file’s data values are entered starting with the third line of the file.
PilotName,PilotPhone,PilotYearsOfService,PilotActive String,String,Integer,Boolean John Doe,111-111-1111,4,TRUE Jane Doe,222-222-2222,7,TRUE Richard Doe,333-333-3333,12,TRUE
- GeoEvent data enrichment relies on what database professionals refer to as a table join. A field name can be specified from a feature service's table and the name of the GeoEvent field on which a join can be performed. While the actual field name from a feature service's table must be provided, the GeoEvent field on which the join will be performed can be specified using either the name of the GeoEvent field or a tag applied to a field in the GeoEvent Definition associated with the event being processed.
- A comma-separated list of the fields to be included in the enrichment can be created by selecting fields or entering them manually. Optionally, specify the tags that GeoEvent Server should apply to each field it creates as a second list of comma-separated values.
- GeoEvent data enrichment with the creation of fields alters the event record's schema, which requires GeoEvent Server to create a new GeoEvent Definition. The new GeoEvent Definition will be managed by GeoEvent Server and deleted if changes are made to the processor or the GeoEvent Service in which the processor is used.
- When identifying an existing field to use in the GeoEvent Join Field parameter, it is not required that you specify a GeoEvent Definition first. Choosing a GeoEvent Definition from the Definition menu only narrows the list of available fields to choose from in the Field menu.
Parameters
The following are the parameters for the Field Enricher (File) Processor:
Parameter | Description |
---|---|
Name |
A descriptive name for the processor used for reference in GeoEvent Manager. |
Processor |
Specifies the processor selected. |
Registered Folder | The system folder registered as a data store in GeoEvent Server. The file must reside in the registered system folder path for GeoEvent Server to read it. Note:You can register a new system folder as a data store by clicking Register ArcGIS Server. Alternatively, a new data store connection can be registered in GeoEvent Manager by browsing to Site > Data Stores. |
File Name | The name of the file used to enrich event records. The name and file type should be specified (for example, PilotData.csv). The file must exist in the location of the registered folder. |
File Join Field | The name of the field in the file used to perform an attribute join with processed event records. Joins are made on the corresponding value of this field and the field specified in the GeoEvent Join Field parameter. Note:The name and data type of the file specified in the File Join Field parameter must match the name and data type specified in the GeoEvent Join Field parameter for a successful join to occur. |
Target Fields | The target fields to which to write the enriched data. The default is New Fields.
|
Enrichment Fields | The fields from the file to use to enrich (join to) processed event records. Use a comma-separated list, with no spaces, to choose more than one field for event record enrichment (for example, PilotName,PilotPhone,PilotActive). |
Field Tags (Conditional) | The tag, or a comma-separated list of tags, to apply to the new fields appended to the processed event record. The order of the tags must match the order of the specified enrichment fields (for example, GEOMETRY,TRACK_ID,TIME_START). Note:The tags must already exist in GeoEvent Manager; the processor will not create new tags. The parameter is shown when Target Fields is set to New Fields and is hidden when set Existing Fields. |
New GeoEvent Definition Name (Conditional) | The name assigned to the new GeoEvent Definition. The new GeoEvent Definition will combine the schema of the inbound event record with the new fields used for storing the enrichment values from the file. The parameter is shown when Target Fields is set to New Fields and is hidden when set to Existing Fields. |
GeoEvent Join Field | The name of the field from the event record used to perform an attribute join with data from the file. Joins are made on the corresponding data value in this field and the field selected in the File Join Field parameter. Note:Use the Definition menu to identify the GeoEvent Definition of the inbound event record. Choosing a GeoEvent Definition will limit the number of fields to choose from. Use the Field menu to identify the name of an existing field to be used for the join. |
Considerations and limitations
There are several considerations to keep in mind when using the Field Enricher (File) Processor:
- The file used for enrichment must have comma-delimited data and follow a structure in which the first line in the file identifies the field names, the second line identifies the field types, and the third line onward identifies the data values. The processor does not support other structures.
- Consider the field types of both the file and event record when trying to perform enrichment with the processor. It is recommended that the file’s field types match the event record field types.
- When specifying a registered folder, UNC paths are supported. However, it is recommended the enrichment file be stored on the local machine running GeoEvent Server to avoid network latency issues.