数据库信息速递: Apache Arrow 如何加速 InfluxDB (翻译)

这篇具有很好参考价值的文章主要介绍了数据库信息速递: Apache Arrow 如何加速 InfluxDB (翻译)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

开头还是介绍一下群,如果感兴趣PolarDB ,MongoDB ,MySQL ,PostgreSQL ,Redis, Oceanbase, Sql Server等有问题,有需求都可以加群群内,可以解决你的问题。加群请联系 liuaustin3 ,(共1760人左右 1 + 2 + 3 + 4 +5) 4群(260+),另欢迎 OpenGauss 的技术人员加入。

最近是百业萧条,本地前十的新能源的电池大厂也停工了,2023年还有一个月结束,真是令人记忆深刻。

——————————————————————————————

数据库信息速递: Apache Arrow 如何加速 InfluxDB  (翻译),数据库,apache

在翻译前,我们先把基础知识建立以下,apache arrow 是一个跨语言的内存交换格式,通过内存中的列式内存和零拷贝技术,提供了高速数据访问和互操作的能力,基于这个技术,对于时序数据库influxDB有什么帮助?

在历史上,处理大数据是一个巨大的挑战,那些要利用大数据集的公司面临与数据处理相关的重大性能开销,具体而言,在不同的工具和系统之间移动数据需要使用不同的程序语言,网络协议,和文件格式,在数据处理流水线上,这样的情况下,数据的转换是非常昂贵和低效的。

于是apache arrow 应运而生 ,apache arrow 是一个开源的框架定义了一种内存中列式数据的格式,每个分析处理引擎都可以使用, apache arrow 由impala ,spark, calcite 等,和其他的开源领导者共同开发,成为无关语言的标准,用于高效的列式内存表示,,Arrow 提供了零拷贝读取,减少了内存需求和CPU周期,由于Arrow 是针对现代CPU 和 GPU 设计的,可以并行处理数据,并利用单指令/多数据SIMD, 和矢量化处理和查询。

历史上,处理大数据是一个大的挑战,要利用大数据数据集的公司面临着与数据处理的开销,在不同的工具和系统之间移动数据需要使用不同的编程语言、网络协议和文件格式。在数据流水线的每个步骤中进行数据转换都是昂贵且低效的。

于是,Apache Arrow 应运而生了。Apache Arrow 是一个开源框架,定义了一种内存中的列式数据格式,每个分析处理引擎都可以使用。

Apache Arrow 由 Impala、Spark、Calcite 和其他开源领导者共同开发,旨在成为无关语言的标准,用于高效的列式内存表示,以促进互操作性。Arrow 提供了零拷贝读取,减少了内存需求和 CPU 周期。由于 Arrow 是针对现代 CPU 和 GPU 设计的,它可以并行处理数据,并利用单指令/多数据(SIMD)和矢量化处理和查询。

Apache Arrow 在许多数据分析和存储解决方案的项目中发挥着作用,包括:

Apache Spark是一个大规模并行处理数据引擎,使用 Arrow 将 Pandas DataFrames 转换为 Spark DataFrames。这使得数据科学工作者可以将小数据集上开发的 POC 模型迁移到大数据集上。Apache Parquet是一个极其高效的列式存储格式,在Parquet 使用 Arrow 进行矢量化读取,通过将多行批处理为列式格式,使得列式存储更加高效。InfluxDB是一个时间序列数据平台,使用 Arrow 支持接近无限的基数用例,支持多种查询语言(包括 Flux、InfluxQL、SQL 等),并可以与 BI 和数据分析工具具备互操作性。Pandas是一个构建在 Python 之上的数据分析工具包。Pandas 使用 Arrow 提供对 Parquet 的读写支持。 

今年早些时候,InfluxData 推出了一个基于 Apache 生态系统构建的新数据库引擎。开发人员使用 Rust 在 Apache Arrow、Apache DataFusion 和 Apache Parquet 之上构建了这个新引擎。借助 Apache Arrow,InfluxDB 可以通过提供高效的列式数据交换来支持接近无限的基数或维度用例。举个例子,想象一下我们将以下数据写入 InfluxDB:

数据库信息速递: Apache Arrow 如何加速 InfluxDB  (翻译),数据库,apache

通过以列式格式存储数据,数据库可以将相似的数据组合在一起以实现廉价压缩。具体而言,Apache Arrow 定义了一种进程间通信机制,用于传输一组 Arrow 列式数组(称为“记录批次”)这可以通过进程间同步或将数据持久化到存储中来异步完成。

此外,时间序列数据是独特的,因为它通常具有两个相关变量。时间序列的值取决于时间,并且值与之前的值有一定的相关性。时间序列的这个属性意味着 InfluxDB 可以通过词典编码更充分地利用记录批次的压缩。词典编码允许 InfluxDB 消除重复值的存储,而时间序列数据中经常存在重复值。InfluxDB 还通过使用 SIMD 指令实现了矢量化查询指令。

除了提供免费的 InfluxDB Cloud 版本外,InfluxData 还在宽松的 MIT 许可下提供了 InfluxDB 的开源版本。开源软件提供了社区构建自己解决方案的自由,以及演进代码的能力,从而创造了实际影响的机会。

开源的真正力量在于开发人员不仅提供开源代码,而且还为流行项目做出贡献。跨组织的协作产生了一些最受欢迎的开源项目,如 TensorFlow、Kubernetes、Ansible 和 Flutter。InfluxDB 的数据库工程师对 Apache Arrow 做出了重大贡献,包括每周发布的 https://crates.io/crates/arrow 和 https://crates.io/crates/parquet 版本。他们还帮助撰写 DataFusion 的博客文章。InfluxData 对 Arrow 的其他贡献还包括:快速、内存高效的排序算法。在各个层面上提升性能(apache/arrow-rs#1248 和 apache/arrow-rs#2646)。通过默认安全和额外的错误检查使 Arrow crate 更加安全(apache/arrow-rs#817)。Apache Arrow 正在成为许多公司架构中的关键组件。它的内存列式格式支持分析数据库系统、数据框架库等的需求。通过充分利用 Apache Arrow,开发人员将节省时间,同时也获得支持 Arrow 的新工具。

主要的开发人员,Anais Dotis-Georgiou 是 InfluxData 的开发者倡导者,热衷于通过数据分析、人工智能和机器学习使数据变得美丽。她通过混合研究、探索和工程的方式将收集到的数据转化为具有功能、价值和美感的东西。当她不在屏幕后面时,你可以在户外看到她绘画、伸展、滑板或追逐足球。

数据库信息速递: Apache Arrow 如何加速 InfluxDB  (翻译),数据库,apache文章来源地址https://www.toymoban.com/news/detail-779442.html

到了这里,关于数据库信息速递: Apache Arrow 如何加速 InfluxDB (翻译)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • PHP 门户信息网站系统mysql数据库web结构apache计算机软件工程网页wamp

    一、源码特点     PHP 门户信息网站系统 是一套完善的web设计系统,对理解php编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 下载地址 https://download.csdn.net/download/qq_41221322/88179035 https://download.csdn.net/download/qq_41221322/88179035 视频演示 PHP 门户

    2024年02月13日
    浏览(56)
  • PHP 人才信息与招聘系统mysql数据库web结构apache计算机软件工程网页wamp

    一、源码特点     PHP 人才信息与招聘系统 是一套完善的web设计系统,对理解php编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为PHP APACHE,数据 库为mysql5.0,使用php语言开发。 视频演示 PHP 人才信息与招聘系统mysql数据库web结构

    2024年02月11日
    浏览(50)
  • 如何卸载MySQL数据库以及删除所有有关信息

    目录 前言 第一步 卸载mysql程序  第二步 删除安装目录的mysql项目 第三步 删除MySQL的相关注册表 第四步 删除C盘下的 C:ProgramDataMySQL所有的文件 第五步 删除 C:Documents and SettingsAll UsersApplication DataMySQL 下的文件夹  第六步 重启电脑 尾语 你们是否想要删除MySQL数据库呢?如果

    2024年02月08日
    浏览(81)
  • GreatSQL通过错误日志信息判断数据库实例是如何关闭的

    在一次客户的数据库实例连接不上了,需要我们排查一下原因,通过查看数据库实例进程已经不存在了,在错误日志中没有发现其他报错信息,发现有 shutdown 的字样出现,怀疑是某个用户手动关闭了实例。我们通过以下测试,发现是由于用户关闭了主机所导致的。 本次测试

    2024年02月17日
    浏览(59)
  • 如何在Apache Arrow中定位与解决问题

    最近在执行sql时做了一些batch变更,出现了一个 crash问题,底层使用了apache arrow来实现。本节将会从0开始讲解如何调试STL源码crash问题,在这篇文章中以实际工作中resize导致crash为例,引出如何进行系统性分析,希望可以帮助大家~ 在最后给社区提了一个pr,感兴趣可以去查阅

    2024年04月22日
    浏览(30)
  • FPGA在内存数据库加速中的应用:综述

    异构计算主要是指使用不同类型计算单元(CPU、GPU等协处理器、DSP、ASIC、FPGA等),不同类型的指令集和不同的体系结构组成的一个混合的系统。 异构计算是一种并行计算的特殊方式 ,采用分布式布局,它能将结构不同、 性能不同的各种机器部件合理的分配安排 ,充分发挥

    2024年02月07日
    浏览(36)
  • Apache Doris 数据库有哪些应用场景?

    首先声明,本人无意叛变,依然是ClickHouse的忠实信徒。 对于Doris,一直听圈内的人在说,吹得神乎其神,但到底有多强,从来没有真正的去尝试一把。 直到这次,被人狠狠上了一课。 在一次全文检索的模糊查询的场景PK中,ClickHouse一败涂地,让本人很是没面子,咳咳,大哥

    2024年01月22日
    浏览(53)
  • 分布式数据库Apache Doris简易体验

    📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】!😜😜😜 中国DBA联盟(ACDU)成员,目前服务于工业互联网 擅长主流Oracle、MySQL、PG、高斯及Greenplum运维开发,备份恢复,安装迁移,性能优

    2024年02月06日
    浏览(59)
  • Apache Doris 支持 Arrow Flight SQL 协议,数据传输效率实现百倍飞跃

    近年来,随着数据科学、数据湖分析等场景的兴起,对数据读取和传输速度提出更高的要求。而 JDBC/ODBC 作为与数据库交互的主流标准,在应对大规模数据读取和传输时显得力不从心,无法满足高性能、低延迟等数据处理需求。为提供更高效的数据传输方案,Apache Doris 在 2.

    2024年04月15日
    浏览(43)
  • 人工智能大模型加速数据库存储模型发展 行列混合存储下的破局

    ​ 专栏内容 : postgresql内核源码分析 手写数据库toadb 并发编程 toadb开源库 个人主页 :我的主页 座右铭:天行健,君子以自强不息;地势坤,君子以厚德载物. 在数据库的发展过程中,关系型数据库是一个里程碑式的阶段,现在关系型数据仍然占据着重要地位。 在关系型数

    2024年02月12日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包