Skip to content

Commit

Permalink
Update readme
Browse files Browse the repository at this point in the history
  • Loading branch information
tonyhb committed Feb 2, 2024
1 parent a643bc6 commit 9d92d8e
Showing 1 changed file with 16 additions and 4 deletions.
20 changes: 16 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
TODO:
# Aggregate expression engines

- Bool
- Ints
- Floats
This repo contains Inngest's aggregate expression engine service, turning O(n^2) expression
matching into O(n).

It does this by:

1. Parsing each expression whilst lifting literals out of expressions
2. Breaking expressions down into subgroups (matching && comparators)
3. Storing each group's comparator in a matching engine for fast lookups

When an event is received, instead of matching the event against every expression, we instead
inspect each matching engine to filter out invalid expressions. This leaves us with a subset of
expressions that are almost always matching for the event, simplifying the number of expressions
to match against.

Copyright Inngest 2024.

0 comments on commit 9d92d8e

Please sign in to comment.