.. _glossary:

Glossary of AMPS Terminology
============================

==========================  ==========================================================================
Term                        Definition
==========================  ==========================================================================
Acknowledgment              A networking technique in which the receiver of a message 
                            is responsible for informing the sender that the message 
                            was received. 
                            
                            In AMPS:

                            -  Commands to the AMPS server from an application are asynchronous:
                               AMPS responds with acknowledgment messages to indicate the results
                               of the command.

                            -  An application acknowledges messages from an AMPS queue to indicate
                               that the message has been fully processed, and AMPS can remove the
                               message from the queue.

Authentication              The process of establishing a proven identity for a connection to AMPS.

Conflation                  The process of merging a group of messages into a single message. For
                            example, when a particular record in the SOW is updated hundreds or
                            thousands of times a second, conflation can enable an application to
                            receive the most recent update every 300ms, reducing the network traffic
                            to the application while still guaranteeing that the application has
                            recent data.

Conflated Topic             A copy of a SOW topic that conflates updates on a specified interval.
                            This helps to conserve bandwidth and processing resources for
                            subscribers to the conflated topic.

Delta                       A message that contains only the differences between the previous state
                            of a stored message and the new state of the stored message. AMPS
                            supports delta messaging for both publish (changing a subset of fields
                            in a message) and subscribe (receiving only the fields of a message that
                            have changed).

Entitlement                 The process of assigning permissions to a connection based on the
                            identity established for that connection.

Expression                  A text string that produces a specific value. AMPS uses expressions in
                            filters and when constructing fields for enrichment or projecting views.

Filter                      A text string that is used to match a subset of messages from a larger
                            set of messages. In AMPS, every filter is an AMPS expression that
                            returns TRUE or FALSE.

Message Expiration          The process where the lifespan of records stored is limited.

Message Type                The data format used to encapsulate messages. Each message within AMPS         
                            has a single, defined message type. Each connection to AMPS uses a
                            single, defined message type.

OOF (Out of Focus)          Notification to a subscriber that a message which was previously a
                            result of a SOW or a SOW subscribe filter result has either expired,
                            been deleted from the SOW or has been updated such that it no longer
                            matches the filter criteria.

Replication                 The process of duplicating the messages stored into an AMPS instance to
                            one or more additional AMPS instances.

Replication Destination     An instance of AMPS that is receiving messages directly from another
                            AMPS instance (the *replication source*).

Replication Source          An instance of AMPS which receives a published message from an
                            application, and then sends the message directly to one or more other
                            AMPS instances (the *replication destinations*).

Slow Client                 A client that is being sent messages at a rate which is faster than it
                            can consume, to the point where AMPS detects that the network buffer to
                            the client has filled.

SOW (State of the World)    The last value cache used to store the current state of messages
                            belonging to a topic.

SOW Key                     A value used to identify a unique message in AMPS. For a given topic,
                            you can configure AMPS to generate the SOW key based on content in the
                            message, provide the SOW key on each message published or use a SOW key
                            generator module to programmatically create the SOW key.

Topic                       A label which is affixed to every message by a publisher which is used to
                            aggregate and group messages.

Transport                   The protocols used to transfer messages between AMPS
                            subscribers, publishers and replication destinations.

Transaction Log             A history of all messages published which can be used to recreate an up
                            to date state of all messages processed. Applications can query and
                            replay messages from the transaction log.

View                        A topic constructed by AMPS from the contents of one or more SOW topics.
                            A view can aggregate or transform the underlying topics and can be of a
                            different message format than the underlying topics.

==========================  ==========================================================================


