Moving structured data between different big data frameworks and/or data warehouses/storage systems often cause significant overhead. Most of the time more than 80\% of the total time spent in accessing data is elapsed in serialization/de-serialization step. Columnar data formats are gaining popularity in both analytics and transactional databases. Apache Arrow, a unified columnar in-memory data format promises to provide efficient data storage, access, manipulation and transport. In addition, with the introduction of the Arrow Flight communication capabilities, which is built on top of gRPC, Arrow enables high performance data transfer over TCP networks. Arrow Flight allows parallel Arrow RecordBatch transfer over networks in a platform and language-independent way, and offers high performance, parallelism and security based on open-source standards. In this paper, we bring together some recently implemented use cases of Arrow Flight with their benchmarking results. These use cases include bulk Arrow data transfer, querying subsystems and Flight as a microservice integration into different frameworks to show the throughput and scalability results of this protocol. We show that Flight is able to achieve up to 6000 MB/s and 4800 MB/s throughput for DoGet() and DoPut() operations respectively. On Mellanox ConnectX-3 or Connect-IB interconnect nodes Flight can utilize upto 95\% of the total available bandwidth. Flight is scalable and can use upto half of the available system cores efficiently for a bidirectional communication. For query systems like Dremio, Flight is order of magnitude faster than ODBC and turbodbc protocols. Arrow Flight based implementation on Dremio performs 20x and 30x better as compared to turbodbc and ODBC connections respectively.
翻译:在不同大数据框架和(或)数据仓库/储存系统之间移动结构数据往往引起巨大的管理费用。在序列化/降序步骤中,访问数据花费的时间总时间大多超过80倍以上。在分析和交易数据库中,列数据格式越来越受欢迎。Appach Arrow,一个统一的模拟数据格式单列将提供高效的数据储存、访问、操作和运输。此外,随着在GRPC之上建立箭头飞行通信能力,箭头使TCP网络能够进行高性能数据传输。箭头飞行允许以平台和语言独立的方式平行在网络上进行记录批次传输,并以开放源标准为基础提供高性能、平行和安全性。在本文件中,我们把最近实施的一些箭头飞行案例及其基准结果集中起来。这些案例包括大箭数据传输、查询子系统和飞行作为微观服务的整合,以显示该协议的快速和可缩缩略性数据传输结果。我们显示,飞行能够实现最多达6000MB/RackT和4800-ML的连通性运行, 将连接到直径/MB 30的运行, 和直径连接的运行,可以分别进行。