This is of lower priority to most existing customers - since sqlite is generally part of OS, such as iOS, Mac, Android Room-to-Sqlite, Chromium, this will not yield direct benefit to the others.
However, LevelDB is:
fast
small (350KB binary, about x1.5 times smaller than sqlite)
Creating this item as a placeholder - Good first issue for an intern or hackathon project.
Perhaps the customer needing it can take this on and contribute the PR.
IOfflineStorage (and the packager, as a consumer of records from the storage observer) use not-just-key-value queries, and in particular query on the latency field and sort on several other fields. We don't have the statistics to know how much benefit we're getting from the WHERE filter and ORDER BY sorting.
LevelDB is not as resilient/durable as some of the competition, but then we store data in a completely volatile MemoryStorage component, so maybe losing a database now and then is no big deal.
LevelDB is single-process. On some platforms, multiple processes can share a single telemetry database file.
Nothing here to say that LevelDB wouldn't work as IOfflineStorage. These are just things to be aware of going in.
Some of our prospective customers use this technology: https://github.com/google/leveldb
This is of lower priority to most existing customers - since sqlite is generally part of OS, such as iOS, Mac, Android Room-to-Sqlite, Chromium, this will not yield direct benefit to the others.
However, LevelDB is:
Creating this item as a placeholder - Good first issue for an intern or hackathon project. Perhaps the customer needing it can take this on and contribute the PR.