Flume适配GaussDB开源开发任务心得

举报
yd_229853316 发表于 2024/12/05 12:00:47 2024/12/05
【摘要】 Flume 是一个分布式、可靠、高可用的海量日志采集、聚合和传输的系统。它最初是 Cloudera 公司开发的,用于在 Hadoop 生态系统中有效地收集、移动和聚合大量的日志数据。主要功能是从各种数据源(如服务器上的日志文件、网络端口、消息队列等)采集数据,并将这些数据传输到数据存储系统进行进一步的分析和处理。

背景介绍

开源for Huawei(参考:https://developer.huaweicloud.com/programs/opensource/contributing/)  通过和公司、高校、社区的开发者合作,完成鲲鹏、昇腾、欧拉、鸿蒙、高斯、云服务等与开源软件的适配开发,帮助繁荣Huawei的基础生态,同时让开源软件能够更加简单、高效的运行于华为云上。

适配过程

  1. 购买 华为云鲲鹏EulerOS环境的ECS 搭建Flume运行环境并启用
  2. 根据任务计划书DEMO设计,准备源端本地数据及脚本;
  3. 根据任务计划书DEMO设计,准备目标端数据库环境以及元数据(表结构);
  4. 根据任务计划书DEMO设计,使用Flume搭建任务流,实现数据的实时同步。

适配准备

  1. 华为云鲲鹏EulerOS环境的ECS(华为云购买);
  2. GaussDB数据库(华为云购买);
  3. Flume服务端(华为云购买ECS后部署)。

2.1 ECS/GaussDB配置

GaussDB

  • 计费模式选择:按需计费
  • 区域:华北-北京四
  • GaussDB数据库引擎版本 : V2.0-8.201.0
  • GaussDB内核引擎版本:505.2.0
  • CPU/内存 规格:16 vCPUs | 128 GB 
  • 性能规格:鲲鹏独享型(1:8)
  • 镜像类型:公共镜像
  • 镜像:openEuler 20.03 64bit with ARM100GiB

鲲鹏ECS X1:

  • 计费模式选择:按需计费
  • 区域:华北-北京四
  • CPU架构:x86计算
  • CPU规格:xlarge.4
  • CPU规格:8vCPUs&&24GiB
  • 镜像类型:公共镜像
  • 镜像:Huawei Cloud EulerOS 2.0 标准版 64 ARM

2.2 其它

ECS安全组配置 配置规则 → 出/入方向规则 → 一键放通常用端口

也可直接放通所有端口

3 Demo开发

  1. 准备源端数据以及数据生成脚本。
  2. 准备目标端GaussDB数据库环境以及元数据(表结构)--目标端没有数据
  3.  启动数据生成脚本工作流 服务, 本地数据实时同步到目标端GaussDB数据库
  4. 数据验证

4 适配过程中的问题记录

  • 关于 source的选择

    推荐使用 Taildir Source  高效稳定 不会丢失数据,不推荐使用 ExecSource 

         参考:https://flume.apache.org/releases/content/1.7.0/FlumeUserGuide.html#taildir-source

exec.png

  • 关于数据同步脚本

         注意标点符号 否则Flume 在 sink 时候会报错 语法错误

column.png

sytax.png

  • Flume实现本地数据同步总结      

        1.能够实时采集数据 并且实时写入数据到GaussDB 当中,而且没有发生丢失数据的情况,整个过程 高效稳定。   

        2.Flume支持多种自定义source数据源及sink数据下沉场景,使用场景较广。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。