基于rsync+sersync数据实时双向同步的设计(一)
来源:互联网 发布:uva 编程 编辑:程序博客网 时间:2024/04/30 13:00
大数据最广泛的一个应用场景就是构建数据仓库,数据仓库中的数据生命周期一般包括:数据的获取,数据的分类,数据的解析清洗,上传到hdfs。或多或少,主要都是这几个过程,asiainfo这边的离线分析的数据,通过远程接口机接入(文件或压缩包的形式),部通过部署的可视化的etl工具(木兰工具),定时去扫描远程接口机的文件,然后开启ftp服务,ftp到本地,在进行解析,加工,入库。定时包括天级别,小时级别,分钟级别。这种定时去扫描拉取的策略明显是有很大弊端的。定时开启ftp服务区拉取数据,会导致某段时间的负载激增,机器负载严重的情况下,ftp就像小水管一样,很慢很慢,导致数据延迟,这既没有合理利用机器资源,也可能造成数据延迟。而且扫描文件的时候是根据文件日期去匹配的,这会导致一个问题,就是扫描的时候个别文件还没过来,我只ftp了扫描的文件,将后过来的符合规则的文件遗漏在远程接口机上,最终造成数据积压。
这个时候,数据实时同步,就显得尤为重要,拉取的过程其实就是一个同步的过程。
为什么要用rsync+sersync的架构?
1.sersync是基于inotify开发的,类似于inotify-tools
2.sersynvc可以记录下被监听目录中发生变化的(增删改)具体到某一个文件或目录的名字,然后使用rsync同步的时候,只同步发生变化的这个文件或者这个目录。速度很快,所以数据量小的时候可以用inotify-tools数据量大的话最好用sersync
方案:
通过rsync+sersync来实现数据的双向同步
rsync:数据同步工具
sersync:封装了inotify-tools,监控文件夹的变化,并且可以明确监控到哪个文件变化,通过事件触发(create,open,modify,closeWrite,close,moveFrom,moveTo,delete)rsync同步工具的工作。
方案优点:
合理运用机器资源,不会出现机器负载脉冲式变化
开启服务,实时监控remote端数据文件的变化,实时同步到本地,减少数据延迟
支持失败重试,断点续传,可以根据机器资源变化,设定线程池大小
本地处理后的数据会在remote端同步删除,不会误删数据
同步数据完整不改变(bin的传输方式)
可以维护同步数据的列表,为后续需求开发预留(监控)
阅读全文
0 0
- 基于rsync+sersync数据实时双向同步的设计(一)
- Linux下Rsync+sersync实现数据双向实时同步
- sersync:基于 rsync + inotify 实现数据实时同步
- 通过 rsync sersync 实现高效的数据实时同步架构
- Rsync+sersync实现数据实时同步(Linux环境)
- Rsync+Sersync实时同步
- Linux下Rsync+sersync实现数据实时同步
- Linux下Rsync+sersync实现数据实时同步
- linux系统安装rsync和sersync实现数据实时同步详细步骤(rsync实时同步)
- sersync+rsync实现文件实时同步
- 真正的inotify+rsync实时双向同步
- rsync + sersync + inotify-tools实现数据同步
- Linux-非结构化数据同步-Linux下Sersync+Rsync实现非结构化增量差异数据的实时同步3
- 基于Rsync的准实时同步软件RsyncAuto(更新)
- linux系统使用Rsync+sersync实现文件实时同步
- 企业级rsync同步:sersync多目录实时步操作记录
- sersync + rsync 服务器同步
- 磁盘同步rsync+sersync
- 以创新赢得认同:vivo X7开启"热卖模式"
- js检测移动端横竖屏,并进行相应操作
- 预告:工业机器人为什么要使用机器视觉系统 | 硬创公开课
- 从自动驾驶等级说开,看看自动驾驶和辅助驾驶究竟有何区别
- 今天全中国人都在买它:vivo X7火爆上市每秒售出16.7台!
- 基于rsync+sersync数据实时双向同步的设计(一)
- git概念和原理
- 大番薯H5十三水棋牌源码下载
- 基本光照模型实现-高光反射
- MapReduce之全流程讲解
- [NetWrap]Semantic Video CNNs through Representation Warping
- leetcode 23. Merge k Sorted Lists (分治法)
- 【Android】Fragment懒加载和ViewPager的坑
- 关于特斯拉命案,外国人这样说