# Dataintel-Serverless-Spark **Repository Path**: youngerzone/dataintel-serverless-spark ## Basic Information - **Project Name**: Dataintel-Serverless-Spark - **Description**: DataintelServerlessSpark(DSSS) 是一个基于 Go 语言开发的 Kubernetes 客户端工具,专门用于管理和监控 Apache Spark 集群。它提供了完整的 Spark 集群生命周期管理功能,包括集群级别的创建、删除、状态监控以及资源指标收集。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-09 - **Last Updated**: 2026-03-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # DataintelServerlessSpark(DSSS) - Kubernetes Spark 集群管理工具 ``` ██████╗ ███████╗███████╗███████╗ ██╔══██╗██╔════╝██╔════╝██╔════╝ ██║ ██║███████╗███████╗███████╗ ██║ ██║╚════██║╚════██║╚════██║ ██████╔╝███████║███████║███████║ ╚═════╝ ╚══════╝╚══════╝╚══════╝ ``` ## 项目概述 DataintelServerlessSpark(DSSS) 是一个基于 Kubernetes 和 Client-Go 客户端开发的 Spark 集群管理平台,提供丰富的 Spark 集群生命周期管理和智能资源调度能力。 ### 核心特性 **🎯 集群管理** - 完整的 Spark 集群生命周期管理(创建、删除、状态监控) - 多级资源配置(Small/Medium/Large),适配不同规模任务 - 动态 Executor 分配,自动调整计算资源 - 支持 Volcano Gang Scheduling,避免资源死锁 **⚡ 作业执行** - Python 脚本和 SQL 查询执行 - 异步作业提交,实时日志流式输出 - 作业终止、状态查询、日志下载 - MinIO 集成,支持 S3 协议数据源 - WebSocket 实时推送作业状态和日志 **🔧 Worker Pool** - 按需创建/删除 Worker,最小化资源占用 - Kubernetes Informer 实时状态同步,零轮询开销 - 并发 Worker 分配和回收,支持批量操作 - 基于 Executor 进程的精确空闲检测 - Worker 状态缓存,毫秒级查询响应 **📋 任务队列** - 优先级队列(高/中/低),支持 Python 和 SQL 任务 - 频率限流,避免集群过载 - 事件驱动 + 轮询兜底,确保任务可靠执行 - 自动清理已完成任务,防止队列膨胀 **🚀 高性能架构** - 事件驱动设计,降级机制保障可靠性 - Master/Worker 状态缓存,Informer → 缓存 → K8s API 三级降级 - 连接池监控,实时诊断数据库性能 **💾 数据持久化** - 支持 PostgreSQL / MySQL / SQLite - 作业记录、队列任务、用户管理、指标数据 - 连接池自动调优,高/低利用率告警 ## 快速开始 **构建项目** ```bash # 构建 api go build -o dsss-api.exe ./cmd/server # 启动 api server ./dsss-api.exe ``` **详细使用文档:** - [API 接口文档](docs/README_API.md) - 完整的 REST API 接口说明和详细参数要求 - [配置说明文档](docs/README_CONFIG.md) - 配置文件详解 ## 安装要求 - Go 1.25+ - Kubernetes 集群访问权限 - kubectl 配置 (~/.kube/config 或指定配置文件) --- ## 贡献 欢迎提交 Issue 和 Pull Request 来改进这个项目。 ## 许可证 [在此添加许可证信息]