Earlier quoted context omitted.
A few million writes a day is still well within the write performance of one of those nodes. But... we were talking about querying the data, no?
Well yes, but if your database is busy writing, it's going to have less time for reading.
It's not Ruby that's slow, it's your database
201–203 of 203 posts
Re: It's not Ruby that's slow, it's your database
#202Earlier quoted context omitted.
A few million writes a day is still well within the write performance of one of those nodes. But... we were talking about querying the data, no?
Well yes, but if your database is busy writing, it's going to have less time for reading.
If you arent getting that then you are doing something big, something inefficient, or something stupid - and that would be the same on any size node.
Size your instances accordingly.
Re: It's not Ruby that's slow, it's your database
#203Earlier quoted context omitted.
That really depends on the language - specifically, on whether it already has constructs that can map nicely (e.g. LINQ in C#), or macros to define them, or syntax that is generally amenable to DSLs even without macros in the picture (e.g. Lisps). SQL itself is also not a particularly well-designed query language. E.g. the order of the query doesn't reflect the natural data flow (SELECT .. FROM .. is reversed - compa…
SQL is powerful. A DSL that "fixes" things in this area getting all the other language feature interactions right isn't trivial, all the while users have to learn yet another language. Take PRQL for example: https://prql-lang.org . It looks nice, but the examples are very basic. What about window functions, grouping sets, lateral, DML, recursive SQL, pattern matching, pivot/unpivot etc. Might be doable, but perhaps,…
Thanks for the PRQL shout-out!
> Take PRQL for example: https://prql-lang.org. It looks nice, but the examples are very basic. What about window functions, grouping sets, lateral, DML, recursive SQL, pattern matching, pivot/unpivot etc.
Window functions are very much supported! Check out the examples on the home page & in the docs.
The others aren't yet, but not because of a policy — we've started with the most frequently used features and adding features as they're needed.