使用 movielens + logstash 给 elasticsearch导入测试数据

安装logstash

从https://www.elastic.co/cn/downloads/past-releases#logstash选择一个匹配的版本下载
logstash主要作用是将数据格式转换导入到指定存储

数据集

选择 https://files.grouplens.org/datasets/movielens/ml-latest-small.zip
这个大小只有1M左右

编写logstash.conf

这个文件是告诉logstash去那里拿数据并转换数据导入到elasticsearch
input 中指定数据来源
filter 中指定数据转换
output 转换后的数据存储位置
具体参数含义参官网文档https://www.elastic.co/guide/en/logstash/7.17/index.html

input {
  file {
    # 下载的数据集位置
    path => "/Users/xieruixiang/Downloads/ml-latest-small/movies.csv"
    start_position => "beginning"
    sincedb_path => "/dev/null"
  }
}
filter {
  csv {
    separator => ","
    columns => ["id","content","genre"]
  }

  mutate {
    split => { "genre" => "|" }
    remove_field => ["path", "host","@timestamp","message"]
  }

  mutate {

    split => ["content", "("]
    add_field => { "title" => "%{[content][0]}"}
    add_field => { "year" => "%{[content][1]}"}
  }

  mutate {
    convert => {
      "year" => "integer"
    }
    strip => ["title"]
    remove_field => ["path", "host","@timestamp","message","content"]
  }

}
output {
   elasticsearch {
     hosts => "http://localhost:9200"
     index => "movies"
     document_id => "%{id}"
   }
  stdout {}
}
执行数据转换导入

logstash.conf 我写在了 /Users/xieruixiang/elasticsearch/conf 目下

# elasticsearch 是我起的名字,原先下载的被我改成es了
# 这是 elasticsearch 目录结构
xieruixiang@xieruixiangdeMacBook-Pro elasticsearch % ls
conf		docker		es		kibana		logstash

# 进入logstash目录,运行logstash转换数据
bin/logstash -f /Users/xieruixiang/elasticsearch/conf/logstash.conf
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值