Apache Arrow 3.0.0 Release

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Access the most powerful time series database as a service
  • Sonar - Write Clean C++ Code. Always.
  • SaaSHub - Software Alternatives and Reviews
  • perspective

    A data visualization and analytics component, especially well-suited for large and/or streaming datasets.

    In Perspective (https://github.com/finos/perspective), we use Apache Arrow as a fast, cross-language/cross-network data encoding that is extremely useful for in-browser data visualization and analytics.

    Some benefits:

    - super fast read/write compared to CSV & JSON (Perspective and Arrow share an extremely similar column encoding scheme, so we can memcpy Arrow columns into Perspective wholesale instead of reading a dataset iteratively).

    - the ability to send Arrow binaries as an ArrayBuffer between a Python server and a WASM client, which guarantees compatibility and removes the overhead of JSON serialization/deserialization.

    - because Arrow columns are strictly typed, there's no need to infer data types - this helps with speed and correctness.

    - Compared to JSON/CSV, Arrow binaries have a super compact encoding that reduces network transport time.

    For us, building on top of Apache Arrow (and using it wherever we can) reduces the friction of passing around data between clients, servers, and runtimes in different languages, and allows larger datasets to be efficiently visualized and analyzed in the browser context.

  • arquero

    Query processing and transformation of array-backed data tables.

    Take a look at the arquero library from a research group at University of Washington (the same group that D3 came out of). https://github.com/uwdata/arquero

  • InfluxDB

    Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.

  • arrow-julia

    Official Julia implementation of Apache Arrow

    Excited to see this release's official inclusion of the pure Julia Arrow implementation [1]!

    It's so cool to be able mmap Arrow memory and natively manipulate it from within Julia with virtually no performance overhead. Since the Julia compiler can specialize on the layout of Arrow-backed types at runtime (just as it can with any other type), the notion of needing to build/work with a separate "compiler for fast UDFs" is rendered obsolete.

    It feels pretty magical when two tools like this compose so well without either being designed with the other in mind - a testament to the thoughtful design of both :) mad props to Jacob Quinn for spearheading the effort to revive/restart Arrow.jl and get the package into this release.

    [1] https://github.com/JuliaData/Arrow.jl

  • go-py-arrow-bridge

    Bridge between Go and Python to facilitate zero-copy using Apache Arrow

    Not only in between processes, but also in between languages in a single process. In this POC I spun up a Python interpreter in Go and can pass the Arrow data buffer between processes in constant time. https://github.com/nickpoorman/go-py-arrow-bridge

  • Apache Arrow

    Apache Arrow is a multi-language toolbox for accelerated data interchange and in-memory processing

  • vega-loader-arrow

    Data loader for the Apache Arrow format.

    Not sure I follow, that page indicates that JS support is pretty good for all but the more obscure features (e.g. decimals) and doesn't mention data visualization at all? Anyhow, I've successfully used https://github.com/vega/vega-loader-arrow for in-browser plots before, and Observable has a fair few notebooks showing how to use the JS API (e.g. https://observablehq.com/@theneuralbit/introduction-to-apach...)

  • cylon

    Cylon is a fast, scalable, distributed memory, parallel runtime with a Pandas like DataFrame. (by cylondata)

    Cudf and Cylon are two execution engines natively supporting Arrow format https://github.com/rapidsai/cudf https://github.com/cylondata/cylon

  • Sonar

    Write Clean C++ Code. Always.. Sonar helps you commit clean C++ code every time. With over 550 unique rules to find C++ bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.

  • ClickHouse

    ClickHouse® is a free analytics DBMS for big data

    On a side note, Clickhouse had some Arrow support


NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts