---
title: 架构介绍
description: "OmniOperator算子加速特性提供统一接口，供用户在分布式任务中调用。用户可将SQL任务提交至Spark集群，由集群管理节点进行任务调度，将多个子任务分发到对应的计算节点执行。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2530/bds/kunpengbds_omniruntime_20_0203.html
sourcePath: /source/zh/kunpengboostkithistory/2530/bds/kunpengbds_omniruntime_20_0203.html
indexId: 5903328d72f15e771d35722d59e44966a7d34313580f42ac4868eef984cd24eb78
---
# 架构介绍

OmniOperator算子加速特性提供统一接口，供用户在分布式任务中调用。用户可将SQL任务提交至Spark集群，由集群管理节点进行任务调度，将多个子任务分发到对应的计算节点执行。

大数据引擎通常采用Java/Scala算子，难以充分发挥CPU的计算能力。同时对异构算力的支持有限，无法有效发挥硬件的计算性能优势。OmniOperator算子加速特性通过使用Native Code，充分发挥硬件计算性能优势，尤其在异构算力场景下表现突出。

OmniOperator算子加速特性：

- 实现了高性能算子。通过使用Native Code实现Omni算子，充分挖掘硬件特别是异构算力的性能潜力，相较于传统的Java和Scala算子，提升了计算引擎的执行效率。
- 实现了高效数据组织方式。定义了一种与语言无关的列式内存格式，使用堆外内存实现了OmniVec，可以支持零副本读取数据，避免了序列化开销，从而实现更高效的数据处理能力。

OmniOperator算子加速特性仅在单个任务中被用户代码调用，不涉及与其他子任务交互。OmniOperator算子加速特性的软件架构如图1所示。

图1 OmniOperator算子加速特性软件架构
