大数据采集系统搭建

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 大数据采集系统搭建

1 采集系统介绍

对于数据的抽取通常会搭建专业的数据采集系统来完成各种源数据的抽取。

采集系统的执⾏流程如下:


2 采集系统搭建

搭建步骤如下:

  1. 配置Kafka-Connecter(kafka-to-hdfs)
  2. 部署采集系统
  3. 部署web前端

2.1 配置

启动Kafka - Connector

先新建一个kafka-to-hdfs目录, 把lib目录复制到kafka-to-hdfs内, 目录结构如下图:

.
`-- kafka-to-hdfs
    `-- lib
        |-- kafka-to-hdfs.jar
    |-- .....

在kafka ( 项目中需要上传到kafka容器中 ) 的安装目录新建 plugins目录把kafka-to-hdfs目录复制进去, 最终目录结构如下图:

. ( kafka目录 )
|-- LICENSE
|-- NOTICE
|-- bin
|-- config
|-- libs
|-- logs
|-- plugins
|   `-- kafka-to-hdfs
|       `-- lib
|           |-- kafka-to-hdfs.jar
|           |-- ......
|-- site-docs

在config目录 找到connect-distributed.properties, 修改4项目配置, 新增加一项目配置, 详细修改如下:

## key.converter 与 value.converter 默认值
# key.converter=org.apache.kafka.connect.json.JsonConverter
# value.converter=org.apache.kafka.connect.json.JsonConverter
## 修改为:
key.converter=org.apache.kafka.connect.storage.StringConverter
value.converter=org.apache.kafka.connect.storage.StringConverter
## 是否开启json转换
# key.converter.schemas.enable=true
# value.converter.schemas.enable=true
## 修改为:
key.converter.schemas.enable=false
value.converter.schemas.enable=false
## 新增配置, 指定自定义Connector的配置, 这里是以插件的方式, 这里使用的是绝对路径
plugin.path=/opt/kafka_2.11-2.2.0/plugins/kafka-to-hdfs

以上配置完成, 接下来是启动及测试

2.2 启动

启动命令如下:

# 进行kafka安装目录, 执行下面命令启动
./bin/connect-distributed.sh ./config/connect-distributed.properties
# 启动过程中没有发现报错说明启动成功, 可以使用ctrl + c 结束, 然后后台启动 
# 后台启动方式
nohup $KAFKA_HOME/bin/connect-distributed.sh $KAFKA_HOME/config/connect-distributed.properties >$KAFKA_HOME/logs/output_distributed 2>&1 &

3 提交 Connector

3.1 提交 Connector

提交接口: http://localhost:8083/connectors

请求类型: POST

参数类型: JSON

{
  "name": "visit_topic", 
  "config": {
    "connector.class": "cn.itcast.bigdata.common.kafka_to_hdfs.hdfs.HdfsSinkConnector", 
    "tasks.max": "1", 
    "topics": "visit_topic", 
    "hdfs.url": "hdfs://xc-online-hadoop:9000/",
    "flush.size": "100", 
    "expression":"yyyy-MM-dd", 
    "hdfs.path": "/user/hive/external/data_course/course_visit_source/", 
    "name": "visit_topic" 
  }
}

3.2 Connector其他REST API

注意这里是本机测试, ip为: localhost, 你测试时以你的为准

查询所有 Connector:

# 接口
http://localhost:8083/connectors
# 请求方试
GET
# 参数

查询指定 Connector 状态

# 接口
http://localhost:8083/connectors/{name}/status
# 请求方试
GET
# 参数 - Path Val
指定Connector的名字

查询指定 Connector 配置参数

# 接口
http://localhost:8083/connectors/{name}/config
# 请求方试
GET
# 参数 - Path Val
指定Connector的名字

删除指定 Connector

# 接口
http://localhost:8083/connectors/{name}
# 请求方试
DELETE
# 参数 - Path Val
指定Connector的名字

4 测试

测试方式:

js埋点 --> 
  数据发送到采集服务器 --> 
    采集服务器数据发送kafka --> 
      kafka-connect监听topic --> 
        数据持久化到hdfs

效果如下图:

最终hdfs上保存js埋点获取的数据, 如下图所示:

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
4月前
|
数据采集 存储 数据处理
数据平台问题之知识管理系统的效果如何评估
数据平台问题之知识管理系统的效果如何评估
|
4月前
|
分布式计算 DataWorks 关系型数据库
MaxCompute 生态系统中的数据集成工具
【8月更文第31天】在大数据时代,数据集成对于构建高效的数据处理流水线至关重要。阿里云的 MaxCompute 是一个用于处理大规模数据集的服务平台,它提供了强大的计算能力和丰富的生态系统工具来帮助用户管理和处理数据。本文将详细介绍如何使用 DataWorks 这样的工具将 MaxCompute 整合到整个数据处理流程中,以便更有效地管理数据生命周期。
156 0
|
4月前
|
存储 SQL 分布式计算
Hadoop生态系统概述:构建大数据处理与分析的基石
【8月更文挑战第25天】Hadoop生态系统为大数据处理和分析提供了强大的基础设施和工具集。通过不断扩展和优化其组件和功能,Hadoop将继续在大数据时代发挥重要作用。
|
4月前
|
分布式计算 搜索推荐 物联网
大数据及AI典型场景实践问题之通过KafKa+OTS+MaxCompute完成物联网系统技术重构如何解决
大数据及AI典型场景实践问题之通过KafKa+OTS+MaxCompute完成物联网系统技术重构如何解决
|
4月前
|
人工智能 分布式计算 架构师
大数据及AI典型场景实践问题之基于MaxCompute构建Noxmobi全球化精准营销系统如何解决
大数据及AI典型场景实践问题之基于MaxCompute构建Noxmobi全球化精准营销系统如何解决
|
4月前
|
存储 监控 安全
大数据架构设计原则:构建高效、可扩展与安全的数据生态系统
【8月更文挑战第23天】大数据架构设计是一个复杂而系统的工程,需要综合考虑业务需求、技术选型、安全合规等多个方面。遵循上述设计原则,可以帮助企业构建出既高效又安全的大数据生态系统,为业务创新和决策支持提供强有力的支撑。随着技术的不断发展和业务需求的不断变化,持续优化和调整大数据架构也将成为一项持续的工作。
|
4月前
|
存储 数据可视化 大数据
基于Python Django的大数据招聘数据分析系统,包括数据大屏和后台管理
本文介绍了一个基于Python Django框架开发的大数据招聘数据分析系统,该系统具备后台管理功能和数据大屏展示,利用大数据技术收集和分析招聘市场趋势,帮助企业和招聘机构提高招聘效率和质量。
169 3
|
5月前
|
存储 分布式计算 数据可视化
ERP系统中的大数据分析与处理:驱动企业智能决策
【7月更文挑战第29天】 ERP系统中的大数据分析与处理:驱动企业智能决策
455 0
|
5月前
|
机器学习/深度学习 分布式计算 大数据
MaxCompute 2.0:开源系统的集成与创新
增强实时处理能力:进一步加强与Flink等实时处理框架的合作。 强化机器学习支持:提供更多内置的机器学习算法和工具。 增强数据治理功能:提供更完善的数据质量和安全治理方案。
|
5月前
|
存储 分布式计算 Hadoop
阿里巴巴飞天大数据架构体系与Hadoop生态系统的深度融合:构建高效、可扩展的数据处理平台
技术持续创新:随着新技术的不断涌现和应用场景的复杂化,阿里巴巴将继续投入研发力量推动技术创新和升级换代。 生态系统更加完善:Hadoop生态系统将继续扩展和完善,为用户提供更多元化、更灵活的数据处理工具和服务。