Someone knowledgeable might know: is this just incremental view updates? To what extent is the cache intelligent if parameters, where clauses, or aggregates change? 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…
They have a bit about their technical foundation here[0]. Given that Readyset was co-founded by Jon Gjengset (but has apparently since departed the company), who authored the paper on Noria[1], I would assume that Readyset is the continuation of that research. I wouldn't call that "just" incremental view maintenance, as it's a lot more involved than the simplest implementation of IVM (though obviously that is the end…
Readyset: A MySQL and Postgres wire-compatible caching layer
61–70 of 71 posts
Re: Readyset: A MySQL and Postgres wire-compatible caching layer
#62Love the work. Looks quite similar to what PlanetScale Boost does[1]. Basically the same but as a front-end to someone's existing database? (disclaimer: I work at PS). [1]: https://planetscale.com/blog/how-planetscale-boost-serves-yo...
Re: Readyset: A MySQL and Postgres wire-compatible caching layer
#63Earlier quoted context omitted.
They have a bit about their technical foundation here[0]. Given that Readyset was co-founded by Jon Gjengset (but has apparently since departed the company), who authored the paper on Noria[1], I would assume that Readyset is the continuation of that research. I wouldn't call that "just" incremental view maintenance, as it's a lot more involved than the simplest implementation of IVM (though obviously that is the end…
Just poking my head in to say that I technically never departed ReadySet — what happened was that I co-founded the company, but was so burnt-out when it came to databases after my PhD that I decided to leave the running of the company to others. Then, US visa regulations made it so that I couldn't really be involved _at all_ if I wasn't an actual employee, which meant I truly was "just a founder" with no real involve…
Re: Readyset: A MySQL and Postgres wire-compatible caching layer
#64Earlier quoted context omitted.
[dead]
On top of that, quoting @martypitt reply: > Most commonly the restrictions prevent you from launching a competing offering. In their case, you can't offer database-as-a-service using their code. Meaning the self hosted version is free to use in any number of servers having in mind the competing offering restriction.
Even though software may be licensed under "BSL" it isn't really a standard, even though proponents tend to use the term "BSL" as if it is the same as talking about "GPL" or "BSD". The MariaDB BSL used here is quite different than the HashiCorp BSL, for instance.
Re: Readyset: A MySQL and Postgres wire-compatible caching layer
#65If 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.
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.
Re: Readyset: A MySQL and Postgres wire-compatible caching layer
#66They have a pretty good writeup on why you’d want to use this here: https://blog.readyset.io/dont-use-kv-stores/
Re: Readyset: A MySQL and Postgres wire-compatible caching layer
#67Earlier quoted context omitted.
[dead]
On top of that, quoting @martypitt reply: > Most commonly the restrictions prevent you from launching a competing offering. In their case, you can't offer database-as-a-service using their code. Meaning the self hosted version is free to use in any number of servers having in mind the competing offering restriction.
Additional Use Grant: You may make use of the Licensed Work, provided that
you may not use the Licensed Work for a Database Service. A ‘Database
Service’ is a commercial offering that allows third parties (other than
your employees and contractors) to access the functionality of the Licensed Work.
IANAL but to me that sounds like it could be interpreted as almost any commercial work based on it since some part will "access the functionality", indirectly or directly. I know that is not what they intended, but the language is loose enough to allow almost any interpretation.Re: Readyset: A MySQL and Postgres wire-compatible caching layer
#68Someone knowledgeable might know: is this just incremental view updates? To what extent is the cache intelligent if parameters, where clauses, or aggregates change? 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…
They have a bit about their technical foundation here[0]. Given that Readyset was co-founded by Jon Gjengset (but has apparently since departed the company), who authored the paper on Noria[1], I would assume that Readyset is the continuation of that research. I wouldn't call that "just" incremental view maintenance, as it's a lot more involved than the simplest implementation of IVM (though obviously that is the end…
(It turns into Nokia results part way through page 2, but still a lot of submissions!)
Re: Readyset: A MySQL and Postgres wire-compatible caching layer
#69In the Microsoft SQL Server space, several of these vendors have come and gone. My clients have been burned badly by 'em, so a few quick lessons learned: 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't mean your caching l…
But, what I'd worry about are situations where an application needs to cache an object that's expensive to build. (And perhaps expensive to build because the programmer doesn't understand how to optimize SQL.)
Re: Readyset: A MySQL and Postgres wire-compatible caching layer
#70Earlier quoted context omitted.
ReadySet descends from Noira ( https://www.usenix.org/conference/osdi18/presentation/gjengs... ), which I view as the next generation of incremental dataflow technology after Naiad/Differential Dataflow/Materialize. The key difference is that Noira/ReadySet supports partial materialization and can reconstruct data on-demand, whereas Naiad/Differential Dataflow/Materialize must keep a complete materialization up to da…
(Materialize CTO here.) Partial materialization is indeed Noria's major contribution to dataflow technology, and it's impressive stuff. But I want to call out that there are a number of techniques that folks use with Materialize to avoid paying for O(entire materialized view). The two most common techniques are demand-driven queries using lateral joins [0] and temporal filters [1]. Noria's approach to partial materia…