1. 数据开发工具的常见弊端与解决方案

传统数据开发工具存在任务执行效率低下、跨数据库兼容性差、任务管理复杂等问题。为了解决这些问题,系统提供了并行计算引擎,支持实时流式处理和离线批处理的数据处理框架,并具备高效的任务拆分策略、分布式模块化设计等特性。

2. Ottomi并行计算引擎

Ottomi引擎,具有以下特点:

  • 架构设计:包括数据输入层、处理层、存储层和输出层。
  • 组件功能:支持多种编程语言进行数据转换,提供丰富的监控和管理功能。
  • 性能优化:通过并行化处理、数据分片、缓存机制等方式提高性能。

3.组件介绍

系统包含多种输入、同步、融合、转换和输出组件,以适应不同的业务场景需求。例如:

  • 输入组件:涵盖各类数据库单表输入、MongoDB、Hive、Excel等多种格式。
  • 转换组件:包括规则过滤、函数计算(内置70+函数)、字段过滤、字符串修剪等多个功能。
  • 输出组件:支持文本文件、EXCEL、CSV等多种格式的输出。

4.模型管理

模型管理功能允许用户新增、删除、查询模型,并提供了画布编排、模型模板、自定义参数等功能,以组件拖拉、低代码的形式进行流程编排构建数据的DAG有向无环流程图,这使得使用者或企业能够快速适应业务变化,降低传统面向场景编程的高成本和长周期。此外,通过直观可视化界面,用户通过勾选或选项式轻松创建各种数据处理组件,使得复杂流程变得简单易懂,便于快速适配业务变化。此外,还提供了历史版本记录和执行记录,帮助用户快速定位问题和回滚异常操作。

5.开发组件功能

5.1. 输入组件

5.1.1 单表输入组件

单表输入算法主要用于对单一表进行数据处理,包括数据聚合、过滤、替换、添加字段等操作。通过可视化的界面简化操作步骤,用户可以根据实际业务需求灵活筛选和编辑数据。

  • 单表数据聚合处理:支持按照指定字段或多个字段进行聚合操作。
  • 单表数据过滤处理:支持条件表达式两种方式对数据进行过滤筛选。
  • 单表数据替换处理:支持字符串替换,并允许编写SQL语句进行数据替换。
  • 单表添加新字段处理:支持生成唯一ID、当前时间等字段,使用函数公式生成新的字段列。

5.1.2 文件输入组件

文件输入算法应对大文件、大数据量且需要灵活清洗的场景,支持多种文件类型(如Excel、文本文件、CSV、S3等),并提供自定义字段分隔符、文件编码转换等功能,确保不同类型文件能够正确解析和输出。

5.1.3 模拟数据组件

在缺乏真实数据的情况下,系统提供模拟数据的能力,支持生成不同类型的模拟数据,满足性能测试需求。模拟的数据量可增加至100万,数据值域和范围可自定义。

5.1.4 非结构化数据输入组件

针对非结构化数据(如办公文档、图片、音频、视频等),系统提供了MongoDB和Kafka等非结构化数据接入组件,支持从消息队列中读取各类非结构化数据,并提供多种数据格式用于解构信息。

5.1.5 CDC输入组件

Change Data Capture (CDC) 技术用于实时数据同步,捕获数据源中的变化,实现对数据的实时更新和同步。系统支持历史数据快照读取、增量读取及动态加减表等功能,确保数据同步的高效性和准确性。

5.2. 多表同步组件

多表同步算法优化了传统多表同步工具的资源利用率问题,占用较少的内存资源和数据库连接,支持自动建表和zero-copy技术,提高了数据同步效率。

5.3. 数据融合组件

数据分析过程中常需将多张表的维度相互补充,系统提供的数据融合算法支持交集、左连接、差集、全部合并、去重合并、全关联等多种操作,满足复杂的业务需求。

5.4. 数据转换组件

数据转换是数据处理过程中的重要环节,系统内置了丰富的数据转换算法,包括规则过滤、函数计算、字段过滤、数据过滤、值替换、NULL值替换、数据脱敏、加密解密等50多个功能模块,支持快速可视化数据处理。

5.5. 输出组件

支持将数据处理后的结果保存为实体数据,生成新表供其他运算或对外服务应用。输出类型包括库表、文件、非结构化输出端,支持自定义刷写批量条数和输出前后的SQL脚本,增强了输出灵活性。

6.组件管理

组件管理允许对所有组件进行集中管理,便于跟踪和更新,降低了维护的复杂性。

系统支持对组件的增、删、改、查,支持对组件进行自定义名称修改来应对企业真实场景下对特定名称的需求。

7.函数管理

系统支持对函数进行增、删、改、查,同时支持用户自定义UDF函数进行适配各种复杂的业务场景,在函数构建中,使用人员可以专注于某个特定功能的性能优化,而不影响其他部分的代码,方便进行性能调试和改进。

8.监控分析

数据开发过程中,系统提供可视化的监控分析页面,能够及时发现潜在问题、识别性能瓶颈、有效管理和分配资源,从而降低运营成本,支持管理层进行数据驱动决策。

9.流量限速及智能推荐并行度

合理的流量限速可以确保数据削峰和数据同步稳定;并行度推荐算法根据数据源、表和多个计算节点的资源利用率进行最优的并行度匹配。更好地利用计算资源,降低系统负载,提高整体运行效率。

10.血缘追溯

系统能够追踪数据来源、变换过程和去向,帮助团队理解数据流转过程,快速定位问题所在环节,并评估某一数据变化的影响范围。

综上所述,该数据开发子系统通过一系列创新的功能和技术手段,解决了传统数据处理工具中的诸多难题,极大地提升了数据处理的效率和灵活性。无论是对于企业级的大规模数据处理需求,还是针对特定业务场景的小规模应用,该系统都能提供强大的支持和保障。