Azure Batch nedir?What is Azure Batch?

Büyük ölçekli paralel ve yüksek performanslı bilgi işlem (HPC) toplu işlerini Azure’da verimli bir şekilde çalıştırmak için Azure Batch’i kullanın.Use Azure Batch to run large-scale parallel and high-performance computing (HPC) batch jobs efficiently in Azure. Azure Batch bir işlem düğümleri (sanal makine) havuzu oluşturup yönetir, çalıştırmak istediğiniz uygulamaları yükler ve düğümler üzerinde çalışacak işleri zamanlar.Azure Batch creates and manages a pool of compute nodes (virtual machines), installs the applications you want to run, and schedules jobs to run on the nodes. Yüklemek, yönetmek veya ölçeklendirmek için küme veya iş Zamanlayıcı yazılımı yoktur.There's no cluster or job scheduler software to install, manage, or scale. Bunun yerine, işlerinizi yapılandırmak, yönetmek ve izlemek için Batch API ve araçları, komut satırı betikleri veya Azure portalını kullanırsınız.Instead, you use Batch APIs and tools, command-line scripts, or the Azure portal to configure, manage, and monitor your jobs.

Geliştiriciler, büyük ölçekli yürütmenin gerekli olduğu SaaS uygulamalarını veya istemci uygulamaları derlemek için Batch’i bir platform hizmeti olarak kullanabilir.Developers can use Batch as a platform service to build SaaS applications or client apps where large-scale execution is required. Örneğin, bir finans hizmetleri şirketi için bir Monte Carlo risk simülasyonu veya birçok görüntüyü işlemek üzere bir hizmeti çalıştırmak için Batch ile bir hizmet oluşturabilirsiniz.For example, you can build a service with Batch to run a Monte Carlo risk simulation for a financial services company, or a service to process many images.

Batch kullanımından ek ücret alınmaz.There is no additional charge for using Batch. Yalnızca sanal makineler, depolama ve ağ gibi kullanılan temel kaynaklar için ödeme yaparsınız.You only pay for the underlying resources consumed, such as the virtual machines, storage, and networking.

Azure 'da Batch ve diğer HPC çözüm seçenekleri arasında bir karşılaştırma için bkz. Azure 'Da yüksek performanslı bilgi işlem (HPC).For a comparison between Batch and other HPC solution options in Azure, see High Performance Computing (HPC) on Azure.

Paralel iş yükleri çalıştırmaRun parallel workloads

Batch, doğası gereği paralel ("utandırıcı derecede paralel" olarak da bilinir) iş yükleriyle düzgün çalışır.Batch works well with intrinsically parallel (also known as "embarrassingly parallel") workloads. Doğası gereği paralel iş yükleri, her örnek iş parçasını tamamlamada bağımsız olarak çalışabilen uygulamalara sahiptir.Intrinsically parallel workloads have applications which can run independently, with each instance completing part of the work. Uygulamalar yürütülerek bazı ortak verilere erişebilirler, ancak uygulamanın diğer örnekleriyle iletişim kurmaz.When the applications are executing, they might access some common data, but they don't communicate with other instances of the application. Bu nedenle doğası gereği paralel iş yükleri, uygulamaları eşzamanlı çalıştırmak için kullanılabilen işlem kaynaklarının miktarına göre belirlenen büyük bir ölçekte çalışır.Intrinsically parallel workloads can therefore run at a large scale, determined by the amount of compute resources available to run applications simultaneously.

Batch ile kullanabileceğiniz doğası gereği paralel iş yüklerinin bazı örnekleri şunlardır:Some examples of intrinsically parallel workloads you can bring to Batch:

  • Monte Carlo simülasyonlarını kullanarak finansal risk modellemeFinancial risk modeling using Monte Carlo simulations
  • VFX ve 3B görüntü işlemeVFX and 3D image rendering
  • Görüntü analizi ve işlemeImage analysis and processing
  • Medya kodlama dönüştürmeMedia transcoding
  • Genetik dizi analiziGenetic sequence analysis
  • Optik karakter tanıma (OCR)Optical character recognition (OCR)
  • Veri alımı, işleme ve ETL işlemleriData ingestion, processing, and ETL operations
  • Yazılım testi yürütmeSoftware test execution

Batch 'i, çalıştırdığınız uygulamaların bağımsız olarak çalıştırmak yerine birbirleriyle iletişim kurması gereken sıkı şekilde bağlanmış iş yüklerini çalıştırmakiçin de kullanabilirsiniz.You can also use Batch to run tightly coupled workloads, where the applications you run need to communicate with each other, rather than running independently. Sıkıca bağlı uygulamalar normalde İleti Geçirme Arabirimi (MPI) API’sini kullanır.Tightly coupled applications normally use the Message Passing Interface (MPI) API. Sıkıca bağlı iş yüklerinizi, Microsoft MPI veya Intel MPI kullanarak Batch ile çalıştırabilirsiniz.You can run your tightly coupled workloads with Batch using Microsoft MPI or Intel MPI. Özel HPC ve GPU bakımından iyileştirilmiş VM boyutları ile uygulama performansını artırın.Improve application performance with specialized HPC and GPU-optimized VM sizes.

Sıkıca bağlı iş yüklerinin bazı örnekleri şunlardır:Some examples of tightly coupled workloads:

  • Sonlu eleman analiziFinite element analysis
  • Sıvı dinamiğiFluid dynamics
  • Çok düğümlü AI eğitimiMulti-node AI training

Sıkıca bağlı işlerin çoğu, Batch kullanılarak paralel olarak çalıştırılabilir.Many tightly coupled jobs can be run in parallel using Batch. Örneğin, kanal genişlikleri değişen bir kanal içinden sıvı akışının birden fazla simülasyonunu gerçekleştirin.For example, perform multiple simulations of a liquid flowing through a pipe with varying pipe widths.

Ek Batch özellikleriAdditional Batch capabilities

Azure Batch için daha yüksek düzeyli, iş yüküne özel özellikler de kullanılabilir:Higher-level, workload-specific capabilities are also available for Azure Batch:

  • Batch; Autodesk Maya, 3ds Max, Arnold ve V-Ray gibi işleme araçları ile büyük ölçekli işleme iş yüklerini destekler.Batch supports large-scale rendering workloads with rendering tools including Autodesk Maya, 3ds Max, Arnold, and V-Ray.
  • R kullanıcıları, Batch havuzlarında R algoritmalarının yürütülmesini kolayca ölçeklendirmek için doAzureParallel R paketi yükleyebilir.R users can install the doAzureParallel R package to easily scale out the execution of R algorithms on Batch pools.

Azure Data Factory gibi araçlarla yönetilen Batch işlerini, veri dönüştürmeye yönelik daha büyük bir Azure iş akışının parçası olarak da kullanabilirsiniz.You can also run Batch jobs as part of a larger Azure workflow to transform data, managed by tools such as Azure Data Factory.

Nasıl çalışır?How it works

Batch için yaygın bir senaryo, işlem düğümlerinin havuzunda 3B görüntülerin işlenmesi gibi paralel işi aslında ölçeklendirmeyi kapsar.A common scenario for Batch involves scaling out intrinsically parallel work, such as the rendering of images for 3D scenes, on a pool of compute nodes. Bu havuz, işleme işinize onlarca, yüzlerce, hatta binlerce çekirdek sağlayan "oluşturma grubunuz" olabilir.This pool can be your "render farm" that provides tens, hundreds, or even thousands of cores to your rendering job.

Aşağıdaki diyagramda, istemci uygulamasının yanı sıra paralel iş yükünü çalıştıracak Batch’i kullanan barındırma hizmetiyle birlikte yaygın bir Batch iş akışının adımları gösterilmektedir.The following diagram shows steps in a common Batch workflow, with a client application or hosted service using Batch to run a parallel workload.

Batch çözümündeki adımların diyagramı.

AdımStep AçıklamaDescription
1. bu dosyaları Azure depolama hesabınıza işlemek için giriş dosyalarını ve uygulamaları karşıya yükleyin.1. Upload input files and the applications to process those files to your Azure Storage account. Giriş dosyaları uygulamanızın işleyeceği herhangi bir veri olabilir; örneğin, finansal modelleme verileri veya dönüştürülecek video dosyaları.The input files can be any data that your application processes, such as financial modeling data, or video files to be transcoded. Uygulama dosyaları, medya kod dönüştürücüsü gibi veri işleyen betik ya da uygulamaları içerebilir.The application files can include scripts or applications that process the data, such as a media transcoder.
2. Batch hesabınızda işlem düğümleri için bir Batch havuzu , havuzda iş yükünü çalıştırmak için bir ve işteki Görevler oluşturun.2. Create a Batch pool of compute nodes in your Batch account, a job to run the workload on the pool, and tasks in the job. İşlem düğümleri , görevleriniziyürütecek sanal makinelerlerdir.Compute nodes are the VMs that execute your tasks. Havuzlarınızın sayısı ve boyutu, bir Windows veya Linux VM görüntüsü ve düğümler havuza katılırsanız yüklenecek bir uygulama gibi özellikleri belirtin.Specify properties for your pool, such as the number and size of the nodes, a Windows or Linux VM image, and an application to install when the nodes join the pool. Düşük öncelikli VM 'leri kullanarak veya iş yükü değiştikçe düğümlerin sayısını otomatik olarak ölçeklendirerek , havuzun maliyetini ve boyutunu yönetin.Manage the cost and size of the pool by using low-priority VMs or by automatically scaling the number of nodes as the workload changes.

Bir işe görev eklediğinizde, Batch hizmeti havuzundaki işlem düğümlerinde yürütülmesi için görevleri otomatik olarak zamanlar.When you add tasks to a job, the Batch service automatically schedules the tasks for execution on the compute nodes in the pool. Her görev, girdi dosyalarını işlemek için yüklediğiniz uygulamayı kullanır.Each task uses the application that you uploaded to process the input files.
3. giriş dosyalarını ve uygulamaları toplu işe indirin3. Download input files and the applications to Batch Her görev yürütülmeden önce, atanan düğüme işlem yaptığı giriş verilerini indirebilir.Before each task executes, it can download the input data that it will process to the assigned node. Uygulama henüz havuz düğümlerine yüklenmediyse, burada da indirilebilir.If the application isn't already installed on the pool nodes, it can be downloaded here instead. Azure Depolama’dan indirme işlemleri tamamlandığında, görev atanan düğüm üzerinde yürütülür.When the downloads from Azure Storage complete, the task executes on the assigned node.
4. görev yürütmeyi izleme4. Monitor task execution Görevler çalışırken, işin ve ona ait görevlerin ilerleyişini izlemek için Batch’i sorgulayın.As the tasks run, query Batch to monitor the progress of the job and its tasks. İstemci uygulamanız veya hizmetiniz, Batch hizmetiyle HTTPS üzerinden iletişim kurabilir.Your client application or service communicates with the Batch service over HTTPS. Binlerce işlem düğümünde çalışan binlerce görevi izliyor olabileceğinizden Batch hizmetini verimli şekilde sorguladığınızdan emin olun.Because you may be monitoring thousands of tasks running on thousands of compute nodes, be sure to query the Batch service efficiently.
5. görev çıkışını karşıya yükleyin5. Upload task output Görevler tamamlanınca sonuç verilerini Azure Storage’a yükleyebilirler.As the tasks complete, they can upload their result data to Azure Storage. Dosyaları doğrudan bir işlem düğümündeki dosya sisteminden de alabilirsiniz.You can also retrieve files directly from the file system on a compute node.
6. çıktı dosyalarını indirin6. Download output files İzleme işleminiz işinizdeki görevlerin tamamlandığını algıladığında, istemci uygulamanız veya hizmetiniz daha fazla işleme için çıktı verilerini indirebilir.When your monitoring detects that the tasks in your job have completed, your client application or service can download the output data for further processing.

Yukarıda açıklanan iş akışının Batch kullanmanın yalnızca bir yolu olduğunu ve birçok başka özellik ve seçenek olduğunu unutmayın.Keep in mind that the workflow described above is just one way to use Batch, and there are many other features and options. Örneğin, her işlem düğümünde birden fazla görevi paralel olarak yürütebilirsiniz.For example, you can execute multiple tasks in parallel on each compute node. Ya da iş hazırlama ve tamamlama görevlerini kullanarak işleriniz için düğümleri hazırlayın, ardından daha sonra temizleyebilirsiniz.Or you can use job preparation and completion tasks to prepare the nodes for your jobs, then clean up afterward.

Havuzlar, düğümler, işler ve görevler gibi özelliklere genel bir bakış için bkz. Batch hizmeti iş akışı ve kaynakları .See Batch service workflow and resources for an overview of features such as pools, nodes, jobs, and tasks. Ayrıca en son Toplu İşlem hizmet güncelleştirmeleri’ne bakın.Also see the latest Batch service updates.

Sonraki adımlarNext steps

Şu hızlı başlangıçlardan biriyle Azure Batch kullanmaya başlayın:Get started with Azure Batch with one of these quickstarts: