|
|
|
|
|
by atombender
398 days ago
|
|
This is a fun project. From what I can tell, this doesn't replace the lower level page heap storage, but instead actually provides new implementation of table and indexes through a plugin mechanism called table access methods and index access methods, respectively. This looks very similar to the virtual table mechanism in SQLite, for example, but the C API looks much nicer. I've not paid much attention to the Postgres extension API, but I'm pleasantly surprised it's that flexible. I've been hearing for years about how Postgres pluggable engine interface isn't flexible enough to implement certain features, but it actually looks really rich. Maybe some of those improvements come from recent work by the OrioleDB people, and others like Citus who develop various alternative table engines? |
|
I was also pleasantly surprised by this! I've actually been working on this project for more than a year now with a few false starts trying to find the "right" way to integrate with Postgres that fits well enough with FoundationDB.
Yes! There is a lot of ongoing work on Postgres extensibility and it keeps getting better. The ecosystem is really amazing. I'm for example excited about work being done by Enterprise DB to make custom index access method more generically pluggable, which would allow them to be used for primary keys amongst other things: https://www.postgresql.org/message-id/flat/E72EAA49-354D-4C2...