我使用以下代码在logstash.conf中创建索引
output {
stdout {codec => rubydebug}
elasticsearch {
host => "localhost"
protocol => "http"
index => "trial_indexer"
}
}
Run Code Online (Sandbox Code Playgroud)
要创建另一个索引,我通常会在上面的代码中用另一个索引替换索引名称.有没有办法在同一个文件中创建多个索引?我是ELK的新手.
我有2个索引movie_indexer
和trial_indexer
.
我使用以下命令删除movie_indexer:
curl -XDELETE "http://localhost:9200/movie_indexer/"
Run Code Online (Sandbox Code Playgroud)
然后我重申了Kibana.它仍显示索引及其值.
我用的时候
curl -XDELETE "http://localhost:9200/.kibana"
Run Code Online (Sandbox Code Playgroud)
之后trial_indexer
就失踪了.
注意:使用后一个命令后,我可以创建索引模式,trial_indexer
但不能为movie_indexer 创建索引模式.
我想删除特定的索引,而不需要为未删除的索引重新创建索引模式.我怎样才能做到这一点?(我正在使用Windows)
我正在尝试将数据附加到我的csv文件中df.write.csv
.这是我在关注spark文档http://spark.apache.org/docs/2.0.1/api/python/pyspark.sql.html#pyspark.sql.DataFrameWriter之后所做的:
from pyspark.sql import DataFrameWriter
.....
df1 = sqlContext.createDataFrame(query1)
df1.write.csv("/opt/Output/sqlcsvA.csv", append) #also tried 'mode=append'
Run Code Online (Sandbox Code Playgroud)
执行上面的代码给我错误:
NameError:名称'append'未定义
没有附加,错误:
路径已经存在.
Spark应该以闪电般的速度完成数据处理.但我想我没有在我的程序中使用正确的功能来使Spark以这种方式工作.
这是我的程序的样子:
from pyspark import SparkContext
from pyspark import SQLContext
from pyspark.sql.types import *
from pyspark.sql import Row
from pyparsing import re
import time
start_time = time.time()
sc = SparkContext("local","test")
sqlContext = SQLContext(sc)
def func1(lines):
for line in lines:
qtype = re.search("qtype=(\S+)",line)
try:
url = re.search(" url=(\S+)",line)
url=url.group(1)
except:
url="null"
time = re.search("(^\S+)",line)
.... #extracting field names
row = Row(time = time.group(1),ttms = ttms.group(1),chi = chi.group(1),pssc = pssc.group(1),cqhm = cqhm.group(1),rtype = rtype.group(1),rdetails = rdetails.group(1),rurl = rurl.group(1),qtype = qtype.group(1),phn = phn.group(1),fqdn …
Run Code Online (Sandbox Code Playgroud)