There are four broad types for all of the search commands: distributable streaming, centralized streaming, transforming, generating. These types are not mutually exclusive. A command might be streaming or transforming, and also a generating command.
The following tables list the commands that fit into each of these types. For detailed explanations about each of the types, see Types of commands in the Search Manual.
A streaming command operates on each event as the event is returned by a search.
- A distributable streaming command runs on the indexer or the search head, depending on where in the search the command is invoked. Distributable streaming commands can be applied to subsets of indexed data in a parallel manner.
- A centralized streaming command applies a transformation to each event returned by a search. Unlike distributable streaming commands, a centralized streaming command only works on the search head.
|bin||Streaming if specified with the |
|cluster||Streaming in some modes.|
|dedup||Streaming in some modes.|
|fillnull||Distributable streaming when no |
|join||Centralized streaming, as long as there is a defined set of fields to join to.|
|lookup||Distributable streaming when specified with |
|search||Distributable streaming if used further down the search pipeline. Generating when the first command in the search.|
|xyseries||Distributable streaming if the argument |
A generating command generates events or reports from one or more indexes without transforming the events.
|from||Can be either report-generating or event-generating depending on the search or knowledge object that is referenced by the command.|
|Inputlookup||Event-generating (centralized) when |
|metadata||Report-generating. Although metadata fetches data from all peers, any command run after it runs only on the search head.|
|search||Event-generating (distributable) when the first command in the search, which is the default. Distributable streaming if used as a subsearch.|
|tstats||Report-generating (distributable) when |
A transforming command orders the results into a data table. The command "transforms" the specified cell values for each event into numerical values for statistical purposes.
In earlier versions of Splunk software, transforming commands were referred to as reporting commands.
|addtotals||Transforming when used to calculate column totals (not row totals).|
|xyseries||Transforming if |
There are a handful of commands that do not fit into these types. Some commands fit into the types only in specific situations.
The following commands are not transforming, not distributable, not streaming, and not orchestrating: sort, eventstats, and some modes of cluster, dedup, and fillnull.
Commands by category
Splunk SPL for SQL users
This documentation applies to the following versions of Splunk® Enterprise: 7.0.0, 7.0.1, 7.0.2, 7.0.3, 7.0.4, 7.0.5, 7.0.6, 7.0.7, 7.0.8, 7.0.9, 7.0.10, 7.0.11, 7.0.13
Feedback submitted, thanks!