-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Remove JSON column from ClickHouse backend #482
Comments
3 tasks
Hi @bmtcril , |
bmtcril
added a commit
to bmtcril/ralph
that referenced
this issue
Nov 2, 2023
Initial implementation of the ClickHouse backend used the experimental JSON column type, with the string of the JSON as a backup. The JSON type has never graduated out of experimental status and has some serious issues that make it undesirable to support. This commit removes all references to the column in favor of using the JSON ClickHouse functions, which are generally faster and better supported.
bmtcril
added a commit
to bmtcril/ralph
that referenced
this issue
Nov 2, 2023
Initial implementation of the ClickHouse backend used the experimental JSON column type, with the string of the JSON as a backup. The JSON type has never graduated out of experimental status and has some serious issues that make it undesirable to support. This commit removes all references to the column in favor of using the JSON ClickHouse functions, which are generally faster and better supported.
bmtcril
added a commit
to bmtcril/ralph
that referenced
this issue
Nov 2, 2023
Initial implementation of the ClickHouse backend used the experimental JSON column type, with the string of the JSON as a backup. The JSON type has never graduated out of experimental status and has some serious issues that make it undesirable to support. This commit removes all references to the column in favor of using the JSON ClickHouse functions, which are generally faster and better supported.
bmtcril
added a commit
to bmtcril/ralph
that referenced
this issue
Nov 2, 2023
Initial implementation of the ClickHouse backend used the experimental JSON column type, with the string of the JSON as a backup. The JSON type has never graduated out of experimental status and has some serious issues that make it undesirable to support. This commit removes all references to the column in favor of using the JSON ClickHouse functions, which are generally faster and better supported.
bmtcril
added a commit
to bmtcril/ralph
that referenced
this issue
Nov 3, 2023
Initial implementation of the ClickHouse backend used the experimental JSON column type, with the string of the JSON as a backup. The JSON type has never graduated out of experimental status and has some serious issues that make it undesirable to support. This commit removes all references to the column in favor of using the JSON ClickHouse functions, which are generally faster and better supported.
wilbrdt
pushed a commit
that referenced
this issue
Nov 3, 2023
Initial implementation of the ClickHouse backend used the experimental JSON column type, with the string of the JSON as a backup. The JSON type has never graduated out of experimental status and has some serious issues that make it undesirable to support. This commit removes all references to the column in favor of using the JSON ClickHouse functions, which are generally faster and better supported.
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
Feature Request
When I implemented the ClickHouse backend I used the experimental JSON column type based on feedback from ClickHouse that it would be promoted out of experimental status "soon". We discovered that it had some serious missing functionality and added in the String column version of the JSON data next to it as a workaround. I recently reconnected with ClickHouse on the topic and it seems like they are not prioritizing getting the JSON field fully functional any time soon, so I would like to remove it!
Describe the solution you'd like
I'd like to remove the JSON column and change the existing handful of places in the code that use it to use the String column with JSON string function calls. They are faster, fully functional, and it will reduce the storage for the xAPI statements significantly. We entirely use the String column in Aspects.
Describe alternatives you've considered
Waiting for CH to finish their feature and dropping the String column instead. 😄 Last I heard from them "no one is working on that".
Discovery, Documentation, Adoption, Migration Strategy
This would be a breaking change for any downstream consumers of the Ralph database directly, but since I think everyone using this would already have all of their data in the String column I think the only necessary migration internal to Ralph would be to drop the column. Since Ralph doesn't even manage the schema I hope that would be a small issue.
Do you want to work on it through a Pull Request?
I'd be happy to do this work, I just want to make sure it would be a welcome change and answer any questions you may have before doing the work. I also know there was work happening on the abstracting the backends that may need to land first.
The text was updated successfully, but these errors were encountered: