【研发类-框架和库Skills】azure-compute-batch-java 技能

发布时间:2026/9/28 13:54:03

【研发类-框架和库Skills】azure-compute-batch-java 技能
Azure Batch SDK for Java。运行大规模并行和HPC批处理作业包括池、作业、任务和计算节点。技能概述azure-compute-batch-java 技能提供了Azure Batch SDK for Java的完整使用指南。Azure Batch是一项托管服务用于在Azure中运行大规模并行和高性能计算HPC批处理作业。该技能帮助开发者管理池、作业、任务和计算节点实现高效的批处理计算。下载地址agentic-awesome-skills/skills/azure-compute-batch-java at main · sickn33/agentic-awesome-skills · GitHub主要功能池管理: 创建、调整、删除和管理计算节点池作业管理: 创建、监控和终止批处理作业任务管理: 创建、监控和管理计算任务节点操作: 管理计算节点包括重启和远程登录作业调度: 创建和管理定期运行的作业计划自动缩放: 根据工作负载动态调整池大小触发条件在以下情况下应该调用此技能:需要运行大规模并行批处理作业实现高性能计算HPC工作负载管理Azure Batch池和计算节点创建和调度批处理任务需要动态缩放计算资源核心概念概念描述Pool运行任务的计算节点集合Job任务的逻辑分组Task计算单元命令/脚本Node执行任务的虚拟机Job Schedule定期作业创建安装方法dependencygroupIdcom.azure/groupIdartifactIdazure-compute-batch/artifactIdversion1.0.0-beta.5/version/dependency使用示例示例1: 创建客户端import com.azure.compute.batch.BatchClient;import com.azure.compute.batch.BatchClientBuilder;import com.azure.identity.DefaultAzureCredentialBuilder;// 使用Microsoft Entra ID推荐BatchClient batchClient new BatchClientBuilder().credential(new DefaultAzureCredentialBuilder().build()).endpoint(System.getenv(AZURE_BATCH_ENDPOINT)).buildClient();// 使用共享密钥凭据import com.azure.core.credential.AzureNamedKeyCredential;String accountName System.getenv(AZURE_BATCH_ACCOUNT);String accountKey System.getenv(AZURE_BATCH_ACCESS_KEY);AzureNamedKeyCredential sharedKeyCreds new AzureNamedKeyCredential(accountName, accountKey);BatchClient batchClient new BatchClientBuilder().credential(sharedKeyCreds).endpoint(System.getenv(AZURE_BATCH_ENDPOINT)).buildClient();示例2: 创建池import com.azure.compute.batch.models.*;batchClient.createPool(new BatchPoolCreateParameters(myPoolId, STANDARD_DC2s_V2).setVirtualMachineConfiguration(new VirtualMachineConfiguration(new BatchVmImageReference().setPublisher(Canonical).setOffer(UbuntuServer).setSku(22_04-lts).setVersion(latest),batch.node.ubuntu 22.04)).setTargetDedicatedNodes(2).setTargetLowPriorityNodes(0),null);示例3: 创建作业和任务// 创建作业batchClient.createJob(new BatchJobCreateParameters(myJobId, new BatchPoolInfo().setPoolId(myPoolId)).setPriority(100).setConstraints(new BatchJobConstraints().setMaxWallClockTime(Duration.ofHours(24)).setMaxTaskRetryCount(3)),null);// 创建单个任务BatchTaskCreateParameters task new BatchTaskCreateParameters(task1, echo Hello World);batchClient.createTask(myJobId, task);// 创建多个任务ListBatchTaskCreateParameters taskList Arrays.asList(new BatchTaskCreateParameters(task1, echo Task 1),new BatchTaskCreateParameters(task2, echo Task 2),new BatchTaskCreateParameters(task3, echo Task 3));BatchTaskGroup taskGroup new BatchTaskGroup(taskList);BatchCreateTaskCollectionResult result batchClient.createTaskCollection(myJobId, taskGroup);示例4: 监控任务// 获取任务计数BatchTaskCountsResult counts batchClient.getJobTaskCounts(myJobId);System.out.println(Active: counts.getTaskCounts().getActive());System.out.println(Running: counts.getTaskCounts().getRunning());System.out.println(Completed: counts.getTaskCounts().getCompleted());// 获取任务输出import com.azure.core.util.BinaryData;import java.nio.charset.StandardCharsets;BinaryData stdout batchClient.getTaskFile(myJobId, task1, stdout.txt);System.out.println(new String(stdout.toBytes(), StandardCharsets.UTF_8));示例5: 自动缩放BatchPoolEnableAutoScaleParameters autoScaleParams new BatchPoolEnableAutoScaleParameters().setAutoScaleEvaluationInterval(Duration.ofMinutes(5)).setAutoScaleFormula($TargetDedicatedNodes min(10, $PendingTasks.GetSample(TimeInterval_Minute * 5)););batchClient.enablePoolAutoScale(myPoolId, autoScaleParams);最佳实践使用Entra ID: 优先于共享密钥进行身份验证使用管理SDK管理池: azure-resourcemanager-batch支持托管标识批量创建任务: 使用createTaskCollection或createTasks创建多个任务正确处理LRO: 池调整大小、删除操作是长时间运行的监控任务计数: 使用getJobTaskCounts跟踪进度设置约束: 配置maxWallClockTime和maxTaskRetryCount使用低优先级节点: 为容错工作负载节省成本启用自动缩放: 根据工作负载动态调整池大小环境变量AZURE_BATCH_ENDPOINThttps://account.region.batch.azure.com AZURE_BATCH_ACCOUNTaccount-name AZURE_BATCH_ACCESS_KEYaccount-key相关资源Maven包: Maven Central: com.azure:azure-compute-batchGitHub: azure-sdk-for-java/sdk/batch/azure-compute-batch at main · Azure/azure-sdk-for-java · GitHubAPI文档: com.azure.compute.batch Package | Microsoft Learn产品文档: https://learn.microsoft.com/azure/batch/REST API: https://learn.microsoft.com/rest/api/batchservice/示例: https://github.com/azure/azure-batch-samples限制说明仅当任务明确符合上述范围时使用此技能不要将输出视为环境特定验证、测试或专家审查的替代品如果缺少所需的输入、权限、安全边界或成功标准请停止并寻求澄清

相关新闻

WAIC 2026:AI 长出身体,开始为结果负责!

WAIC 2026:AI 长出身体,开始为结果负责!

2026/8/23 4:14:59

突发:WAIC 2026 盛大召开7 月 17 日至 20 日,2026 世界人工智能大会暨人工智能全球治理高级别会议主论坛(WAIC 2026)正式召开。作为一年一度的 AI 行业盛会,今年大会依然聚集了国内外大模型公司、AI 应用和硬件厂商&am…

华为MetaERP Oracle EBS R12 人事(HR)+ 薪酬(Payroll) 的 业务解决方案、系统实现方案、IT 落地方案 一次性梳理完整,偏实施顾问视角,可直接拿去做方案大纲 / 投标

华为MetaERP Oracle EBS R12 人事(HR)+ 薪酬(Payroll) 的 业务解决方案、系统实现方案、IT 落地方案 一次性梳理完整,偏实施顾问视角,可直接拿去做方案大纲 / 投标

2026/9/24 23:52:33

Oracle EBS R12 人事(HR) 薪酬(Payroll) 的 业务解决方案、系统实现方案、IT 落地方案 一次性梳理完整,偏实施顾问视角,可直接拿去做方案大纲 / 投标材料 / 内部汇报。内容尽量结构化、成体系、可落地。一、…

(论文速读)SCNN:用于交通场景理解的空间CNN

(论文速读)SCNN:用于交通场景理解的空间CNN

2026/8/23 4:14:59

论文题目:Spatial As Deep: Spatial CNN for Traffic Scene Understanding(用于交通场景理解的空间CNN)会议:AAAI 2018摘要:卷积神经网络(CNN)通常是通过逐层堆积卷积运算来构建的。虽然CNN已经显示出从原始像素中提取…

CANN/GE ACL数据集缓冲区添加函数

CANN/GE ACL数据集缓冲区添加函数

2026/9/28 4:08:17

aclmdlAddDatasetBuffer 【免费下载链接】ge GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、Te…

用ffmpeg高效批量调整图片尺寸的实战指南

用ffmpeg高效批量调整图片尺寸的实战指南

2026/9/27 1:30:29

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱

2026/9/28 2:15:29

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱 【免费下载链接】transformers 🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and mu…

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南

2026/9/28 3:14:54

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system sup…

Java Integer缓存揭秘:128陷阱原理、避坑与面试全解

Java Integer缓存揭秘:128陷阱原理、避坑与面试全解

2026/9/28 3:58:00

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据

2026/9/28 3:47:14

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system supporting mi…

远程协作的工作台整理

远程协作的工作台整理

2026/9/26 14:29:04

远程协作的工作台整理远程协作的核心不是再加一个工具,而是让交接信息足够完整。异步任务要写明目标、输入位置、完成标准和需要决策的人。 工作台的最小配置 将日程、待办、代码和沟通入口收拢到少数固定位置;通知按紧急程度分层。工作台不需要模仿办公…

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

2026/9/28 5:05:21

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

2026/9/26 23:35:16

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…