streamsets 集成 cratedb 测试

我们可以集成crate 到streamsets 中可以实现强大的数据导入,数据分析能力。
演示的是进行csv 文件的解析并输出到cratedb

环境使用docker && docker-compose

环境启动

  • docker-compose yaml 文件
version: "3"
services:
   sets:
     image: streamsets/datacollector 
     volumes:
     - "./ms/data:/data"
     - "./ms/logs:/logs"
     - "./ms/tmp:/tmp"
     ports:
     - "8000:8000"
     - "18630:18630"
   crate:
     image: crate
     ports:
     - "4200:4200"
     - "4300:4300"
     - "5432:5432"
  • 启动
docker-compose up -d
  • 效果

安装cratedb jdbc driver

  • 下载 jdbc driver

    我已经放到github 项目的data 目录

参考地址:
https://bintray.com/crate/crate/crate-jdbc/view/files/io/crate/crate-jdbc-standalone
  • 下载csv 文件

    我已经放到github 项目 的data 目录

https://www.streamsets.com/documentation/datacollector/sample_data/tutorial/nyc_taxi_data.csv
  • 加载jdbc driver

    使用ui 的external library 加载



  • 创建cratedb table
CREATE TABLE taxi (
 hack_license STRING,
 medallion STRING,
 total_amount FLOAT,
 tip_amount FLOAT
);

配置pipeline

  • pipeline flow
  • 配置csv 加载(directory origin)

  • 添加字段转换配置
  • 配置cratedb jdbc productor

问题比较多,主要是用户账户以及健康检查,连接池相关的,经过测试我使用了用户认证,使用默认的crate,参考下面的图即可
crate 官方的文档参考会有问题


密码随意,用户为crate

预览测试


运行&&写入数据


总结

在jdbc 配置中问题比较多,记得通过校验,逐步排除即可。

参考资料

https://crate.io/docs/crate/guide/en/latest/tools/streamsets.html
https://github.com/rongfengliang/streamsets-demos/tree/master/cratedb

posted on 2018-08-23 14:51  荣锋亮  阅读(1000)  评论(0编辑  收藏  举报

导航