Using the Feature Service

Regrid's Esri-compatible Feature Service enables seamless integration of our comprehensive, standardized nationwide parcel dataset into ESRI tools via a simple URL.

This large and detailed dataset includes over 158 million parcels, each enriched with over 100 attributes such as tax assessments, administrative units, environmental variables, and more.

To ensure optimal performance and a smooth user experience, it's essential to narrow down the data to your scope of interest. Zooming in to the county level (ESRI zoom 9) or closer is recommended for both visualization and geoprocessing tasks. This will help ensure parcel polygons display clearly and reduce unnecessary data processing.

The default coordinate system for the Feature Service is WGS84 (EPSG: 4326). If a different coordinate system is required, you can use the outSR custom parameter to request data in your desired coordinate system during import. Ensure all of your data shares a CRS before you begin any geoprocessing.

By following these best practices, you can efficiently work with this large dataset in ESRI tools.

Best Practices Order of Operations

  1. Use outFields to limit the attributes upon import.

  2. Apply Definition Queries to narrow down the data geographically and/or by attribute.

  3. Use Optimized Fields for faster queries.

  4. Set a Processing Extent to focus your analysis on relevant spatial data.

  5. Iterate with ModelBuilder or ArcPy when handling large datasets or multiple counties.

Step 1: Limit the Data with outFields

The first step in using the Regrid Feature Service is to reduce the view of the dataset to the relevant attributes for your analysis. By default, all fields are included, but in most cases, you only need a subset of the available data.

outFieldsImage.png

Why It’s Important:
Limiting the attributes helps improve query performance and reduces the amount of data being processed, therefore improving the query response time.

How to Do It:
Append the outFields parameter to the request URL to ensure that only the selected attributes are returned.

Example Request URL in ArcPro: https://fs.regrid.com/{token}/rest/services/premium/FeatureServer/0?outFields=id,ll_uuid,geoid,zoning,saleprice,ll_gissqft

Important Notes:

  • The request must always begin with id, followed by the desired attributes.
  • Feature Service attribute names are aliased for a user-friendly experience, but original names must be passed for outField requests.
  • In ArcGIS Pro, optionally use the Custom Request Parameter to pass outFields in the URL.
  • In ArcGIS Online, use the URL directly without adding any extra fields in the Custom Parameters section. Always store your token credentials with service item when using ArcGIS Online.

outFields_stored_credential.png

Step 2: Apply Definition Queries to Filter by Geography and Attributes

Use Definition Queries to filter the data based on geographical and attribute-based criteria. This will significantly improve performance and make your analysis more focused.

Why It’s Important:
By applying definition queries early in the workflow, you narrow down the dataset to only the relevant features, ensuring faster processing and more precise results.

How to Do It:
Geographic Filtering:
Narrow the dataset by geography using fields like state2 (state) or geoid (county).

  • State: state2 = 'MI'
  • County: geoid = '26163'

Multiple Counties (use IN for efficiency): ` geoid IN ('26163', '26164', '26165')`

Attribute Filtering: Further refine your dataset using attributes such as zoning or other relevant fields.

Example: zoning = 'Residential'

Creating Definition Queries

  • Use AND operators to combine conditions (e.g., state2 = 'MI' AND zoning = 'Residential').
  • For multiple values in a single field, IN is more efficient than using multiple OR conditions.
  • Avoid complex SQL (e.g. nested queries or using SELECT in the WHERE clause).
  • The LIKE operator is supported for fields like zoning, county, and address, but it’s less efficient than using strict equality.

Important Notes:
Regrid’s Feature Service handles case-insensitive queries for string fields.

Regex is not yet supported. Let us know if this is something you are interested in.

Step 3: Use Optimizated Fields for faster queries

Once the data is filtered, you can further enhance performance by using optimized fields. Commonly queried fields are indexed, allowing for faster query performance.

Why It’s Important:
Optimized fields reduce query time by utilizing pre-indexed database fields, which speeds up your queries and minimizes the risk of timeouts.

How to Do It:
Refer to this list of optimized fields for use in your queries. These fields are indexed, so querying them will be faster.

We have optimized queries on a set of commonly-used fields. Queries on other fields may be slower or fail to complete if the request takes longer than two minutes.

Field Description
ll_gisacre numeric / double precision
ll_gissqft numeric / integer
usps_vacancy text
rdi text
ll_bldg_count numeric / integer
saleprice numeric / double precision
zoning text
zoning_id numeric
zoning_type text
zoning_subtype text
lbcs_activity numeric
lbcs_function numeric
lbcs_structure numeric
lbcs_site numeric
lbcs_ownership numeric
saledate date
szip text
ll_uuid uuid
landval numeric
geoid text
owner text
parcelnumb text
state2 text
path text
county text
yearbuilt numeric / integer
improvval numeric / double precision
alt_parcelnumb1 text
census_block text
census_blockgroup text
census_tract text
census_school_district text
qoz text
ll_stack_uuid uuid

Step 4: Set the Processing Extent

Use the Processing Extent setting in the Environment tab of your geoprocessing tools to focus analysis on a specific region. This helps to ensure that only the relevant data for your analysis is processed.

Why It’s Important:
Setting a processing extent reduces the data being processed and speeds up spatial queries, especially when working with large datasets.

How to Do It:
In ArcGIS Pro, manually select the counties of interest or use a boundary polygon to set the extent.

For smaller areas, use Current Display Extent in the Environments tab to automatically limit the analysis to the visible area of your map.

Step 5. Iterate with ModelBuilder or ArcPy

For analyses spanning multiple counties or large regions, the dataset may still be too large to handle in a tool or single query. In such cases, you can break the query into smaller chunks.

Why It’s Important:
Iteration allows you to handle large datasets by processing smaller, more manageable portions of the data, which helps avoid timeouts or slow processing.

How to Do It:
Use ModelBuilder or ArcPy to set up an iterative process. For example, if working with multiple geographies, create a loop that runs a query for each area individually.

Summary: Combine All Best Practices for Optimal Performance

To get the best performance, combine the techniques outlined in the previous steps:

  1. Use outFields to limit the attributes to only what’s necessary.

  2. Apply Definition Queries to filter the data geographically or by attribute.

  3. Leverage Optimized Fields for faster queries.

  4. Set a Processing Extent to focus the analysis on a specific region.

  5. Use ModelBuilder or ArcPy to iterate over smaller chunks when necessary.

  6. Adjust Definition Queries and Processing Extents for each iteration to ensure that only the relevant data is processed.

Handling Result Limits and Pagination

Note to ArcGIS JavaScript SDK and Feature Service as an API Users: By default, the Feature Service limits query results to 3,000 records. If your query requires more than this, you can use pagination to retrieve the additional results.

Example Pagination Request: https://fs.regrid.com/{token}/rest/services/premium/FeatureServer/0/query?resultOffset=3000&orderByFields=parcelnumb

We appreciate your feedback and questions at tech@regrid.com.

In this section