Overview
Giới thiệu tổng quan
Jobs là chức năng dùng để định nghĩa, lập lịch và thực thi các tác vụ xử lý dữ liệu hoặc mã nguồn trong Project. Một job gồm một hoặc nhiều task được sắp xếp theo quan hệ phụ thuộc và chạy trên Compute phù hợp.
Job phù hợp cho các nhu cầu chạy Python script, Spark workload hoặc các loại task khác do hệ thống cung cấp. Mỗi lần thực thi được ghi nhận thành một Run để người dùng theo dõi trạng thái, thời lượng, log và kết quả.
Các thành phần chính của một job gồm:
- Job: cấu hình tổng thể của quy trình thực thi.
- Task: đơn vị công việc trong job, gồm loại task, nguồn mã nguồn, Compute và tham số.
- Dependency: quan hệ xác định task nào được chạy trước.
- Trigger và schedule: điều kiện kích hoạt job theo lịch hoặc thủ công.
- Permission: quyền truy cập job của user hoặc group.
- Run: một lần thực thi job, có thể là chạy theo lịch hoặc chạy thủ công.
Điều kiện sử dụng
- Đã đăng nhập và chọn đúng Project.
- Job Orchestration đã được khởi tạo và các component đã provision thành công, hoặc hệ thống cho phép tiếp tục.
- Có Compute phù hợp với loại task cần chạy.
- Có quyền tạo và quản lý job trong Project.
- Có quyền truy cập fileset, thư viện, dữ liệu hoặc tài nguyên được task sử dụng.
Khởi tạo Job Orchestration
Trước khi tạo job, cần khởi tạo Job Orchestration cho Project. Đây là bước chuẩn bị instance và các thành phần hạ tầng cần thiết để tạo, lập lịch và thực thi job.
Khi khởi tạo, hệ thống tự động cấu hình tài nguyên hạ tầng và giới hạn workload dựa trên subscription plan.
Quá trình này bao gồm các thành phần nền tảng như database, log storage, API server và scheduler.
Chỉ bắt đầu tạo job khi các component đã được provision thành công hoặc hệ thống cho phép tiếp tục.
Quy trình thực hiện
Quy trình làm việc với Jobs gồm các bước từ chuẩn bị hạ tầng, tạo job, khai báo task đến vận hành và theo dõi kết quả. Có thể thực hiện theo trình tự sau:
Thiết lập ban đầu
Trước khi tạo job, cần chuẩn bị các thành phần cần thiết cho task:
- Thiết lập dữ liệu (Data setup): Kích hoạt Metastore và Metalake cho Project.
- Chuẩn bị Fileset: Tạo hoặc xác định Fileset chứa mã nguồn, file dữ liệu hoặc tài nguyên mà task cần sử dụng.
- Kiểm tra user có quyền truy cập Fileset và các tài nguyên liên quan.
Job sử dụng Fileset làm nguồn tài nguyên cho task khi cần. Compute là tài nguyên thực thi task và được cấu hình tại mục 4.2.
Cấu hình Compute
Tạo hoặc chọn một Compute dành cho workload Job. Compute này cung cấp tài nguyên để thực thi Gateway/Pipeline và phải phù hợp với Compute Policy của Project.
Kiểm tra Compute đang ở trạng thái có thể sử dụng và user có quyền truy cập trước khi gán Compute cho task.
Chi tiết thực hiện tại Configure compute - Cluster Job.
Create and configure job
Tại Create and configure job, tạo job, thêm task, thiết lập lịch chạy, timezone và quyền truy cập, sau đó nhấn Create.
Configure task
Tại Configure task, khai báo Task key, Type, Depends on, Compute, Source và Path. Có thể bổ sung environment variables, libraries, parameters và retry trong Advanced Options.
Chạy job
Chọn Compute, cấu hình trigger và lịch chạy nếu cần, sau đó tạo job. Job có thể chạy tự động theo lịch hoặc được kích hoạt thủ công.
Chi tiết thực hiện tại Create and configure job.
Manage job
Tại Manage job, xem, chỉnh sửa, tạm dừng, kích hoạt lại, xóa hoặc chạy thủ công bằng Run Now.
Monitor job
Tại Monitor job, theo dõi Run ID, Status, Duration, log và thông tin chi tiết. Khi thất bại, kiểm tra log mức ERROR trước khi chạy lại.