这不是SQL和Splunk搜索处理语言(SPL)之间的完美映射,但是如果您熟悉SQL,则此快速比较可能有助于快速使用搜索命令。
Database 概念& Splunk 概念
Splunk平台不将数据存储在常规数据库中。而是将数据存储在具有隐式时间维度的分布式,非关系,半结构化数据库中。关系数据库要求预先定义所有表列,并且它们不能仅通过插入新硬件来自动扩展。但是,数据库世界中的许多概念都有类似之处。
SQL query & Splunk search
Splunk搜索可检索索引数据,并可以执行转换和报告操作。 一次搜索的结果可以通过“管道”或从一个命令传递到另一个命令,以过滤,修改,重新排序和分组结果。
table/view & search results
可以将搜索结果视为数据库视图,即动态生成的带有列的行表。
index & index
所有值和字段均由Splunk软件建立索引,因此无需手动添加,更新,删除甚至考虑索引列。 可以快速自动检索所有内容。
row & result/event
Splunk搜索的结果是对应于表行的字段(即列)值的列表。 事件是具有时间戳记和原始文本的结果。 通常,事件是来自日志文件的记录,例如:
173.26.34.223 - - [01/Jul/2009:12:05:27 -0700] "GET /trade/app?action=logout HTTP/1.1" 200 2953
column & field
字段是从搜索中动态返回的,这意味着一个搜索可能返回一组字段,而另一个搜索可能返回另一组字段。 在教了Splunk软件如何从原始基础数据中提取更多字段之后,相同的搜索将返回比以前更多的字段。 字段未绑定到数据类型。
database/schema & index/app
Splunk索引是数据的集合,有点像数据库具有表的集合。 该数据的领域知识,如何提取数据,要运行的报告等都存储在Splunk应用程序中。