Command types
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.
Streaming commands
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.
Command | Notes |
---|---|
addinfo | Distributable streaming |
anomalydetection | |
append | |
arules | |
autoregress | Centralized streaming. |
bin | Streaming if specified with the span argument.
|
bucketdir | |
cluster | Streaming in some modes. |
convert | Distributable streaming. |
dedup | Streaming in some modes. |
eval | Distributable streaming. |
extract | Distributable streaming. |
fieldformat | Distributable streaming. |
fields | Distributable streaming. |
fillnull | Distributable streaming when no field-list is specified. When field-list is specified, the fillnull command fits into the Other type.
|
head | Centralized streaming. |
highlight | Distributable streaming. |
iconify | Distributable streaming. |
iplocation | Distributable streaming. |
join | Centralized streaming, as long as there is a defined set of fields to join to. |
lookup | Distributable streaming when specified with local=false
|
makemv | Distributable streaming. |
multikv | Distributable streaming. |
mvexpand | Distributable streaming. |
nomv | Distributable streaming. |
rangemap | Distributable streaming. |
regex | Distributable streaming. |
reltime | Distributable streaming. |
rename | Distributable streaming. |
replace | Distributed streaming. |
rex | Distributable streaming. |
search | Distributable streaming if used further down the search pipeline. Generating when the first command in the search. |
spath | Distributable streaming. |
strcat | Distributable streaming. |
streamstats | Centralized streaming. |
tags | Distributable streaming. |
transaction | Centralized streaming. |
typer | Distributable streaming. |
where | Distributable streaming. |
untable | Distributable streaming. |
xmlkv | Distributable streaming. |
xmlunescape | |
xpath | Distributable streaming. |
xyseries | Distributable streaming if the argument grouped=false in specified. Otherwise Transforming.
|
Generating commands
A generating command generates events or reports from one or more indexes without transforming the events.
Command | Notes |
---|---|
datamodel | Report-generating |
dbinspect | Report-generating. |
eventcount | Report-generating. |
from | Can be either report-generating or event-generating depending on the search or knowledge object that is referenced by the command. |
gentimes | |
inputcsv | Event-generating (centralized). |
Inputlookup | Event-generating (centralized) when append=false , which is the default.
|
loadjob | Event-generating (centralized). |
makeresults | Report-generating. |
metadata | Report-generating. Although metadata fetches data from all peers, any command run after it runs only on the search head. |
mstats | Report-generating. |
multisearch | Event-generating. |
pivot | Report-generating. |
search | Event-generating (distributable) when the first command in the search, which is the default. Distributable streaming if used as a subsearch. |
searchtxn | Event-generating. |
set | Event-generating. |
tstats | Report-generating (distributable) when prestats=true . When prestats=false , tstats is event-generating.
|
Transforming commands
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.
Command | Notes |
---|---|
addtotals | Transforming when used to calculate column totals (not row totals). |
chart | |
cofilter | |
contingency | |
history | |
makecontinuous | |
mvcombine | |
rare | |
stats | |
table | |
timechart | |
top | |
xyseries | Transforming if grouped=true , otherwise distributable streaming.
|
Other commands
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!