Pemrosesan tumpak

**Pemrosesan tumpak** atau **pemrosesan bebarengan** yang terkomputerisasi adalah metode menjalankan program perangkat lunak yang disebut **pekerjaan** dalam suatu tumpak secara otomatis. Meskipun pengguna diharuskan mengirimkan pekerjaan, tidak ada interaksi lain dari pengguna yang diperlukan untuk memproses tumpak tersebut. Tumpak dapat dijalankan secara otomatis pada waktu yang dijadwalkan serta dijalankan bergantung pada ketersediaan sumber daya komputer.

## Sejarah
Istilah "pemrosesan tumpak" berasal dari klasifikasi tradisional metode produksi sebagai produksi pekerjaan (produksi satu kali), produksi tumpak (produksi beberapa item sekaligus, satu tahap pada satu waktu), dan produksi aliran (produksi massal, semua tahapan diproses sekaligus).

### Sejarah awal
Komputer awal hanya mampu menjalankan satu program dalam satu waktu. Setiap pengguna memiliki kendali tunggal atas mesin untuk jangka waktu yang dijadwalkan. Mereka akan tiba di komputer dengan program dan data, sering kali dalam bentuk kartu kertas berlubang dan pita magnetik atau kertas, dan akan memuat program mereka, menjalankan dan melakukan pengawakutuan, dan membawa hasilnya setelah selesai.

Ketika komputer menjadi lebih cepat, waktu pengaturan dan penghapusan menjadi persentase yang lebih besar dari waktu komputer yang tersedia. Program yang disebut *monitor*, cikal bakal sistem operasi, dikembangkan yang dapat memproses serangkaian, atau "tumpak", program, sering kali dari pita magnetik yang disiapkan secara luring. Monitor akan dimuat ke komputer dan menjalankan pekerjaan pertama dari tumpak tersebut. Di akhir pekerjaan, ia akan mendapatkan kembali kendali dan memuat serta menjalankan pekerjaan berikutnya hingga tumpak  selesai. Sering kali keluaran dari tumpak akan ditulis ke pita magnetik dan dicetak secara luring. Contoh monitor adalah *Fortran Monitor System* milik IBM, SOS (Share Operating System), dan terakhir IBSYS untuk sistem 709x milik IBM pada tahun 1960.

### Sistem generasi ketiga
Komputer generasi ketiga yang mampu melakukan penataolahan serentak mulai muncul pada tahun 1960an. Daripada menjalankan satu pekerjaan tumpak dalam satu waktu, sistem ini dapat menjalankan beberapa program tumpak secara bersamaan untuk menjaga sistem tetap sibuk. Satu atau lebih program mungkin menunggu masukan, satu program aktif berjalan di unit pemrosesan sentral, dan program lainnya menghasilkan keluaran. Alih-alih masukan dan keluaran luring, program yang disebut pengumpar membaca pekerjaan dari kartu, cakram, atau terminal jarak jauh dan menempatkannya dalam antrean pekerjaan untuk dijalankan. Untuk mencegah kebuntuan, penjadwal pekerjaan perlu mengetahui kebutuhan sumber daya setiap pekerjaan—memori, pita magnetik, cakram yang dapat dipasang, dll., sehingga berbagai bahasa skrip dikembangkan untuk menyediakan informasi ini dengan cara yang terstruktur. Mungkin yang paling terkenal adalah Job Control Language (JCL) IBM. Penjadwal pekerjaan memilih pekerjaan untuk dijalankan berdasarkan berbagai kriteria, termasuk prioritas, ukuran memori, dll. Tumpak jarak jauh adalah prosedur untuk mengirimkan pekerjaan tumpak dari terminal jarak jauh, sering kali dilengkapi dengan pembaca kartu lubang dan pencetak garis. Terkadang multiprosesor asimetris digunakan untuk mengumpulkan masukan dan keluaran tumpak untuk satu atau lebih komputer besar menggunakan sistem terpasang yang lebih kecil dan lebih murah, seperti pada Prosesor Dukungan Terlampir IBM System/360.

### Sejarah selanjutnya

Sistem pembagian waktu tujuan umum pertama, Sistem Pembagian Waktu yang Kompatibel (CTSS), kompatibel dengan pemrosesan tumpak. Hal ini memfasilitasi transisi dari pemrosesan tumpak ke komputasi interaktif .

Sejak akhir tahun 1960an dan seterusnya, komputasi interaktif seperti melalui antarmuka terminal komputer berbasis teks (seperti pada Unix shell atau simpal baca-tinjau-cetak   ), dan kemudian antarmuka pengguna grafis menjadi umum. Komputasi non-interaktif, baik pekerjaan satu kali seperti kompilasi, dan pemrosesan beberapa item dalam tumpak, secara retrospektif disebut sebagai *pemrosesan tumpak*, dan istilah *pekerjaan tumpak* (dalam penggunaan awal sering kali disebut "tumpak *pekerjaan* ") menjadi umum. Penggunaan awal terutama ditemukan di Universitas Michigan, di sekitar Michigan Terminal System (MTS).

Meskipun pembagian waktu memang ada, tetapi penggunaannya tidak cukup kuat untuk pemrosesan data perusahaan; semua ini tidak ada hubungannya dengan peralatan pencatatan unit sebelumnya, yang dioperasikan oleh manusia.

### Sedang berlangsung
Komputasi non-interaktif tetap tersebar luas dalam komputasi, baik untuk pemrosesan data umum maupun untuk tugas-tugas "rumah tangga" sistem (menggunakan perangkat lunak sistem ). Program tingkat tinggi (mengeksekusi banyak program, dengan beberapa logika "perekat" tambahan) saat ini paling sering disebut *skrip*, dan ditulis dalam bahasa skrip, khususnya skrip shell untuk tugas sistem; di IBM PC DOS dan MS-DOS, ini dikenal sebagai file batch. Itu termasuk komputer berbasis UNIX, Microsoft Windows, macOS (yang landasannya adalah kernel BSD Unix), dan bahkan ponsel pintar. Skrip yang berjalan, khususnya yang dieksekusi dari sesi catat masuk interaktif, sering dikenal sebagai pekerjaan, tetapi istilah tersebut digunakan dengan sangat taksa.

"Tidak ada tandingan langsung terhadap pemrosesan tumpak z/OS di sistem PC atau UNIX. Pekerjaan tumpak biasanya dijalankan pada waktu yang dijadwalkan atau sesuai kebutuhan. Mungkin perbandingan terdekatnya adalah dengan proses yang dijalankan oleh perintah AT atau CRON di UNIX, meskipun perbedaannya signifikan." 

## Sistem modern
Aplikasi tumpak masih penting di sebagian besar organisasi karena banyak proses bisnis umum yang dapat menerima pemrosesan tumpak. Meskipun sistem daring juga dapat berfungsi ketika intervensi manual tidak diinginkan, sistem tersebut biasanya tidak dioptimalkan untuk melakukan tugas yang berulang dan bervolume tinggi. Oleh karena itu, bahkan sistem baru biasanya berisi satu atau lebih aplikasi tumpak untuk memperbarui informasi di penghujung hari, menghasilkan laporan, mencetak dokumen, dan tugas non-interaktif lainnya yang harus diselesaikan dengan andal dalam tenggat waktu bisnis tertentu.

Beberapa aplikasi dapat menerima pemrosesan massal, yaitu aplikasi yang hanya memerlukan data dari satu masukan sekaligus (bukan total, misalnya): memulai langkah berikutnya untuk setiap masukan setelah menyelesaikan langkah sebelumnya. Dalam hal ini pemrosesan aliran menurunkan pendaman untuk masukan individual, sehingga memungkinkan masukan tersebut diselesaikan tanpa menunggu seluruh tumpak selesai. Namun, banyak aplikasi memerlukan data dari semua catatan, terutama perhitungan seperti total. Dalam hal ini seluruh tumpak harus diselesaikan sebelum ada hasil yang dapat digunakan: hasil sebagian tidak dapat digunakan.

Aplikasi tumpak kiwari menggunakan kerangka tumpak modern seperti Jem The Bee, Spring Batch  atau implementasi JSR 352  yang ditulis untuk Java, dan kerangka kerja lain untuk bahasa pemrograman lain, untuk memberikan toleransi kesalahan dan skalabilitas yang diperlukan untuk tingkat tinggi -pemrosesan volume. Untuk memastikan pemrosesan berkecepatan tinggi, aplikasi tumpak sering kali diintegrasikan dengan solusi komputasi kisi untuk mempartisi pekerjaan tumpak pada sejumlah besar prosesor, meskipun terdapat tantangan pemrograman yang signifikan dalam melakukannya. Pemrosesan tumpak bervolume tinggi juga memberikan tuntutan yang besar pada arsitektur sistem dan aplikasi. Arsitektur yang menampilkan kinerja masukan/keluaran yang kuat dan skalabilitas vertikal, termasuk komputer bingkai utama modern, cenderung memberikan kinerja tumpak yang lebih baik daripada alternatifnya.

Bahasa skrip menjadi populer seiring dengan perkembangannya seiring dengan pemrosesan tumpak.

## Jendela tumpak
*Jendela tumpak* adalah "periode aktivitas daring yang tidak terlalu intensif", ketika sistem komputer mampu menjalankan pekerjaan tumpak tanpa gangguan dari, atau dengan, sistem daring interaktif.

Pekerjaan *akhir hari (EOD)* bank memerlukan konsep *pangkas-lanjut*, di mana transaksi dan data dipotong untuk aktivitas  hari tertentu ("setoran setelah jam 15.00 akan diproses pada hari berikutnya").

Ketika persyaratan untuk waktu aktif sistem online diperluas untuk mendukung globalisasi, Internet, dan kebutuhan bisnis lainnya, jendela tumpak menyusut  dan peningkatan penekanan ditempatkan pada teknik yang memerlukan data daring tersedia untuk jangka waktu maksimum.

## Ukuran tumpak
*Ukuran tumpak* mengacu pada jumlah unit kerja yang akan diproses dalam satu operasi tumpak. Beberapa contohnya adalah:

* Jumlah baris dari berkas yang akan dimuat ke dalam database sebelum melakukan transaksi.
* Jumlah pesan yang akan dikeluarkan dari antrean.
* Jumlah permintaan yang dikirim dalam satu muatan.

## Penggunaan pemrosesan tumpak umum

* Pembaruan basis data massal yang efisien dan pemrosesan transaksi otomatis, berbeda dengan aplikasi pemrosesan transaksi daring interaktif (OLTP). Langkah ekstrak,ubah, muat (ETL) dalam mengisi gudang data pada dasarnya merupakan proses tumpak di sebagian besar implementasi.
* Melakukan operasi massal pada gambar digital seperti mengubah ukuran, menyulih, memberi tanda air, atau menyunting sekelompok tumpak gambar.
* Mengonversi berkas komputer dari satu bentuk ke bentuk lainnya. Misalnya, pekerjaan tumpak dapat menyulih berkas kepemilikan dan berkas lama ke bentuk standar umum untuk kueri dan tampilan pengguna akhir.
* Pelatihan model Pembelajaran Mesin. Misalnya, situs web e-niaga mungkin ingin memproses transaksi pelanggan dalam tumpak per jam untuk memperbarui model yang menghasilkan rekomendasi produk terkait, guna menghemat sumber daya komputasi .

## Catatan