数据交换平台的双内存设计

一、数据交换平台

数据交换平台的项目目的,就是为了解决异构数据库之间的数据交换问题。

这个平台的设计,参考了淘宝开源的DataX、大众点评的Wormhole,等,受到的启发很大。

项目由小到大,逐步形成平台化发展,几乎汇总了公司后台db之间的所有数据同步,任务个数有近500个,每天数据量达3亿。

目前,平台运行稳定,推广部署到其他分公司。趁这个机会,整理了一些文档,拿出来分享,也算是回馈感恩吧。

上一篇文档,说了一些需求和初步设计。

这一篇重点说下,两块共享内存的设计细节,直接上图。

二、任务实时数据:Shmrt

三、任务详细参数:Shmtd

时间: 2024-10-10 15:26:45

数据交换平台的双内存设计的相关文章

数据交换平台的架构设计

序言 说到架构设计,不敢妄自牛逼.只能默默地向Linux致敬,没有强大的linux系统,我们做的架构设计,做的程序一天说不定挂几次.(windows系统就不说了,呵呵) 数据交换平台的架构发展 架构不是一蹴而就的,是随着团队技术能力的积累,随着公司数据平台的逐步完善,随着相关开源产品的深入学习,逐步形成和进化的. 不同阶段,需要不同的架构.因此,不能单纯地说,哪个架构就好,哪个架构就不好.只要适合当时的环境,就是最好的.对公司业务的发展,对其他模块的项目支撑,没有起到约束和限制的作用,就OK.如

物理隔离下的数据交换平台难点解析与实践(一)

目录 第零章.前言:为什么?做什么?怎么做? 第一章.数据交换平台的一些基本概念 目录 第零章.前言:为什么?做什么?怎么做? 最近带队做了公司的一个项目,叫数据交换平台,旨在物理隔离的情况下对多端业务系统进行数据的加密.传输.监控. 正好这个项目的架构师也在公司做了一次架构层面的技术分享,我便把此次分享和我在项目实践中遇到的一些坑一起整理出来,形成本系列文章. 本系列文章介绍在物理隔离的网络条件下进行数据交换的难点,以及如何保证文件交换的可靠性和安全性,如何与业务系统做到低耦合. 本文的目的在

【大数据干货】基于Hadoop的大数据平台实施——整体架构设计

大数据的热度在持续的升温,继云计算之后大数据成为又一大众所追捧的新星.我们暂不去讨论大数据到底是否适用于您的公司或组织,至少在互联网上已经被吹嘘成无所不能的超级战舰.大数据的热度在持续的升温,继云计算之后大数据成为又一大众所追捧的新星.我们暂不去讨论大数据到底是否适用于您的公司或组织,至少在互联网上已经被吹嘘成无所不能的超级战舰.好像一夜之间我们就从互联网时代跳跃进了大数据时代!关于到底什么是大数据,说真的,到目前为止就和云计算一样,让我总觉得像是在看电影<云图>--云里雾里的感觉.或许那些正

zw版_Halcon图像数据交换和全内存计算.TXT

Halcon由于效率和其他原因,内部图像采用了很多自有格式,提高运行速度,但在数据交换方面非常麻烦. 特别是基于com.net控件模式的二次开发,无论是c,vb,还是delphi,目前都没有一种理想的解决方案. 目前,一般采用的以下两种方式进行转换: hobject桥接模式,内存拷贝,通道分离 外部硬盘文件交换 hobject桥接模式,参见:zw版[转发·台湾nvp系列Delphi例程]HALCON HImage与Bitmap格式转换 http://www.cnblogs.com/ziwang/

物理隔离与数据交换-网闸的设计原理

一.什么是网闸 网闸技术的需求来自内网与外网数据互通的要求,比如政府的电子政务是对公众服务,与互联网连通,而内网的政府办公网络,由于保密的要求,内网若与网连通,则面临来自公网的各种威胁.安全专家给出的建议是:由于目前的安全技术,无论防火墙.UTM等防护系统都不能保证攻击的一定阻断,入侵检测等监控系统也不能保证入侵行为完全捕获,所以最安全的方式就是物理的分开,所以在公安部的技术要求中,要求电子政务的内.外网络之间"物理隔离".没有连接,来自外网对内网的攻击就无从谈起. 但是,网络的物理隔

CPU缓存是位于CPU与内存之间的临时数据交换器,它的容量比内存小的多但是交换速度却比内存要快得多。CPU缓存一般直接跟CPU芯片集成或位于主板总线互连的独立芯片上

一.什么是CPU缓存 1. CPU缓存的来历 众所周知,CPU是计算机的大脑,它负责执行程序的指令,而内存负责存数据, 包括程序自身的数据.在很多年前,CPU的频率与内存总线的频率在同一层面上.内存的访问速度仅比寄存器慢一些.但是,这一局面在上世纪90年代被打破了.CPU的频率大大提升,但内存总线的频率与内存芯片的性能却没有得到成比例的提升.并不是因为造不出更快的内存,只是因为太贵了.内存如果要达到目前CPU那样的速度,那么它的造价恐怕要贵上好几个数量级.所以,CPU的运算速度要比内存读写速度快

Disruptor——一种可替代有界队列完成并发线程间数据交换的高性能解决方案

本文翻译自LMAX关于Disruptor的论文,同时加上一些自己的理解和标注.Disruptor是一个高效的线程间交换数据的基础组件,它使用栅栏(barrier)+序号(Sequencing)机制协调生产者与消费者,从而避免使用锁和CAS,同时还组合使用预分配内存机制.缓存行机制(cache line).批处理效应(batch effect)来达到高吞吐量和低时延的目标.目前Disruptor版本已经迭代至3.0,本论文是基于Disruptor1.0写就,在新版本中,相对与1.0版本,其核心设计

大数据计算平台Spark内核全面解读

1.Spark介绍 Spark是起源于美国加州大学伯克利分校AMPLab的大数据计算平台,在2010年开源,目前是Apache软件基金会的顶级项目.随着Spark在大数据计算领域的暂露头角,越来越多的企业开始关注和使用.2014年11月,Spark在Daytona Gray Sort 100TB Benchmark竞赛中打破了由Hadoop MapReduce保持的排序记录.Spark利用1/10的节点数,把100TB数据的排序时间从72分钟提高到了23分钟. Spark在架构上包括内核部分和4

in-place数据交换

实现in-place的数据交换 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 经典的排序问题 问题描述 一个数组中包含两个已经排好序的子数组,设计一个in-place(原位操作)算法来对这个数组排序.测试数据为 a[] = 1 4 5 7 8 9 2 3 6 10 11 . 问题分析 排序是一个非常经典的算法设计问题,这个不是难点,难点在于设定的in-place操作,意思是所有的操作都是"就地"操作,不允许进行移动.在我的博文<排序算法