- Index

< Previous |  | Next >

# StreamBase Runtime Introduction

The next few pages in this Guide use StreamBase Runtime terminology. These terms are used consistently throughout StreamBase for both StreamBase Studio and command line contexts.

This page provides a brief overview of the StreamBase Runtime. See the Concept Guide for a more detailed discussion, one page per concept.

## StreamBase Runtime Terminology

The StreamBase Runtime, which is based on TIBCO's Distributed Transactional Memory platform, uses the following terms:

- A StreamBase Application is a program that provides organization-specific functionality, potentially on a large scale.

  - A StreamBase Application is run on one or more nodes.

- A fragment is an executable part of a StreamBase Application.

  - You develop fragments in StreamBase Studio.

  - The supported fragment types are: EventFlow, LiveView, and Java.

  - A StreamBase Application solution contains one or more fragments.

- An engine is an execution context for a fragment.

  - In StreamBase, fragment engines are always JVM engines.

- A node is a container for one or more engines.

  - A node can belong to one cluster.

  - A node can host one or more engines.

- A machine is a physical or virtual computer that provides an execution context for a node.

  - One or more nodes can run on a single machine.

- A cluster is a logical grouping of one or more nodes that communicate to support a StreamBase Application.

  - One cluster hosts a single StreamBase Application.

The following diagram shows the relationships between these interdependent terms:

## StreamBase Runtime Layers

An application running in the StreamBase Runtime fabric can be as simple as a single EventFlow fragment running on a single JVM engine, running on a single machine. This combination would be a single-node cluster, and this is how many EventFlow fragments are run and debugged in StreamBase Studio.

Once your EventFlow fragment is developed and ready, you can deploy it from the command line with the epadmin command. This allows you to use configuration files to specify multiple combinations of fragments and engines, including duplicate fragments to provide a high availability application.

Your application can eventually be built up to run on many nodes hosted on several machines, including machines geographically separated.

## The epadmin Command

To run your EventFlow fragments outside of StreamBase Studio, StreamBase provides the epadmin command. To run epadmin, your command line environment must either be:

- On Windows, a StreamBase Command Prompt, which has its environment and PATH configured for StreamBase.

- On macOS and Linux, a shell configured as described in StreamBsae-Configured Shells.

The epdamin command has an extensive built-in help system invoked with epadmin help. For example, invoke epadmin help node for a list of all subcommands and options usable with the important node subcommand.