Open Source Job Scheduler
Encyclopedia
The Open Source Job Scheduler is an open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 computer application for enterprise level job scheduling used for process automation. Job Scheduler is used to launch executable files and shell scripts and to run database procedures
Stored procedure
A stored procedure is a subroutine available to applications that access a relational database system. A stored procedure is actually stored in the database data dictionary.Typical uses for stored procedures include data validation or access control mechanisms...

 automatically.

Jobs are configurable as Web services providing interoperability with enterprise applications. It stores all information in a backend database system running on either MySQL
MySQL
MySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...

, PostgreSQL
PostgreSQL
PostgreSQL, often simply Postgres, is an object-relational database management system available for many platforms including Linux, FreeBSD, Solaris, MS Windows and Mac OS X. It is released under the PostgreSQL License, which is an MIT-style license, and is thus free and open source software...

, Firebird
Firebird (database server)
Firebird is an open source SQL relational database management system that runs on Linux, Windows, and a variety of Unix. The database forked from Borland's open source edition of InterBase in 2000, but since Firebird 1.5 the code has been largely rewritten ....

, SQL Server
Microsoft SQL Server
Microsoft SQL Server is a relational database server, developed by Microsoft: It is a software product whose primary function is to store and retrieve data as requested by other software applications, be it those on the same computer or those running on another computer across a network...

, Oracle
Oracle Database
The Oracle Database is an object-relational database management system produced and marketed by Oracle Corporation....

, DB2
IBM DB2
The IBM DB2 Enterprise Server Edition is a relational model database server developed by IBM. It primarily runs on Unix , Linux, IBM i , z/OS and Windows servers. DB2 also powers the different IBM InfoSphere Warehouse editions...

 or Adaptive Server Enterprise
Adaptive Server Enterprise
Adaptive Server Enterprise is Sybase Corporation's flagship enterprise-class relational model database server product. ASE is predominantly used on the Unix platform but is also available for Windows.-History:...

.

Key Functionality

  • Launch executable files, shell scripts and database procedures
    Stored procedure
    A stored procedure is a subroutine available to applications that access a relational database system. A stored procedure is actually stored in the database data dictionary.Typical uses for stored procedures include data validation or access control mechanisms...

     automatically
  • Trigger events for job starts such as calendar events, monitoring of incoming files and API events initiated by external applications
  • Configure jobs as Web Services to provide interoperability with SOA architectures
    Service-oriented architecture
    In software engineering, a Service-Oriented Architecture is a set of principles and methodologies for designing and developing software in the form of interoperable services. These services are well-defined business functionalities that are built as software components that can be reused for...

     (BPEL)

Mode of Operation

  • Used for batch scheduling, the Job Scheduler runs as Unix daemon or Windows Service
    Windows Service
    On Microsoft Windows operating systems, a Windows service is a long-running executable that performs specific functions and which is designed not to require user intervention. Windows services can be configured to start when the operating system is booted and run in the background as long as...

     in the background
  • Job control is carried out by command line or by a built-in graphical user interface
    Gui
    Gui or guee is a generic term to refer to grilled dishes in Korean cuisine. These most commonly have meat or fish as their primary ingredient, but may in some cases also comprise grilled vegetables or other vegetarian ingredients. The term derives from the verb, "gupda" in Korean, which literally...

  • A graphical XML editor
    XML editor
    An XML editor is a markup language editor with added functionality to facilitate the editing of XML. This can be done using a plain text editor, with all the code visible, but XML editors have added facilities like tag completion and menus and buttons for tasks that are common in XML editing, based...

     for job configuration and a web GUI
    Gui
    Gui or guee is a generic term to refer to grilled dishes in Korean cuisine. These most commonly have meat or fish as their primary ingredient, but may in some cases also comprise grilled vegetables or other vegetarian ingredients. The term derives from the verb, "gupda" in Korean, which literally...

     for job management are available

The Job Scheduler can be controlled by the built-in web server's graphical user interface.
The Job Scheduler uses an XML file for the configuration of executable files or shell scripts and to set the timing and frequency of job starts.

Job Execution

  • Jobs are the basic unit for the processing of executable files, shell scripts, stored procedures and of job implementations based on the Job Scheduler API.
  • Jobs can be executed independently from one another. Depending on the execution result (i.e. exit status
    Exit status
    The exit status or return code of a process in computer programming is a small number passed from a child process to a parent process when it has finished executing a specific procedure or delegated task...

     signalling success, failure or a specific exit code) of a job any number of successor jobs can be started.
  • Jobs can be executed in parallel up to a configurable number of simultaneous tasks
    Task (computers)
    A task is an execution path through address space. In other words, a set of program instructions that are loaded in memory. The address registers have been loaded with the initial address of the program. At the next clock cycle, the CPU will start execution, in accord with the program. The sense is...

    .
  • Job chains can be seen as an assembly line on which multiple job nodes are passed. Therefore, each job comprises exactly one step in the processing of a job chain. Job dependencies based on execution results of the respective job nodes can be configured for a job chain.
  • Monitoring of directories can trigger job starts, this allows the integration of legacy applications into the business workflow as file transfer
    File transfer
    File transfer is a generic term for the act of transmitting files over a computer network or the Internet. There are numerous ways and protocols to transfer files over a network. Computers which provide a file transfer service are often called file servers. Depending on the client's perspective the...

     is a widespread means to integrate applications.
  • Job starts triggered by built-in calendar, by command line or by web interface.
  • Other applications can start jobs or otherwise control the Job Scheduler via API’s.

Key Features

The Job Scheduler is delivered with a range of standard features, e.g.:
  • Job activities can be limited to timeslots. The Job Scheduler supports any number of timeslots, which can be configured according to individual job requirements.
  • The Job Scheduler allows the assignment of job priorities.
  • Job history protocols are optionally stored in a database.
  • The locking feature prevents two jobs accessing the same resource, e.g. a file or database, at the same time. In other words, only one process at a time can receive the exclusive right to access the resource as long as the lock is active.
  • Standard job packages e.g. for log rotation and cleanup, sanity checking, job execution by remote Job Schedulers, FTP file transfer.
  • Notifications for job execution results per e-mail, configurable logging and monitoring of logs.
  • API to implement jobs and job scripts, e.g. for complex conditional processing.
  • Different graphical user interfaces: A built-in interface for job control and a GUI
    Gui
    Gui or guee is a generic term to refer to grilled dishes in Korean cuisine. These most commonly have meat or fish as their primary ingredient, but may in some cases also comprise grilled vegetables or other vegetarian ingredients. The term derives from the verb, "gupda" in Korean, which literally...

     for managing configurations for several Job Schedulers on different server systems.

Additional Features

  • High-availability Cluster: A Job Scheduler backup cluster ensures fail-safe operation with automatic fail-over. A fail-safe system consists of a primary Job Scheduler and at least one backup, with both these Job Schedulers running on different computers.
  • Load balancing: For a high volume of data with time consuming processing, using multiple Job Schedulers will speed up the processing time considerably, and provide higher availability. In load balancing mode, the processing tasks are shared between multiple Job Schedulers that are handling distributed orders on more than one host.
  • Solution stacks
    Solution stack
    In computing, a solution stack is a set of software subsystems or components needed to deliver a fully functional solution, e.g. a product or service....

     are implementations with third party Open Source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     components that are available for:
    • Network Monitors such as Nagios
      Nagios
      Nagios is a popular open source computer system and network monitoring software application. It watches hosts and services, alerting users when things go wrong and again when they get better....

    • Reporting tools such as JasperReports
      JasperReports
      Teodor Danciu began work on JasperReports in June 2001, the sf.net project was registered in September 2001 and JasperReports 0.1.5 was released on November 3, 2001.JasperReports Version 1.0 was released on July 21, 2005....

    • Secure Shell
      Secure Shell
      Secure Shell is a network protocol for secure data communication, remote shell services or command execution and other secure network services between two networked computers that it connects via a secure channel over an insecure network: a server and a client...

       remote execution, SCP
      Secure copy
      Secure Copy or SCP is a means of securely transferring computer files between a local and a remote host or between two remote hosts. It is based on the Secure Shell protocol....

       Secure Copy and SFTP
      SSH file transfer protocol
      In computing, the SSH File Transfer Protocol is a network protocol that provides file access, file transfer, and file management functionality over any reliable data stream...

       Secure file transfer.

Implementation

The Job Scheduler is written in C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

. Standard jobs for distribution are implemented with Java %28programming language%29.

The Open Source Job Scheduler is customized according to specific business requirements. Enterprise level support is available.

Supported Platforms

Operating Systems:
  • Windows
    Microsoft Windows
    Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

     2000/2003/2008/XP/Vista
  • Linux
    Linux
    Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

     starting with kernel 2.4
  • Solaris 8/9/10 (SPARC
    SPARC
    SPARC is a RISC instruction set architecture developed by Sun Microsystems and introduced in mid-1987....

    , x86)
  • HP-UX
    HP-UX
    HP-UX is Hewlett-Packard's proprietary implementation of the Unix operating system, based on UNIX System V and first released in 1984...

     11 (PA-RISC
    PA-RISC
    PA-RISC is an instruction set architecture developed by Hewlett-Packard. As the name implies, it is a reduced instruction set computer architecture, where the PA stands for Precision Architecture...

    , IA-64)
  • AIX 5.3


Database Management Systems:
  • Oracle
    Oracle Database
    The Oracle Database is an object-relational database management system produced and marketed by Oracle Corporation....

     8.1.7, 9.2, 10g, 11g
  • SQL Server
    Microsoft SQL Server
    Microsoft SQL Server is a relational database server, developed by Microsoft: It is a software product whose primary function is to store and retrieve data as requested by other software applications, be it those on the same computer or those running on another computer across a network...

     2000, 2005, 2008
  • DB2
    IBM DB2
    The IBM DB2 Enterprise Server Edition is a relational model database server developed by IBM. It primarily runs on Unix , Linux, IBM i , z/OS and Windows servers. DB2 also powers the different IBM InfoSphere Warehouse editions...

     8.x
  • Adaptive Server Enterprise
    Adaptive Server Enterprise
    Adaptive Server Enterprise is Sybase Corporation's flagship enterprise-class relational model database server product. ASE is predominantly used on the Unix platform but is also available for Windows.-History:...

     ASE 15
  • MySQL
    MySQL
    MySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...

     version 4.1, 5.x
  • PostgreSQL
    PostgreSQL
    PostgreSQL, often simply Postgres, is an object-relational database management system available for many platforms including Linux, FreeBSD, Solaris, MS Windows and Mac OS X. It is released under the PostgreSQL License, which is an MIT-style license, and is thus free and open source software...

     8.x
  • Firebird
    Firebird (database server)
    Firebird is an open source SQL relational database management system that runs on Linux, Windows, and a variety of Unix. The database forked from Borland's open source edition of InterBase in 2000, but since Firebird 1.5 the code has been largely rewritten ....

     1.5

External links

  • Project web site
  • Software- und Organisations-Service GmbH company web site, located in Berlin
    Berlin
    Berlin is the capital city of Germany and is one of the 16 states of Germany. With a population of 3.45 million people, Berlin is Germany's largest city. It is the second most populous city proper and the seventh most populous urban area in the European Union...

    , Germany
    Germany
    Germany , officially the Federal Republic of Germany , is a federal parliamentary republic in Europe. The country consists of 16 states while the capital and largest city is Berlin. Germany covers an area of 357,021 km2 and has a largely temperate seasonal climate...

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK