TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Apache Arrow 3.0

561 pointsby kylebarronover 4 years ago

23 comments

georgewfraserover 4 years ago
Arrow is <i>the most important</i> thing happening in the data ecosystem right now. It&#x27;s going to allow you to run your choice of execution engine, on top of your choice of data store, as though they are designed to work together. It will mostly be invisible to users, the key thing that needs to happen is that all the producers and consumers of batch data need to adopt Arrow as the common interchange format.<p>BigQuery recently implemented the storage API, which allows you to read BQ tables, in parallel, in Arrow format: <a href="https:&#x2F;&#x2F;cloud.google.com&#x2F;bigquery&#x2F;docs&#x2F;reference&#x2F;storage" rel="nofollow">https:&#x2F;&#x2F;cloud.google.com&#x2F;bigquery&#x2F;docs&#x2F;reference&#x2F;storage</a><p>Snowflake has adopted Arrow as the in-memory format for their JDBC driver, though to my knowledge there is still no way to access data in <i>parallel</i> from Snowflake, other than to export to S3.<p>As Arrow spreads across the ecosystem, users are going to start discovering that they can store data in one system and query it in another, at full speed, and it&#x27;s going to be amazing.
评论 #26018827 未加载
评论 #26020157 未加载
评论 #26020657 未加载
评论 #26018622 未加载
评论 #26023684 未加载
评论 #26020563 未加载
评论 #26024680 未加载
评论 #26019814 未加载
评论 #26020377 未加载
评论 #26019707 未加载
评论 #26019583 未加载
jrevelsover 4 years ago
Excited to see this release&#x27;s official inclusion of the pure Julia Arrow implementation [1]!<p>It&#x27;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&#x2F;work with a separate &quot;compiler for fast UDFs&quot; is rendered obsolete.<p>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&#x2F;restart Arrow.jl and get the package into this release.<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;JuliaData&#x2F;Arrow.jl" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;JuliaData&#x2F;Arrow.jl</a>
评论 #26020652 未加载
评论 #26020621 未加载
dangover 4 years ago
If curious see also<p>2020 <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23965209" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23965209</a><p>2018 (a bit) <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=17383881" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=17383881</a><p>2017 <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=15335462" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=15335462</a><p>2017 <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=15594542" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=15594542</a> rediscussed recently <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25258626" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25258626</a><p>2016 <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=11118274" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=11118274</a><p>Also: related from a couple weeks ago <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25824399" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25824399</a><p>related from a few months ago <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24534274" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24534274</a><p>related from 2019 <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21826974" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21826974</a>
mushufasaover 4 years ago
Can someone ELI5 what problems are best solved by apache arrow?
评论 #26018661 未加载
评论 #26019483 未加载
评论 #26018904 未加载
评论 #26018723 未加载
评论 #26018655 未加载
评论 #26018715 未加载
评论 #26018830 未加载
评论 #26019465 未加载
评论 #26018648 未加载
评论 #26018731 未加载
评论 #26021093 未加载
评论 #26018679 未加载
ryanianianover 4 years ago
This link is a 404. Perhaps they weren&#x27;t intending this post to be public yet?<p>At any rate, archive.org managed to grab it <a href="https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20210203194945&#x2F;https:&#x2F;&#x2F;arrow.apache.org&#x2F;blog&#x2F;2021&#x2F;01&#x2F;25&#x2F;3.0.0-release&#x2F;" rel="nofollow">https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20210203194945&#x2F;https:&#x2F;&#x2F;arrow.apa...</a>
评论 #26022721 未加载
archagonover 4 years ago
For use as a file format, where one priority is to compress columnar data as well as possible, the practical difference between Arrow (via Feather?), Parquet, and ORC is still somewhat vague to me. During my last investigation, I got the impression that Arrow worked great as a standard, interoperable, in-memory columnar format, but didn&#x27;t compress nearly as well as ORC or Parquet due to lack of RLE and other compression schemes (other than dictionary). Is this still the case? Is there a world where Arrow completely supplants Parquet and&#x2F;or ORC?<p>EDIT: Just found <a href="https:&#x2F;&#x2F;wesmckinney.com&#x2F;blog&#x2F;arrow-columnar-abadi" rel="nofollow">https:&#x2F;&#x2F;wesmckinney.com&#x2F;blog&#x2F;arrow-columnar-abadi</a>, which helps answer this question.
jayd16over 4 years ago
Can someone dig into the pros and cons of the columnar aspect of Arrow? To some degree there are many other data transfer formats but this one seems to promote its columnar orientation.<p>Things like eg. protobuffers support hierarchical data which seems like a superset of columns. Is there a benefit to a column based format? Is it an enforced simplification to ensure greater compatibility or is there some other reason?
评论 #26019795 未加载
评论 #26019413 未加载
评论 #26019278 未加载
评论 #26019400 未加载
评论 #26019338 未加载
anonyfoxover 4 years ago
So if I understand this correctly from an application developers perspective:<p>- for OLTP tasks, something row based like sqlite is great. Small to medium amounts of data mixed reading&#x2F;writing with transactions<p>- for OLAP tasks, arrow looks great. Big amounts of data, faster querying (datafusion) and more compact data files with parquet.<p>Basically prevent the operational database from growing too large, offload older data to arrow&#x2F;parquet. Did I get this correct?<p>Additionally there seem to be further benefits like sharing arrow&#x2F;parquet with other consumers.<p>Sounds convincing, I just have two very specific questions:<p>- if I load a ~2GB collection of items into arrow and query it with datafusion, how much slower will this perform in comparison to my current rust code that holds a large Vec in memory and „queries“ via iter&#x2F;filter?<p>- if I want to move data from sqlite to a more permanent parquet „Archive“ file, is there a better way than recreating the whole file or write additional files, like, appending?<p>Really curious, could find no hints online so far to get an idea.
评论 #26020380 未加载
srikuover 4 years ago
Related - recent Apache Arrow support in Julia announcement - <a href="https:&#x2F;&#x2F;julialang.org&#x2F;blog&#x2F;2021&#x2F;01&#x2F;arrow&#x2F;" rel="nofollow">https:&#x2F;&#x2F;julialang.org&#x2F;blog&#x2F;2021&#x2F;01&#x2F;arrow&#x2F;</a>
bravuraover 4 years ago
I got interested in Arrow recently after reading this blog post showing that Arrow (and Ray) are much faster than Pickle: <a href="https:&#x2F;&#x2F;rise.cs.berkeley.edu&#x2F;blog&#x2F;fast-python-serialization-ray-apache-arrow&#x2F;" rel="nofollow">https:&#x2F;&#x2F;rise.cs.berkeley.edu&#x2F;blog&#x2F;fast-python-serialization-...</a><p>I have a question about whether it would fit this use-case:<p>* I need a SUPER fast KV-store.<p>* I&#x27;m on a single machine.<p>* Keys are 10-bytes if you compress (or strings with 32 characters if you don&#x27;t), unfortunately I can&#x27;t store it as an 8-byte int. sqlite said it supports arbitrary precision numerics, but then I got burned finding out that casts integers to arbitrary precision floats and only keeps the first 14 digits of precision :\<p>* Values are 4-byte ints. Maybe 3 4-byte ints.<p>* I have maybe 10B - 100B rows.<p>* I need super fast lookup and depending upon my machine can&#x27;t always cache this in memory, might need to work from disk.<p>Would arrow be useful for this? Currently just using sqlite.
评论 #26021328 未加载
评论 #26021331 未加载
mbyioover 4 years ago
I&#x27;m surprised they are still making breaking changes, and they plan to make more (they are already working on a 4.0).
评论 #26019240 未加载
MR4Dover 4 years ago
Uh... 404 error for the link....
supunkkover 4 years ago
Cudf and Cylon are two execution engines natively supporting Arrow format<p><a href="https:&#x2F;&#x2F;github.com&#x2F;rapidsai&#x2F;cudf" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;rapidsai&#x2F;cudf</a> <a href="https:&#x2F;&#x2F;github.com&#x2F;cylondata&#x2F;cylon" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;cylondata&#x2F;cylon</a>
atianover 4 years ago
Has anyone had success in getting the page to load? I&#x27;m on my desktop and can&#x27;t see what&#x27;s behind the link.
评论 #26020679 未加载
peachy_no_pieover 4 years ago
How is Arrow when it comes to streaming workflows? Like, could Arrow replace Storm as analytics in a pipeline from Flume?
liminalover 4 years ago
Would really love to see first class support for Javascript&#x2F;Typescript for data visualization purposes. The columnar format would naturally lend itself to an Entity-Component style architecture with TypedArrays.
评论 #26019977 未加载
评论 #26032263 未加载
评论 #26020134 未加载
chensterover 4 years ago
Why no love for PHP I wonder? Don&#x27;t see a supported library there.
评论 #26020802 未加载
评论 #26026574 未加载
mushufasaover 4 years ago
has anyone had success using arrow in js to feed tabular data to the frontend from the backend, such as a pandas data frame?
Thaxllover 4 years ago
Last time I worked in ETL was with Hadoop, looks like a lot happened.
评论 #26019159 未加载
humbleMouseover 4 years ago
I worked at a large company a few years ago on a team implementing this. It’s super cool and works great. Definitely where the future is headed
offtop5over 4 years ago
Does no one do load testing anymore, anyone got a working mirror
skratloover 4 years ago
Yay, another ad-tech support engine from Apache, great
katsover 4 years ago
I&#x27;m done with Hacker News, you guys just upvote marketing and politics.
评论 #26020991 未加载
评论 #26021575 未加载