-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Implement to_arrow
in C++ for JS/Python
#850
Conversation
36aff39
to
1125ade
Compare
…lta return arrow by default add dictionary array generation, tests for start/end col/row
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the PR! This is a really cool feature, great performance improvement, better portability, smaller asset size! I've done a review of this offline and added 2 commits:
- Remove
@arrow/es5-esm
now that this is entirely implemented in C++, saving ~200k in addition to the runtime performance improvements. - Adds
PSP_CHECK_ARROW_STATUS
to wrapStatus::invalid()
in aPSP_COMPLAIN_AND_ABORT
to squash the build warnings and provide better error messages.
Also fixed longstanding test flap, which was due to incorrect Javascript |
This looks great! Can't wait to try it in JS. Are all the arrow date types properly handled in this update? |
Yes - date32 and date64 are handled as date types, while timestamp is handled as a datetime. |
sweet! will wait for the next rc to bundle it in my data ext. that uses this lib. would be a nice way to close this year & thank you guys for this awesome data analytics lib & contribs! |
This PR uses the C++ Apache Arrow library to serialize Perspective views into the Arrow format. It includes:
0.15.1
, which requires a rebuild of Docker images.update()
) using C++ to_arrow, and implemented in Python.WebsocketClosedError
breaking in streaming example - clients closing websocket should no longer break lingering callbacks.PerspectiveManager
to use_PerspectiveCallbackCache
instead of a dictionary.remote.py
example in Python, which usesto_arrow
androw_delta
to stream changed rows to clients every millisecond.arrow.cpp
intoarrow_loader
andarrow_writer
for cleanliness.scalar_vec_to_val
andscalar_vec_to_string
methods in C++ - usescalar_to_val
instead.