TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Readyset: A MySQL and Postgres wire-compatible caching layer

164 点作者 lsferreira42大约 1 年前

20 条评论

BrentOzar大约 1 年前
In the Microsoft SQL Server space, several of these vendors have come and gone. My clients have been burned badly by &#x27;em, so a few quick lessons learned:<p>Be aware that there are hundreds of open issues[0] and dozens of pull requests [1], some of which involve clients being unable to connect or not supporting all components of the SQL language. Just because your database supports something, doesn&#x27;t mean your caching layer will.<p>It gets really ugly when a new version of your database comes out, with brand new features and language enhancements, and the caching layer doesn&#x27;t support it. It may take months, or in some cases years, before the caching layer is feature-complete with the underlying database. If you want to use some of those language enhancements, then your app may have to maintain two connection strings - one for the caching layer, and one for direct database queries that the caching layer doesn&#x27;t support.<p>Your support teams need to learn how to diagnose problems with the caching layer. For example, this issue [2] talks about the level of work involved with understanding why newly inserted data isn&#x27;t showing up in selects.<p>I hope they succeed and deliver the concept, because it&#x27;s one of the holy grails of databases.<p>[0]: <a href="https:&#x2F;&#x2F;github.com&#x2F;readysettech&#x2F;readyset&#x2F;issues">https:&#x2F;&#x2F;github.com&#x2F;readysettech&#x2F;readyset&#x2F;issues</a> [1]: <a href="https:&#x2F;&#x2F;github.com&#x2F;readysettech&#x2F;readyset&#x2F;pulls">https:&#x2F;&#x2F;github.com&#x2F;readysettech&#x2F;readyset&#x2F;pulls</a> [2]: <a href="https:&#x2F;&#x2F;github.com&#x2F;readysettech&#x2F;readyset&#x2F;issues&#x2F;39">https:&#x2F;&#x2F;github.com&#x2F;readysettech&#x2F;readyset&#x2F;issues&#x2F;39</a>
评论 #39455249 未加载
评论 #39469228 未加载
评论 #39454452 未加载
timsuchanek大约 1 年前
This is one of the deepest deep tech startups I&#x27;ve seen in a long time. I had the pleasure to meet some of the folks at RustConf in Portland.<p>Readyset is basically reimplementing a full database, at the absolute bleeding edge of db research, enabling global partial replication of any kind of data.<p>A solution desperately needed, as databases grow.<p>You can think of it as an intelligent LRU cache in front of your database. An important step towards fast globally distributed applications.<p>I hope this project will get more publicity and adoption - it&#x27;s very well deserved.
dpcx大约 1 年前
Pretty sure that this is the database that Jon Gjengset[0] was working on as part of his thesis project. There have been several videos shared by him during talks about the system. It&#x27;s a really interesting concept.<p>edit: Here&#x27;s[1] a video where he talks about the concept<p>[0]: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;@jonhoo" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;@jonhoo</a> [1]: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=GctxvSPIfr8" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=GctxvSPIfr8</a>
thom大约 1 年前
Someone knowledgeable might know: is this just incremental view updates? To what extent is the cache intelligent if parameters, where clauses, or aggregates change?<p>I really love this space and have been impressed with Materialize, but even if you can make some intermediate state incremental, if your workload is largely dynamic you end up needing to jump the whole way to OLAP platforms. I’m hopeful that we’re closer and closer to having our cake and eating it here, and that the operational data warehouse is only round the corner.
评论 #39455525 未加载
评论 #39457067 未加载
alwaysrusty大约 1 年前
From a tech perspective, this is really cool. From a use case perspective, could someone help me understand why a developer would adopt something like this over a database like Clickhouse, outside of some fintech use cases where milliseconds of latency <i>really</i> matter? I&#x27;d be worried about introducing an additional point of failure to the data stack. And, if this is like Materialize, I&#x27;d be worried about this not suppporting ad hoc queries -- only precomputed ones.
评论 #39455845 未加载
评论 #39455469 未加载
larsnystrom大约 1 年前
They have a pretty good writeup on why you’d want to use this here: <a href="https:&#x2F;&#x2F;blog.readyset.io&#x2F;dont-use-kv-stores&#x2F;" rel="nofollow">https:&#x2F;&#x2F;blog.readyset.io&#x2F;dont-use-kv-stores&#x2F;</a>
评论 #39459130 未加载
10000truths大约 1 年前
This sounds like it has heavy overlap with IVM. How does Readyset distinguish itself from existing solutions like pg_ivm or Materialize?
评论 #39454047 未加载
exabrial大约 1 年前
One of the things we love about using JPA (We use EclipseLink) is it comes with caching, for free, and it’s transparent. You can mark any field as a cache index and it automatically tries the cache first. Updates are published and loaded into every nodes cache automatically, and you get fallback protection in the form of incremental version numbers on rows.<p>The one thing it can’t handle however is range update queries or native queries that perform updates.<p>You can just avoid them in your architecture… OR maybe this is the solution we’ve been looking we’ve been looking for! definitely going to give this a spin!<p>Documentation looks very complete and I like there’s a UI to view the query cache.
zer00eyz大约 1 年前
I dont understand what the use case is for this.<p>If I have a front end, I would hope that the formated response is what were caching. Be that HTML or JSON.<p>If I cant read from that cache then I should be reading from fresh data all together? right?
评论 #39453831 未加载
评论 #39453261 未加载
评论 #39453184 未加载
评论 #39453274 未加载
评论 #39453247 未加载
joeatwork大约 1 年前
This isn’t an open source project (which isn’t a bad thing! Just a non-obvious thing if you don’t scroll down their whole readme)
评论 #39454312 未加载
ltbarcly3大约 1 年前
Trying to add transparent caching to a transactional database is just a bad idea and cannot work. Anyone who says it works for them is just in the period after putting it in place and before when they realize why it cannot work.<p>If it was possible to just slap a cache in between you and the db and magically make shit fast, DB vendors would have done that 20 years ago. Billions of dollars a year is put into relational db development. Papers are published every week, from theoretical ways to model and interact with data to practical things like optimizing query execution plans.<p>Unless Readyset can point to a patent or a paper that has fundamentally revolutionized how database will be built from today forward it is going to be crap and will burn you.
KingOfCoders大约 1 年前
This might be good tech and a good company.<p>Once we used a distributed caching system in a startup which was open source. Then the open source version got cut features we needed, so we bought a license. Then the startup was bought up by a large software company and the license costs went 10x YoY with a one week notice. As our migration away from this tech was not done, because it was very complicated and tied into our application we had to pay. Luckily we also had been bought and the very large costs were not a problem. I would never again use something from a company that is crucial to our operations.
评论 #39454778 未加载
qaq大约 1 年前
But the read side is already fairly trivial to scale with read replicas
评论 #39453615 未加载
评论 #39453388 未加载
评论 #39453337 未加载
AYBABTME大约 1 年前
Love the work. Looks quite similar to what PlanetScale Boost does[1]. Basically the same but as a front-end to someone&#x27;s existing database? (disclaimer: I work at PS).<p>[1]: <a href="https:&#x2F;&#x2F;planetscale.com&#x2F;blog&#x2F;how-planetscale-boost-serves-your-sql-queries-instantly" rel="nofollow">https:&#x2F;&#x2F;planetscale.com&#x2F;blog&#x2F;how-planetscale-boost-serves-yo...</a>
评论 #39457906 未加载
giovannibonetti大约 1 年前
I imagine a good use case for this at its current stage would be for powering up a monitoring dashboard that runs ad-hoc queries against your operational DB. I&#x27;ve seen this situation in a previous Fintech company I worked at, where we had some people staring at dashboards all day long looking for issues in any of the subsystems.
mdaniel大约 1 年前
I just wanted to give a high five for having Jepsen tests for this: <a href="https:&#x2F;&#x2F;github.com&#x2F;readysettech&#x2F;readyset&#x2F;tree&#x2F;stable-240117&#x2F;jepsen#jepsen-tests-for-readyset">https:&#x2F;&#x2F;github.com&#x2F;readysettech&#x2F;readyset&#x2F;tree&#x2F;stable-240117&#x2F;...</a>
notapoolshark大约 1 年前
Slight tangent, but this reminds me of discussions I&#x27;ve seen in the Postgres email servers about native support for real-time materialized views. Does anyone know if we can expect to see something like this in a future version of Postgres?
评论 #39477908 未加载
redwood大约 1 年前
Anyone successfully using? There are a few other services out there like PolyScale. It will be interesting to see if any of these introduce some form of write support over time
评论 #39453585 未加载
评论 #39453520 未加载
fastest963大约 1 年前
What are some advantages to ReadySet versus read replicas from YugabyteDB or CockroachDB? A downside is that it appears to require a separate cloud subscription.
评论 #39454067 未加载
potamic大约 1 年前
&gt; ReadySet is licensed under the BSL 1.1 license, converting to the open-source Apache 2.0 license after 4 years.<p>What does this mean?
评论 #39454090 未加载
评论 #39454648 未加载