-
Notifications
You must be signed in to change notification settings - Fork 869
Cassandra(or ScyllaDB) support #3535
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
There are no short term plans to add database engines beyond MySQL, PostgreSQL and SQLite. The reason is that those three engines are due for a large rewrite in how they work. I want to move sqlc to directly use databases for query analysis, which should make it much easier to support newer engines in the future. That said if you'd like to see Cassandra / ScyllaDB support, there's some background research that needs to be done. To add a new database engine, we need to have access to a high-quality parser that can both parse and render a SQL AST. The engine itself needs to support analyzing queries. I've never used Cassandra / ScyllaDB before. Do you think it has these capabilities? |
Thanks for the direction. Since Cassandra CQL is relative simple compared to Postgres, I'll try to make some demo and paste any further meaningful progress later. |
@rpstw any updates to a demo? |
I am not a SQL expert, quite the opposite actually, but how much does the database driver depend on the exact engine flavor? Since cassandra speaks SQL as well, couldnt we get away with the default postgres and only use basic SQL statements and nothing exotic (only available to the corresponding falvor)? @rpstw did you figure something out? |
After several months of studying. Here's some conclusion I can share
I created this question because I want to write CQL code in golang as efficient as SQL with sqlc. I think the problem still exists, but based on the conclusion above I don't think there would be an easy method to have CQL with sqlc. I still hope there could be one but as for now I'll close the issue. |
What do you want to change?
We plan to migrate some Postgres workload to ScyllaDB in the next months due to scaling and cost reasons. We heavily use sqlc in the past for Postgres workload, so naturally some Cassandra support in sqlc would be great.
Being a sqlc user for a lot time, I'm not certain about the overall idea. Does the Cassandra support also in the roadmap of the sqlc developers and users? How many code need to be written for the support?
Opinions and advice would be really helpful, also, if Cassandra is really a can-have, I could devote some time implementing it.
What database engines need to be changed?
No response
What programming language backends need to be changed?
Go
The text was updated successfully, but these errors were encountered: