摘要:
前段时间,线上环境的kafka多集群在采用mirror组件进行跨机房数据同步时,会偶尔出现hang住不稳定的情况:1. 现象 a. 线上出现返回包序号不一致的现象:"Correlationid for response (13502150) does not match request"而程序han 阅读全文
摘要:
1. flume-cluster 编 号 描述 现象 方法 1 flume启动时元数据锁异常,导致无法启动 Due to java.io.IOException: Cannot lock /filechannel/. The directory is already locked. 设置filech 阅读全文
摘要:
针对原生Flume在生产环境中暴露的问题,在开源Flume1.6.0版本上做了深度定制和部门内部统一推广: 1. 与开源版本区别 模块 Flume1.6 Flumex-Agent 功能 1.低侵入性: 会对业务方日志文件重命名 1.无侵入性 2.休眠轮询: 占用线程&&限制采集文件的并行度 2.轻量 阅读全文
摘要:
1. LSM树的由来 1.1. 索引结构特征 a. 哈希存储引擎: 是哈希表的持久化实现,支持增、删、改以及随机读取操作,但不支持顺序扫描,对应的存储系统为key-value存储系统。 b. B树存储引擎是B树: 不仅支持单条记录的增、删、读、改操作,还支持顺序扫描, 因此B树是传统关系型数据库中索 阅读全文
摘要:
最近在使用集团内部的TimeTunnel时,查看了其订阅调度策略的背后原理,用到了一致性Hash技术,然后查阅了网上其相关的博客与资料,顺便说说自己的一些粗浅理解。 1. 应用场景 首先,如果从十几年前的名为“Consistent Hashing and Random Trees”论文中,可以看出一 阅读全文
摘要:
SkipList在各种开源引擎中用处普遍,例如redis的sortedset容器、luence里面的索引字典等均用到了skiplist。 1. SkipList 在数据结构里面,我们知道有两种基本数据逻辑结构:数组和链表。它们均有其各自的特点,数组(特别是有序数组),可以进行快速查询,但不便于删除操 阅读全文
摘要:
1. tfs节点的管理类介绍 1.1 数据节点 数据节点主要进行进行实际数据的存储与读写,其管理类是DataServer,其职责如下: 相关数据流的任务函数处理由handlePacketQueue函数完成,如下: //一个数据节点 class DataService { OpManager op_m 阅读全文
摘要:
1. LRU算法 1.1 背景 目前尽量由于摩尔定律,但是在存储硬件方面始终存在着差异,并且这种差异是不在同一数量级别的区别,例如在容量方面,内存<<外存;而在硬件成本与访问效率方面,内存>>外存。而目前互联网服务平台存在的特点:a. 读多写少,快速ms级响应,因此需要把数据搁在内存上;b 阅读全文
摘要:
1 前言 在tfs集群服务里,nameserver采用HA架构:由heart agent维护着的nameserver的vip,对于客户端和数据节点来说,会直接和nameserver的vip沟通,所以至于后台有多少个nameserver和具体由那个nameserver提供服务是透明的。 另外names 阅读全文
摘要:
通常在下面两种情况下,会发生数据复制操作:1 由于节点故障导致该节点上的block数据均丢失 ;2有新增加的节点时,由于新旧节点上的磁盘利用率不平衡时。1 节点故障 在tfs里面,nameserver会启动心跳线程,定期扫描所有logicblock的状态信息(数据副本版本一致性、副本个数、磁盘... 阅读全文