当前位置: 首页 > article >正文

2.1 HuggingFists系统架构(一)

系统架构

        HuggingFists的前端主体开发语言为Html+Javascript,后端的主体开发语言为Java。在算子部分有一定份额的Python代码,用于整合Python在数据处理方面强大能力。

功能架构

        HuggingFists的功能架构如上,由下向上各层为:

  • 数据存储层

        数据存储层并不属于HuggingFists系统,其主要描述了HuggingFists系统可以对接和管理的各类数据源。HuggingFists系统被定义为面向全结构数据的AI应用开发及运营平台,为此其需要对接各类能够存储数据的数据源。在HuggingFists的技术理念中,任何需要被处理的源数据或结果数据都在该层提供的数据源中完成读写访问。因此,使用HuggingFists的第一步需要先配置好数据源。

        HuggingFists支持的数据源类型包括:文件系统、数据库、流服务以及应用系统的四大类。

Ø 文件系统用于对接各类文件系统型数据源,通过该类数据源可以读写以文件形式存储的各类数据。该数据源类型的引入,可极大丰富原始数据以及非结构化数据的访问能力。支持远程文件系统、分布式文件系统及云文件系统等。

Ø 数据库用于对接各类数据库型数据源。支持的数据库种类包括:关系数据库、列式数据库、键值数据库、文档数据库、时序数据库、数据仓库以及图数据库等。

Ø 流服务用于对接时效能力较高的数据源,比如:消息队列等,用于数据处理时效性较高的场景。支持消息队列、分布式消息队列及云消息队列等

Ø 应用系统用于对接各类应用数据源,比如:SAAS类应用、ERP类应用等。该类数据源主要提供数据的读取能力,比如读取某个金融网站的证券数据、交易数据;读取某个ERP应用的客户数据、运营数据等。该类数据源拥有较强的行业属性。

  • 数据计算层

        数据计算层支持部署多计算节点,用于完成数据科学流程的解释及执行。HuggingFists支持的计算节点为单节点计算引擎,主要用来完成复杂的流程控制及小规模数据的处理及分析工作。所有任务只能在单节点引擎内执行,不支持类似Spark及Flink的分布式海量结构化数据计算能力。该能力在 HuggingFists所依赖的Sengee计算框架中予以了支持,有此需求的用户可以查阅Sengee的相关资料。数据计算层支持多节点主要是用来应对同时可能并发多个任务时,可以通过多计算节点水平扩展HuggingFists系统的计算能力。

        HuggingFists的计算节点根据需要支持的业务场景被定义为不同类型。在上图中,计算节点分为两类,一类是通用计算节点,能够支持一般流程的解释执行;一类是增强型节点,即图中带有Dyputer组件的节点,集成了Notebook。允许通过Notebook交互式进行Python编程,从而扩展HuggingFists支持能力不足的部分,比如:各类AI模型的应用,深度学习的集成等。

  • 平台核心层

        平台核心层用于提供整个平台的核心管理功能。包括数据源管理、流程管理、数据服务管理、作业管理、模型管理、计算节点管理、资源管理及用户管理等模块。

Ø 数据源管理用于对数据科学计算所需的各类数据源进行管理,支持的数据源类型包括:数据库、文件系统、事件流以及应用系统。

Ø 流程管理用于管理HuggingFists系统中的各类流程。包括图流程、程序流程、作业流程以及API流程等。

Ø 数据服务管理用于接入外部的Web API接口,供HuggingFists在流程定义中使用;以及将通过HuggingFists定义的流程供外部系统访问。

Ø 作业管理用于为流程定义各种不同触发类型的作业,并完成作业的调度运行及监控。支持的作业触发方式包括:即时、定时、事件触发以及交互式触发等多种。

Ø 模型管理用于管理系统中所有的训练模型,包括流程训练输出的模型以及通过外部导入的模型。可将这些模型部署为服务、也可在流程中使用这些模型完成数据的处理。

Ø 计算节点管理用于管理各类计算节点。

Ø 资源管理用于管理HuggingFists中的各类资源,包括连接器、算子、提示模板、应用模板等。其中,连接器及算子为HuggingFists的插件资源;提示模板与应用模板为大模型等相关算子应用所需的配置资源。

Ø 用户管理用于创建管理平台中的用户及用户的权限


http://www.kler.cn/news/327928.html

相关文章:

  • Go 项目开发常用设计模式
  • OpenCV图像文件读写(1)检查 OpenCV 是否支持某种图像格式的读取功能函数haveImageReader()的使用
  • Python FFmpeg 安装使用教程
  • SQL第10课挑战题
  • C# 泛型使用案例_C# 泛型使用整理
  • vue 项目打包更新后,界面未刷新时js与css资源加载404,监听资源文件404后自动重新加载页面。
  • 解决 Macos下 Orbstack docker网络问题
  • 【工具-VMware Workstation-ubuntu】
  • UDP通信
  • Linux 如何检测一个程序的最大内存使用值?
  • 普通人未来还有哪些赚钱机会?
  • JAVA JVM常见面试题
  • OJ在线评测系统 后端 判题机模块预开发 架构分析 使用工厂模式搭建
  • CSS点击事件穿透
  • 中心节点服务,远程集中管理,降低边缘设备管理成本的智慧园区开源了。
  • 【10000字pandas数据可视化超全笔记整理】Numpy Pandas | 常用API介绍 | 缺失值处理 matplotlib数据可视化介绍
  • 鸿蒙NEXT开发-界面渲染(条件和循环)(基于最新api12稳定版)
  • Chromium 用户数据目录User Data 初始化过程c++
  • Apache POI快速入门
  • leetcode刷题day31|贪心算法Part05重叠区间问题(56. 合并区间、738.单调递增的数字、968.监控二叉树)
  • Unity NetCode 客户端连接不上服务器,局域网模式 Failed to connect to server.
  • 【微信小程序开发】入门Day2 —— 从视图逻辑到配置请求全方位解析
  • 遍历递归数结构,修改里的disabled值
  • 【JVM】基础篇
  • 2024ICPC网络赛2记录:CK
  • 企业数字化转型指南:基于TOGAF框架的系统化战略解读
  • Junit 5 - 理解Mockito,提高UT 覆盖率
  • 景联文科技精准数据标注:优化智能标注平台,打造智能未来
  • LiveQing视频点播流媒体RTMP推流服务功能-支持电子放大拉框放大直播视频拉框放大录像视频流拉框放大电子放大
  • 【Redis技术进阶之路】「原理分析系列开篇」探索事件驱动枚型与数据特久化原理实现(数据持久化的实现AOF)