原理 – MapReduce

MapReduce框架通常由三个操作(或步骤)组成: Map:每个工作节点将 map 函数应用于本地数据,并将输出写入临时存储。主节点确保仅处理冗余输入数据的一个副本。 Shuffle:工作节点根据输出键(由 map 函数生成)重新分配数据,对数据映射排序、分组、拷贝,目的是属于一个键的所有数据都位于同一个工作节点上。 Reduce:工作节点现在并行处理每个键的每组输出数据。 MapReduce

常用算法 – Bitmap

Bitmap 用一个 Bit 存储一个数字。通过位运算来 add, remove, contain

数据订阅

阿里云 DTS 数据传输服务DTS(Data Transmission Service)是阿里云提供的实时数据流服务,支持关系型数据库(RDBMS)、非关系型的数据库(NoSQL)、数据多维分析(OLAP)等数据源间的数据交互,集数据同步、迁移、订阅、集成、加工于一体,助您构建安全、可扩展、高可用的数据架构。 Otter 定位:基于数据库增量日志解析,准实时同步到本机房或异地机房的mysql/or

数据时间

时间种类 处理时间 事件时间 作业内需统一时间类型 如果框架设置了是事件时间,那么每个数据源得加入watermark assinger 水印

数据接口

服务设计 应有被动接口(HTTP、RPC、JDBC等)以及主动接口(消息队列) 应该考虑平台化、版本控制和事务要求 Dataway Dataway 是依托 DataQL 服务聚合能力,为应用提供一个UI 界面。 并以jar 包的方式集成到应用中。 通过 Dataway 可以直接在界面上配置和发布接口。这种模式的革新使得开发一个接口不必在编写任何形式的代码,只需要配置一条 DataQL 查询即可完成

数据存储

物理存储 服务器类型: 封闭系统:大型机 开放系统:Windows、Linux、UNIX 内置存储 外挂存储 直连式(Direct-Attached Storeage, DAS) 网格化(Fabric-Attached Storeage, FAS) 网络接入存储(Network-Attached Storage, NAS) 存储区域存储(Storage Area Network, SAN) 存储类

数据同步

数据同步 Sqoop Sqoop是Hadoop生态系统”中的其中一员——Apache Sqoop。 Apache Sqoop(TM) is a tool designed for efficiently transferringbulk data between ApacheHadoopandstructured datastoressuch as relational databases. 使用

数据分布 – 数据复制 – 一致性

CAP 原则 一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可得兼。 一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值。 可用性(A):保证每个请求不管成功或者失败都有响应。 分区容忍性(P):系统中任意信息的丢失或失败不会影响系统的继续运作。 CA without P:如果不

数据分布 – 数据复制

副本更新策略 通常情况,大规模分布式存储系统会将一份数据在系统内复制多份并保存在不同的存储。一方面可以通过数据冗余来增加系统的可用性,另一方面也可以增加读操作的并发程度。在多副本的情况下,有3种可能的更新策略:同时更新策略、主从式更新策略和任意节点更新策略。 同时更新 类型1:不通过一致性协议 不通过任何一致性协议直接同时更新多个副本数据。这种情形存在法硕的数据一致性问题:如果同一时刻两个不同的客

数据分布 – 数据分片

哈希分片(Hash Partition) 哈希取模法(Round Robin) 假设要分 K 个区,编号 [0, K-1],分片算法为: H(key) = hash(key) mod K 缺点:"Key-分区" 和 "分区-物理" 耦合,增减分区打乱原有数据分片。 虚拟桶(Virtual Burket) 多加一层,哈希算法先映射到虚拟桶,再用一个表把虚拟桶映