apache arrow

【Rust日报】2020-11-03 《Rust日报》总第1000期

北战南征 提交于 2021-01-24 07:35:24
今日头版 《Rust日报》第1000期,感谢有你 两年半的时间,我们一期期走来,到了今天发行的第1000期。回想我第一次看《Rust日报》,还是在Rust 2018刚推出的时候。丰富的新闻和思考让我眼前一亮,我慢慢开始喜欢这样的报纸。每天浏览日报,已经成为许多Rust爱好者的生活习惯。 Rust日报社很高兴能和读者们共同进步,也很乐于见到更多的企业、研究团队开始关注这门编程技术。希望在未来的时间里,我们能更好地推广Rust语言,传递更多的社区开发知识,第一时间传播各地Rust开发者的动态和新闻。 加油,Rust爱好者们! 生态圈 内存数据交换格式Apache Arrow发布了v2.0.0版本 Apache Arrow项目定义了基于内存的数据格式,致力于解决系统与系统间的数据传输问题。目前此项目已经发布了重大的更新v2.0.0版本,其中包含的Rust子项目尤为重要。Apache Arrow PMC认为,Rust实现正在缩短与C/C++实现的功能差距,慢慢赶上功能最多的Java、C/C++版本。 本次更新的重点包含很多个模块。核心的“Arrow”模块包含了数据的表示,更新增加了原始类型数组的支持,现在它能从一个迭代器里被加载和转换。实现内部现在使用动态长度的数组,来统一32、64位平台间的差异。Arrow的运算内核也有了较大的改进,添加了大量针对字符串、整数的函数

【Rust日报】2020-11-11 -「InfluxDB IOx」未来会用 Rust 和 Arrow 构建内核

那年仲夏 提交于 2020-12-20 06:18:08
「InfluxDB IOx」未来会用 Rust 和 Arrow 构建内核 Rust提供了对运行时行为和内存管理的更精细控制。另外,它使并发编程更容易,并且消除了数据争用。 Apache Arrow定义了用于列式数据的内存格式,以及Parquet(一种持久的持久性格式)以及Flight(一种用于“通过网络接口进行大型数据集的高性能传输”的客户端/服务器框架和协议)。另外,Rust的Apache Arrow工具集中还有DataFusion,它是用于Apache Arrow的Rust本机SQL查询引擎。假设我们以DataFusion为核心进行构建,这意味着InfluxDB IOx将 支持现成的SQL子集 随着DataFusion项目的成熟,通过InfluxData外部的协作者的开发工作,它既可以在InfluxDB IOx中使用,也可以在其他地方使用。 该项目仍处于初期阶段。我们目前尚未生成构建,并且除了 InfluxDB IOx项目README 之外,没有任何文档。该团队是一个由高级工程师组成的小型小组,我们的工作与平台上其余部分的大型工程组织的所有工作并行。我们的目标是在明年初生产开源构建,并在InfluxDB Cloud中以alpha形式提供。 详情 : https://www.influxdata.com/blog/announcing-influxdb-iox/ [linux

Apache Spark 3.0 中的向量化执行

橙三吉。 提交于 2020-08-14 09:20:41
R 是数据科学中最流行的计算机语言之一,专门用于统计分析和一些扩展,如用于数据处理和机器学习任务的 RStudio addins 和其他 R 包。此外,它使数据科学家能够轻松地可视化他们的数据集。 通过在 Apache Spark 中使用 Spark R,可以很容易地扩展 R 代码。要交互式地运行作业,可以通过运行 R shell 轻松地在分布式集群中运行 R 的作业。 当 Spark R 不需要与 R 进程交互时,其性能实际上与 Scala、Java 和 Python 等其他语言 API 相同。但是,当 SparkR 作业与本机 R 函数或数据类型交互时,会性能显著下降。 如果在 Spark 和 R 之间使用 Apache Arrow 来进行数据交换,其性能会有很大的提升。这篇博客文章概述了 SparkR 中 Spark 和 R 的交互,并对比了没有向量化执行和有向量化执行的性能差异。 文章目录 1 Spark 和 R 交互 2 原始实现(Native implementation) 3 向量化执行(Vectorized implementation) 4 基准测试结果 Spark 和 R 交互 SparkR 不仅支持丰富的 ML 和类似 SQL 的 API 集合,而且还支持用于直接与 R 代码进行交互的一组 API。例如,Spark DataFrame 和 R