JSON vs Arrow Client Performance #2995
-
|
Hi all, have put together a POC with a client mode data grid. Around 300k rows, 40 columns updated via json over websocket. I am having a bit of scrolling slowness with the mouse (seems better with moving via scroll bar however). I was wondering if there would be better rendering performance if I was to switch the server to push arrow buffers to the front end instead of json? There is not too much in the docs on the performance improvements between approaches. I assume chrome will use less memory for the grid, but I am more concerned with UI responsiveness. Using latest 3.x release. Many thanks. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
|
JSON vs Arrow JavaScript Likely yes, but I would need to see your implementation - there can be more than one reason things are slow and scrolling for 300k rows in Perspective should be quite fast. Updating via serialized You can test this pretty easily using Perspective's |
Beta Was this translation helpful? Give feedback.
JSON vs Arrow JavaScript
Tableconstructor performance from the OSS CI benchmarks (raw)Likely yes, but I would need to see your implementation - there can be more than one reason things are slow and scrolling for 300k rows in Perspective should be quite fast. Updating via serialized
ArrowIPC encodedArrayBufferbatches is more efficient than doing so from JSON strings (worse) or JavaScript Objects (much worse), and should also utilize far less of your browser's main thread (used otherwise for rendering).You can test this pretty easily using Perspective's
Client/Serverreplicated mode (which uses Arrow deltas to sync).