You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by GitBox <gi...@apache.org> on 2022/06/11 11:36:11 UTC

[GitHub] [arrow-site] tustvold commented on a diff in pull request #220: June 2022 Rust Apache Arrow and Parquet 16.0.0 Highlights

tustvold commented on code in PR #220:
URL: https://github.com/apache/arrow-site/pull/220#discussion_r895012825


##########
_posts/2022-06-11-rust-16.0.0.md:
##########
@@ -0,0 +1,142 @@
+---
+layout: post
+title: "June 2022 Rust Apache Arrow and Parquet 16.0.0 Highlights"
+date: "2022-06-11 00:00:00 -0600"
+author: pmc
+categories: [release]
+---
+<!--
+{% comment %}
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to you under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+{% endcomment %}
+-->
+
+
+# Introduction
+
+
+We recently celebrated releasing version 16.0.0 of the Rust implementation of [Apache Arrow](https://arrow.apache.org/). While we still get a few comments on โ€œmost rust libraries use versions 0.x.0, why are you at 16.0.0?โ€, our versioning scheme appears to be working well, and permits quick releases of new features and API evolution in a semver compatible way without breaking downstream projects.
+
+This post contains highlights from the last four months (versions
+10.0.0 to 16.0.0) of
+[arrow-rs](https://github.com/apache/arrow-rs/arrow) and
+[parquet-rs](https://github.com/apache/arrow-rs/parquet) development
+as well as a roadmap of future work. The full list of awesomeness can
+be found in the
+[CHANGELOG](https://github.com/apache/arrow-rs/blob/master/CHANGELOG.md).
+
+As you [may remember](https://github.com/apache/arrow-rs/issues/1715), the arrow and parquet implementations are in the same crate, on the same release schedule, and in this same blog. This is not for technical reasons, but helps to keep the maintenance burden for delivering great Apache software reasonable, and  focus on optimized conversion between arrow <--> parquet.
+
+# Parquet
+The [parquet crate](https://crates.io/crates/parquet) has seen a return to substantial improvements after being relatively dormant for several years. The current major areas of focus are
+
+1. **Performance**: Improving the raw performance for reading and writing mirroring the efforts that went into the C++ version a few years ago
+2. **API Ease of Use**: Improving the API so it is easy to use efficiently with modern Rust for two preeminent use cases: 1) reading from local disk and 2) reading `async`hronously from remote object stores.
+
+Some Major Highlights:
+
+* **Advanced Metadata Access**: APIs have been added to access more advanced metadata, such as [PageEncoding](https://github.com/apache/arrow-rs/pull/1322), [BloomFilters](https://github.com/apache/arrow-rs/pull/1309) and [PageIndex](https://github.com/apache/arrow-rs/pull/1762).
+* **Improved usability API**: For example, the [parquet writer now uses `std:io::Write`](https://github.com/apache/arrow-rs/pull/1719)) rather custom `ParquetWriter` trait , making it more interoperable with the rest of the Rust ecosystem and the [projection API is easier to use with nested types](https://github.com/apache/arrow-rs/pull/1716).
+* **Rewritten support for nested types (e.g. struct, lists)** : @tustvold has revamped / rewritten support for [reading](https://github.com/apache/arrow-rs/pull/1682_ and [writing](https://github.com/apache/arrow-rs/pull/1746) structured types, improving the support for arbitrary nested schemas, and is 30% faster.
+
+(TODO maybe a picture / example code to make this blog post less textful)

Review Comment:
   Just highlighting this is still here ๐Ÿ˜…



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org