Open strawgate opened 3 weeks ago
It looks like there is a profiling integration so this might be easier than I thought
Top hot functions based on 0.7.0
Seems like there might be an opportunity to optimize sanitizing attributes and sanitizing datastream names.
The simplest solution is probably to just cache the sanitized names
Cache datastream and attribute normalization: Issue: https://github.com/legrego/homeassistant-elasticsearch/issues/293 PR: https://github.com/legrego/homeassistant-elasticsearch/pull/294
Reduce attribute counts:
Issue: https://github.com/legrego/homeassistant-elasticsearch/issues/297
PR: https://github.com/legrego/homeassistant-elasticsearch/pull/298
I'd like to do a one-off performance profiling test (or maybe a pytest) with a high number of entities to test memory/CPU usage and make sure there's nothing we're doing anywhere that is particularly bad.