数据集成面试题

Flume

一、flume组成

sql 复制代码
--Agent
Flume的部署单元,本质上是一个JVM进程,Agent主要由Source、Channel、Sink三个部分组成
--Source
收集数据,以event为单元进行封装发送给channel
参数配置:当采集速度比较慢,调整batchSize参数,该参数决定了source 一次批量运输events到channel 的条数
--Channel
Source接收的数据会被发送到Channel缓冲区暂时存储
参数配置:选择内存(memory)时,channel性能最好,选择磁盘(file)时,安全性高,但是性能差
--Sink
用于将Channel中的数据发送到外部数据源。
参数配置:调整batchsize参数,决定了sink一次批量从channel 读取的events条数

二、flume的事务机制

sql 复制代码
flume使用两个独立事务put和take,分别负责从source 到channel 、channel 到sink,记录事件状态,保证两个过程的数据不会丢失

三、flume的数据会丢失吗?

sql 复制代码
根据flume的事务机制,flume的数据一般不会丢失,除非使用的时候memory channel ,在机器宕机的时候会导致数据丢失,或者channel 满了,sources无法写入导致数据丢失.
此外,也有可能完成数据重复,比如sink接收到一批数据,处理到一半宕机了,处理完的数据没有给channel 发送响应,导致channel 重新发送数据,造成数据重复。

四、flume的适用场景?

sql 复制代码
1、大规模数据的离线采集
2、日志收集与聚合
3、实时数据采集

Sqoop

一、sqoop使用场景

sql 复制代码
sqoop用于关系型数据库(如Mysql、Oracle、SQL Server)与hdfs之间的数据传输

二、Sqoop底层运行的任务是什么

sql 复制代码
Sqoop会为数据传输生成MapReduce作业,但是Sqoop的MapReduce任务只有Map阶段,没有Reduce阶段。

DataX

一、简单介绍一下DataX(DataX使用场景)

sql 复制代码
DataX是一个由阿里巴巴开源的离线数据同步工具,实现包括主流关系型数据库、NoSQL、大数据计算系统在内的多种异构数据源之间数据同步功能。

二、DataX架构介绍

sql 复制代码
--Reader
负责采集数据源的数据,将数据发送给Framework
--Framework
用于连接reader和writer,作为两者的数据传输通道,并处理缓冲、流控、并发、数据转换等核心技术问题。
--Writer
负责不断向Framework取数据,并将数据写入到目的端

三、 DataX的使用

sql 复制代码
基于官网提供的JSON格式配置文件模版,选择对应的读写插件,根据实际情况修改相关配置,最后使用dataX命令提交运行即可
相关推荐
远创智控研发中心012 天前
半导体引脚检测工位用串口转以太网配合跨网段耦合器降低数据延迟至50ms
数据采集·西门子plc·工业自动化·跨网段耦合器
远创智控研发中心013 天前
灌装产线改造方案 三菱 FX3U 圆口 PLC 搭配以太网转换模块实现无线数据监控与安全联锁
数据采集·三菱plc·以太网模块·工业自动化·无线以太网模块
捷米特网关模块通讯3 天前
集成Web服务器与密码防护的以太网桥接器实现远程配置与固件升级
数据采集·工业自动化·智能网关·总线协议·欧姆龙plc
捷米特网关模块通讯3 天前
欧姆龙圆口CPM1A配以太网转换器支持6路TCP连接同步采集印染参数与产量数据
数据采集·以太网模块·工业自动化·总线协议·欧姆龙plc
peixiuhui4 天前
ARM工控机与边缘计算网关:工业现场的算力革命与选型实践
网关·边缘计算·数据采集·开发板·工控机·rk3506·工控板
康谋自动驾驶5 天前
GMSL + 硬件PTP方案,真能让ADAS路测告别“数十毫秒偏差”吗?
汽车·数据采集·硬件·传感器·adas·时间同步
远创智控研发中心016 天前
网络互通方案:跨网段耦合器处理 PLC 固定 IP 冲突难题
数据采集·西门子plc·工业自动化·跨网段耦合器
捷米特网关模块通讯8 天前
无需改动程序,PLC串口转以太网桥接器助力CP1H快速接入组态王与MCGS
网关·数据采集·以太网模块·工业自动化·工业智能网关·欧姆龙plc
远创智控研发中心018 天前
核心功能集成以太网处理器便捷完成西门子设备产线升级
数据采集·西门子plc·以太网模块·工业自动化·总线协议
kyle~9 天前
ROS2---rosbag2记录和回放话题、服务和动作数据
linux·机器人·数据采集·ros2