-
Notifications
You must be signed in to change notification settings - Fork 584
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
Feature Req: Support for higher resolution timestamps #226
Comments
@bmoscon @lJoublanc Did anyone take a look at/start working on this? I would love to replace some of our local storage system with Arctic, but the millisecond rounding is a fairly big issue. I was thinking of just switching the timestamp indices to nanos from epoch and updating the serializer/deserializers accordingly, but if someone else has a better idea or WIP, please let me know! Edit: Looks like the current version of Arctic handles microseconds just fine, looking forward to using it! |
No, I haven't had a chance. I will need to re-write a scala adapter soon (next few months), so I may take a look then. I think the way to go is to use |
So |
There's no particular magic in the deltas - I think I tried a few things and the deltas compressed better than storing full timestamps. We don't do anything special with generating the timestamps - it is just |
We also store all of our indexes as epoch deltas, so was planning to stick to that anyways. For internal use, I was planning on just altering the conversions in ms_to_datetime and datetime_to_ms, but that would break any existing installs using mili timestamps, so I wanted something more general before submitting a PR. I like the idea of a precision value (and associated switch logic in conversion functions) for the timestamps, but seems expensive (storage wise) to store it for each timestamp. Presumably, you'd be using the same precision for every tick or snapshot or whatever inserted for a given symbol, so how about just adding that to the metadata for the storage engine and then passing that into the conversion functions? |
Yes, sorry that wasn't clear - that's what I meant when I said
|
Is there any plan to support higher-res timestamps than the current 1 millisecond? For example, doesn't mifid 2 have a requirement for higher-res timestamps, for transactional/business data?
I see a couple of issues worth pointing out:
The text was updated successfully, but these errors were encountered: