-
Notifications
You must be signed in to change notification settings - Fork 40
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
Additional value types? #8
Comments
First comment: There are not many type bytes left for extensions. Furthermore, the specification is already complex enough for my taste. Therefore I would only be in favour of additions if they bring a lot of additional value and cannot easily be emulated with the available types (or custom types). Sorry for being against these suggestions, but I think we always have to keep in mind that every single additional type makes the implementation for another language more complicated. |
Thanks for the detailed reasoning! More types would mean more work indeed and I think pretty much everything can be modeled with already specified types (fuzzy dates being my personal favorite). Sorted sets seemed interesting to me, in particular in imports, because the type could signal the DBMS that the data doesn't need to sorted after import (because it already is) and that no duplicate values are to be expected. But that's not very useful I guess, and it even moves structural concerns to the data type level, which belong on the document level to stay schema-free at the DB level (like with enums). I did not know IEEE double could handle NaN and Infinity. Doesn't it also support +0 and -0? About unions: it's more about how you access the data, not how it's stored actually... I realize that now. I think you would use a binary block of data on the DB level and interpret it in different ways on the application level if necessary. Regarding UTF-16: non-ansi people probably form the majority, but yeah, blob is always an option and the space savings might not be that large after all - because characters from the 1-byte range (whitespace, inter punctuation, digits, ...) are frequently used in texts with mostly 2-4 byte characters and they may weigh out the differences. That said, there's probably no type really missing in the VPack specs! |
Some additional data types available in CBOR (all UTF-8 strings):
Three more random thoughts:
|
A rather random list of things that came to my mind:
The text was updated successfully, but these errors were encountered: