Streamsets技术验证


目录

  • Streamsets技术验证
    • 1、本地文件读取入kafka生产者测试
      • 1.1 创建file-kafka通道
      • 1.2 Directory组件配置
      • 1.3 JavaScript Evaluator组件配置
      • 1.3 Kafka Producer组件配置
      • 1.4 执行测试
    • 2、kafka消费入Mysql测试
      • 2.1 创建kafka消费到Mysql通道
      • 2.2 Kafka Consumer配置
      • 2.3 JDBC Producer配置
      • 2.4 执行测试结果
    • 3、kafka消费入Hbase测试
      • 3.1 创建kafka消费到Hbase通道
      • 3.2 Kafka Consumer配置
      • 3.3 Hbase入库组件配置
      • 3.4 执行测试结果
    • 4、kafka消费入Elasticsearch测试
      • 4.1 创建kafka消费到Elasticsearch通道
      • 4.2 Kafka Consumer配置
      • 4.3 Elasticsearch入库组件配置
      • 4.4 执行测试结果
    • 5. 总结

1、本地文件读取入kafka生产者测试

1.1 创建file-kafka通道

1.2 Directory组件配置

Directory组件为本地文件读取组件

Files Directory:本地读取文件夹
File Name Pattern:读取文件的文件名格式
Number of Threads:线程数量,同时处理文件数量,比如一个文件夹中存在多个可读取文件,多个线程后无法保证读取数据顺序
File Name Pattern Mode:文件名模式
Batch Size (recs) :批量大小,代表此次读取多少数量到下个阶段
Batch Wait Time (secs) :批处理等待时间(秒),低级别读卡器缓冲区限制,以避免内存不足错误

1.3 JavaScript Evaluator组件配置


此处做简单的数据处理,records为读取的20000条数据list,此处遍历list后判断每个record中websit_xmp参数是否存在,不存在不输出到下个阶段,再判断timestamp参数格式是否为日期格式,不为日期格式不输出到下个阶段。

1.3 Kafka Producer组件配置

Hbase topic

Mysql topic

Es topic

此处创建三个Kafka Producer组件,分别为hbase生产者、mysql生产者、elasticsearch生产者,Broker URI为kafka连接节点,kafka集群连接可用逗号分隔配置,Topic为往哪个topic生产,此处分别为hbase、mysql、elasticsearch

1.4 执行测试



此处测试文件大小为1.4g的csv文件,批处理读取为20000,一共处理时间约为31分钟,文件读取平均每秒7914条,kafka平均每秒生产4712条。

2、kafka消费入Mysql测试

2.1 创建kafka消费到Mysql通道

2.2 Kafka Consumer配置


此处选择Apache Kafka2.7的stagelib,连接的kafka服务版本为2.13-2.7.0


Broker URI:kafka连接节点,集群用逗号分隔
Topic:消费主题
Consumer Group:消费组


ZooKeeper URI:zookeeper连接地址,多个zookeeper用逗号分隔
Max Batch Size (records) :每次消费最大数据量,此处为50000一批次消费
Rate Limit Per Partition (Kafka messages) :Kafka分区的速率

2.3 JDBC Producer配置


选择JDBC Producer组件,需要添加数据库连接驱动,此处为mysql数据入库,选择Mysql驱动进行上传,在 External Libraries中上传驱动文件


Required Fields配置入库字段



JDBC Connection String:数据库连接url
Schema Name: 模式
Table Name : 入库的表名称
Field to Column Mapping: 配置字段名称映射,不配置为默认名字

2.4 执行测试结果


入库效率为33分钟入库580049条数据,每秒平均为294条,效率偏低

3、kafka消费入Hbase测试

3.1 创建kafka消费到Hbase通道

3.2 Kafka Consumer配置

此处与2.2 Kafka Consumer基本配置相同,不同点为消费topic不同

3.3 Hbase入库组件配置


Stage Library此处选择CDP7.1,可根据版本选择不同的组件处理包,hbase服务版本为2.3.5


ZooKeeper Quorum:zookeeper的ip,此处配置了本地host映射,所以为master
ZooKeeper Client Port:zookeeper的port
ZooKeeper Parent Znode:hbase在zookeeper中的节点,一般hbase注册到zookeeper默认为/hbase
Table Name:入库表名
Row Key:主键名称,配置stremsets中的字段名称
Fields:配置字段映射,column为hbase的列族:列名

3.4 执行测试结果


入库效率为25分钟入库423293条,每秒入库为293条,效率偏低

4、kafka消费入Elasticsearch测试

4.1 创建kafka消费到Elasticsearch通道

4.2 Kafka Consumer配置

此处与2.2 Kafka Consumer基本配置相同,不同点为消费topic不同

4.3 Elasticsearch入库组件配置


HTTP URLs:Es服务器连接ip
HTTP Port: Es服务器端口
Index: 入库索引名
Mapping: 索引type,不知道为什么叫Mapping
Document ID:文档id,创建/更新/删除所需的文档ID的表达式,索引可选,保留为空以使用自动生成的ID

4.4 执行测试结果


入库效率为70分钟入库10820692条数据,平均每秒2576条数据,效率相对于Mysql与Hbase高

5. 总结

kafka生产消息效率为31分钟数据全部生产,文件读取平均每秒7914条,kafka平均每秒生产4712条,可能配置kafka集群会提高效率,效率高。
mysql入库效率为33分钟入库580049条数据,每秒平均为294条,效率偏低。
Hbase入库效率为25分钟入库423293条,每秒入库为293条,效率偏低。
es入库效率为70分钟入库10820692条数据,平均每秒2576条数据,效率相对于Mysql与Hbase高。

Streamsets技术验证相关推荐

  1. 最新开源:3TS腾讯事务处理技术验证系统(下)

    作者:李海翔,腾讯TEG数据库技术专家 近日,中国人民大学-腾讯协同创新实验室正式举行揭牌仪式.据了解,双方已聚焦在数据库基础研究领域进行了多年的前沿产学研合作,以及数据库人才合作培养计划,在推进数据 ...

  2. 腾讯与中国人民大学开源最新研究成果:3TS腾讯事务处理技术验证系统

    作者:李海翔,腾讯TEG数据库技术专家 一个是全球领先的科技公司,一个是中国数据库基础学术研究的摇篮,近日,中国人民大学-腾讯协同创新实验室正式举行揭牌仪式.据了解,双方已聚焦在数据库基础研究领域进行 ...

  3. 热泵精馏_异丙醇丙酮氢气化学热泵技术验证示范平台建成并完成调试

    近日,中国科学院工程热物理研究所传热传质研究中心超强换热团队设计研发的我国首座"异丙醇-丙酮-氢气化学热泵技术验证示范平台"在江苏省高邮市江苏杨钢特钢有限公司建成.目前,平台已完成 ...

  4. 每日新闻丨我国完成太阳帆在轨关键技术验证;美银看好微软云计算领域增长...

    ▼ 趋势洞察 任正非:如果无法与谷歌合作,华为还有非常宏大的"Plan B" 近日任正非表示,与微软不同的是,谷歌并没有获得美国商务部的许可,因此不能恢复与华为的业务,这意味着华为 ...

  5. 亚马逊云科技帮助Gemsouls在云上快速实现技术验证与部署

    元宇宙热度居高不下,它所创造的虚拟世界进一步拉近了人与人之间的距离,用数字化的形式消除地理与空间上的隔阂.而高度拟真化的虚拟人与AI虚拟社交,是元宇宙落地的重要领域,打造以人工智能驱动的虚拟人社交平台 ...

  6. .Net平台互操作技术:03. 技术验证

    上面两篇文章分别介绍了.Net平台互操作技术面临的问题,并重点介绍了通过P/Invoke调用Native C++类库的技术实现.光说不做是假把式,本文笔者将设计实验来证明P/Invoke调用技术的可行 ...

  7. 在PHP中应用Ajax技术验证用户名

    index.php 1 <html> 2 <head> 3 <title>在PHP中应用AJAX技术检测用户名</title> 4 <meta h ...

  8. openwrt upnp 技术验证

    一.参考网站 http://www.miui.com/thread-1849642-1-1.html http://www.360doc.com/content/14/1009/17/13468863 ...

  9. 利用Haproxy实现http和TCP反向代理和负载均衡(入门和技术验证)

    系统访问量上去遇到了性能瓶颈,解决方法一般都是从两个方向入手Scale Up 和Scale Out.Scale Up适用于哪些钱多的系统,因为Scale Up其实就是直接升级硬件,CPU.内存.IO哪 ...

最新文章

  1. Oracle数据库无法启动解决方法
  2. win安装wordcloud报错解决方案
  3. html生成1-32位随机数,如何生成一个32位的随机数 | 求索阁
  4. Alibaba Cloud Toolkit 中SLS插件助力线上服务问题排查
  5. 注意程序的[error]log
  6. 中国首个5G全覆盖产研一体化创新园启动
  7. excel退出打印预览快捷键?
  8. vue网易云二维码登录
  9. jdk证书的相关命令
  10. 小程序如何写一个优美的tab选项卡
  11. np.take()函数用法 python numpy
  12. 【UEFI实战】UEFI中使用汇编代码
  13. sRGB,RAW图像意义
  14. 简单介绍迪杰斯拉Dijkstra算法步骤
  15. oracle create bigfile tablespace,create bigfile tablespace
  16. 深度学习:GPU云服务器的租用
  17. uni-app 开发App 口令弹窗
  18. Python3 print pprint
  19. 用户画像 用户画像表
  20. 织梦高端婚纱摄影网站织梦模板(带手机端

热门文章

  1. c++/c中的argc与argv[]
  2. 小型mysql_小型数据库的选择(轻量级数据库)(转)
  3. Oracle tnsping 03505,tnsping 命令
  4. 用计算机写作信息技术集体备课,信息技术集体备课教案
  5. 小程序怎么用阿里图库(可改变颜色)
  6. android快速开发一个app,如何高效率开发Android一个APP?
  7. html的iframe属性
  8. Mybatis一级缓存和二级缓存(带测试方法)
  9. HDU-4856 Tunnels(BFS+状压DP)
  10. php套件包 5.3,PHP套件FastCGI版