- Event ingest rewritten to be more performant.
- Data stored in Postgres table partitions. Dropping the old partition tables is also much faster than deleting rows nightly.
- Event ingest APIs sped up - quickly checking permissions and then forwarding the task to a celery background worker.
- All events saved in bulk batches.
- New async Django views using django-ninja for our API. By default, uwsgi is still used and runs synchronously.
- New API documentation