Skip to content

一个透明的高并发数据汇聚平台功能主要包括 :数据采集、数据入库、 数据同步、数据管理、数据处理、数据访问接口、数据统计及可视化、数据交换子系统、 数据安全子系统

Notifications You must be signed in to change notification settings

elecDancing/db_center_serectno

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

数据中心项目脱敏版本

image-20240311184432759

包含文件较多 其中demo文件用于测试和练习,与数据中心主干程序无关

image-20240311184510020

idc文件夹 下模拟了数据中心的运行,使用start.sh即可使用调度程序启动所有的相关进程

public文件夹下主要包含了项目运行框架,和oracle的操作

tools文件夹下包含了ftp文件传输,TCP文件传输,数据迁移数据归档等相关程序。

功能模块:

一、数据抽取模块

a)用于从数据源的数据库中抽取数据,生成xml文件;

b)这是一个通用的功能模块,通过配置脚本,就可以从不同的表中抽取数据;

c)支持全量抽取(每次抽取全部的数据)和增量抽取(每次只抽取新增的数据);

d)支持Oracle、MySQL和SQL Server数据库。 你做的是Oracle数据库,其它数据库的由同学/同事负责。

二、基于ftp协议的文件传输模块

a)采用ftp协议,从ftp服务端下载/上传文件;

b)这是一个通用的功能模块,通过配置脚本,就可以实现文件下载/上传任务;

c)把开源的ftp客户端库ftplib.c封装成C++的类,使用起来更方便;

d)支持增量传输的功能,每次只下载/上传新增的文件;

e)适用于不同的业务系统之间传输文件。

三、基于tcp协议的文件传输模块

a)自定义tcp通讯协议,实现了文件传输的服务端和客户端程序,支持文件下载/上传功能。

b)这是一个通用的功能模块,通过配置脚本,就可以实现文件下载/上传任务;

c)采用了异步通讯的方式,传输文件的效率非常高,远超过ftp协议;

d)支持增量传输的功能,每次只下载/上传新增的文件;

e)适用于同一个业务系统的多个服务器之间传输文件。

四、数据处理模块

a)数据处理是指把各种格式(编码)的文件转换成xml文件;

b)数据源文件的格式千奇百怪,所以,数据处理模块由若干个小模块组成,每个小模块负责处理一种格式的文件。

五、数据入库模块

a)把数据抽取模块和数据处理模块生成的xml文件存储到Oracle数据库中;

b)这是一个通用的功能模块,通过配置脚本,就可以实现不同种类数据的入库;

c)根据xml文件名识别数据种类(需要入库的表),查询Oracle的数据字典,得到表的字段名,用字段名解析xml文件,获取数据,把数据入库到表中。

六、数据管理模块

a)大部分的数据可分为热数据和冷数据,数据管理模块的功能是把冷数据删除、备份或归档。

b)数据管理是通用的功能模块,通过配置脚本,就可以实现对不同数据表的管理

七、数据统计模块

数据统计功能的业务相关性比较强,不同的数据有不同的统计需求。数据统计的主要目的是对源始的数据进行二次加工,生成新的数据集、数据产品、报表。

八、数据同步模块

数据中心的数据库是一个集群,核心数据库采用RAC,应用数据库是若干个单实例,核心数据库负责处理数据,应用数据库负责提供数据服务。

a) 数据同步是指把核心数据库中的数据同步到应用数据库中;

b) 这是一个通用的功能模块,通过配置脚本,就可以实现不同表的同步;

c) 利用了Oracle的dblink和数据字典;

d) 支持刷新同步,全表刷新和按条件刷新;

e) 支持增量同步,只同步新增的数据;

f) 支持不同表结构的同步(源表和目的表的表结构不同);

g) 可以指定同步数据的条件。

九、数据访问接口模块

a)采用http协议,为业务系统提供数据服务;

b)这是一个通用的功能,通过配置参数,就可以实现不同的数据访问接口;

c)服务端程序采用了线程、线程通讯、管道、智能指针和epoll等技术;

d)数据访问接口性能瓶颈在Oracle数据库,并发性能在3-5千/秒左右。

e)服务端程序的总体结构如下:

About

一个透明的高并发数据汇聚平台功能主要包括 :数据采集、数据入库、 数据同步、数据管理、数据处理、数据访问接口、数据统计及可视化、数据交换子系统、 数据安全子系统

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published