Skip to content

Commit c37b5d1

Browse files
authored
Merge pull request #2956 from port-labs/entities-table-performance
add performance section to entities table
2 parents 0d88135 + 92b80d9 commit c37b5d1

File tree

1 file changed

+19
-2
lines changed

1 file changed

+19
-2
lines changed

docs/customize-pages-dashboards-and-plugins/page/catalog-page.md

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -183,16 +183,24 @@ The description will be displayed at the top of the page, under the page title:
183183

184184
<img src='/img/software-catalog/pages/catalogPageDescription.png' width='80%' border='1px' />
185185

186+
## Performance
187+
188+
Large entity tables can result in long loading times. Use the following tips and best practices to improve performance.
189+
190+
The [initial filters](#initial-filters) and [excluded properties](#excluded-properties) are defined when creating the page, while [calculation properties](#calculation-properties) are configured as part of the blueprint definition.
191+
186192
### Initial filters
187193

188-
In some cases, an entities table may be very large, resulting in long loading times. To prevent this, you can define filters that resolve when Port queries the data (rather than after querying).
194+
Initial filters are the most effective way to reduce loading times. You can define filters that resolve when Port queries the data (rather than after querying, like table filters), reducing the number of entities displayed in the table.
195+
189196
To define such a filter, use the `Initial filters` field when creating a page:
190197

191198
<img src='/img/software-catalog/pages/initialFiltersForm.png' width='50%' border='1px' />
192199

193200
<br/><br/>
194201

195-
You can define any [supported rule](/search-and-query/#rules) in JSON format. Here is an example that will only display `Deployments` that were updated in the past month:
202+
You can define any [supported rule](/search-and-query/#rules) in JSON format.
203+
Here is an example that will only display `Deployments` that were updated in the past month:
196204

197205
```json showLineNumbers
198206
[
@@ -211,10 +219,19 @@ You can use [dynamic properties](/search-and-query/#dynamic-properties) of the l
211219
### Excluded properties
212220

213221
Another way to reduce loading times is to exclude undesired properties from an entities table when querying the data. When using this option, the new table will not contain columns for the excluded properties.
222+
223+
We recommend excluding properties with no actual benefit when shown in the table, such as large object properties, long array properties, and other complex data types.
224+
214225
To do this, use the `Excluded properties` field when creating a page:
215226

216227
<img src='/img/software-catalog/pages/excludePropertiesForm.png' width='50%' border='1px' />
217228

229+
### Calculation properties
230+
231+
While calculation properties provide powerful functionality, they can impact performance when used in blueprints that have many entities. To improve performance, consider excluding calculation properties from the table or replacing them with regular properties.
232+
233+
To learn more about calculation properties performance, refer to the [calculation property](/build-your-software-catalog/customize-integrations/configure-data-model/setup-blueprint/properties/calculation-property/#performance-impact) page.
234+
218235
## Customization
219236

220237
The entities table can be customized, which will define the users' view of the Port platform.

0 commit comments

Comments
 (0)