Basic search enhancement
While performing basic search in Atlas, you can exclude header attributes of entities from the response to reduce latency.
The Basic Search feature in Atlas has AtlasEntityHeader
data type of each
entity in the response.
The AtlasEntityHeader
data type has multiple attributes including
classification and terms. AtlasEntityHeader
requests the Janusgraph database to
provide the information for each attribute. This process can be time consuming increasing the
response latency.
To overcome this situation, you can add a flag to exclude generic attributes and add only the
selected attributes from the attributes
field in the response.
In the request payload, including the following improves the search experience:
- Attributes having
entityTypes
excludeHeaderAttributes=true
- Valid entity attributes (not relationship) in the
attributes
field
An example payload request:
Request
{
"excludeDeletedEntities": true,
"includeSubClassifications": true,
"includeSubTypes": true,
"includeClassificationAttributes": true,
"limit": 25,
"offset": 0,
"typeName": "hdfs_path",
"attributes": ["path", "name"],
"excludeHeaderAttributes": "true"
}
Response
{
"queryType": "BASIC",
"searchParameters":
{ "typeName": "hdfs_path", "excludeDeletedEntities": true, "includeClassificationAttributes": true, "includeSubTypes": true, "includeSubClassifications": true, "limit": 25, "offset": 0, "attributes": ["path", "name"] }
,
"attributes": {
"name": ["path", "name"],
"values": [
["/data/warehouse/customer", "customer"],
["/data/warehouse/sales", "sales"]
]
},
"approximateCount": 2
}