TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: A strongly-typed document DB that runs on any transactional KV store

113 pointsby losfairover 3 years ago

9 comments

monstradoover 3 years ago
This looks really promising! Could you provide at a high-level what this aims to offer over FoundationDB&#x27;s RecordLayer[1]?<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;FoundationDB&#x2F;fdb-record-layer" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;FoundationDB&#x2F;fdb-record-layer</a>
评论 #28363856 未加载
lewisjoeover 3 years ago
Great work! The ideas are intriguing. I want to know more about the quering approach. How is it better than SQL or other document quering representations? What is a <i>concurrent data flow virtual machine</i> ?<p>What is the contract to make this layer talk with the underlying stores (say, POSTGRES)?<p>Just want to pick your brain on these topics. Thanks :)
评论 #28353813 未加载
zackmorrisover 3 years ago
This is great! Can you implement a data-changed event stream like the RethinkDB changefeed and Firebase triggers?<p><a href="https:&#x2F;&#x2F;rethinkdb.com&#x2F;docs&#x2F;changefeeds&#x2F;javascript&#x2F;" rel="nofollow">https:&#x2F;&#x2F;rethinkdb.com&#x2F;docs&#x2F;changefeeds&#x2F;javascript&#x2F;</a><p><a href="https:&#x2F;&#x2F;firebase.google.com&#x2F;docs&#x2F;functions&#x2F;database-events" rel="nofollow">https:&#x2F;&#x2F;firebase.google.com&#x2F;docs&#x2F;functions&#x2F;database-events</a><p>This functionality is critical for writing web apps that reflect the current state when multiple users are collaborating on the same data.<p>I&#x27;ve been down the road many times of starting with a POST-style request&#x2F;response website, only to find that it inevitably needs a realtime event feed over WebSocket to show notifications or otherwise update the view when another user changes some data. I can&#x27;t stress this enough, but, IMHO a database that doesn&#x27;t have this doesn&#x27;t really have anything. And most databases don&#x27;t have this.<p>If that&#x27;s too ambitious, another option would be filters and&#x2F;or callback hooks on the server. That way a process would be notified when something was trying to be changed, or had been changed. Then the user could append events containing the data identifier&#x2F;path onto their own WebSocket manually. Apologies if you&#x27;ve already implemented this and I just haven&#x27;t read the documentation.<p>Another rather selfish ask for myself would be a transpiler from SQL to your RefineASM DSL. Being able to go the other way would be pretty awesome too. I&#x27;d love to design queries using sets and be able to generate the SQL without having to deal with SQL&#x27;s quirks since it&#x27;s so old.
rmoreyover 3 years ago
I love this - a KV store is such a powerful primitive, I&#x27;ve wondered why we don&#x27;t see more projects like this
评论 #28355503 未加载
tluyben2over 3 years ago
Nice work! Been playing with this idea for a while to write something like this (in Rust); now you did a lot of the heavy lifting for what I would need already.
评论 #28353822 未加载
voidmainover 3 years ago
This looks really cool!<p>Perhaps you should show some nontrivial examples of (read) queries in RefineASM.<p>Also, what are your plans (if any) for non primary indexing? Storage plans seem like a good fit, but will you transform RefineASM to maintain the indexes or what? What about using the indexes?
评论 #28354938 未加载
评论 #28355182 未加载
guywhocodesover 3 years ago
Love the concept, I&#x27;m targeting foundationDB for a project but i don&#x27;t want to use it for local development and some deployments.<p>I&#x27;ll explore targeting this with my repository implementation to save some complexity.
danr4over 3 years ago
Looks very very interesting. Nice work.<p>Plans to support more DBs? do you intend for the OS community to build the translation layers?
评论 #28354396 未加载
smoyerover 3 years ago
If a document DB is strongly typed, if should be possible to implement SQL to return results right?