简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
之前在大数据集群中,有一台服务器的CPU占用总是莫名其妙飙高,就算执行简单任务也会耗费很长时间,且reboot不能解决问题。检查了各种可能的问题之后,最终在查看dmesg命令的设备信息时,发现大量如下的日志:......[1180532.573917] EDAC MC1: 128 CE memory read error on CPU_SrcID#1_Ha#0_Chan#1_D...
Saturday night,继续超短文模式。在ClickHouse集群中,我们可以在DDL语句上附加ON CLUSTER <cluster_name>的语法,使得该DDL语句执行一次即可在集群中所有实例上都执行,简单方便。每执行一条分布式DDL,会在配置文件中<distributed_ddl><path>指定的ZooKeeper路径上写一条执行记录(路径默认.
Replication & Sharding在ClickHouse文集的第一篇文章中,笔者介绍了ClickHouse高可用集群的配置方法,并且提到:分布式存储要保证高可用,就必须有数据冗余——即副本(replica)。ClickHouse依靠ReplicatedMergeTree引擎族与ZooKeeper实现了复制表机制,成为其高可用的基础。另外,笔者也提到,ClickHouse像El..
前言大数据领域“SQL化开发”的风气方兴未艾,这是因为SQL是一种通用、学习成本低的语言,并且还有较强的数据描述能力。不少大数据框架早已支持了SQL化开发,如Spark、Flink、Kafka等。之前笔者操刀的多数Spark程序都是用传统的RDD API写的,Spark SQL用得很少,Flink也如是。最近抽空对这两门“SQL”做了一些了解,并且断断续续研究了Spark SQ...
前言昨天写的关于compaction的长文连续被简书误炸,只能发邮件申诉。暂时不管它了,move on。在《两阶段提交(2PC)与其在Flink exactly once中的应用》这篇文章中,特别提到了Kafka从0.11版本开始支持幂等性与事务性,使得端到端exactly once语义成为可能。幂等性与事务性都是Kafka发展过程中非常重要的feature,本文将幂等性拎出来...
Sparse Index在以数据库为代表的存储系统中,索引(index)是一种附加于原始数据之上的数据结构,能够通过减少磁盘访问来提升查询速度,与现实中的书籍目录异曲同工。索引通常包含两部分,即索引键(≈章节)与指向原始数据的指针(≈页码),如下图所示。https://www.geeksforgeeks.org/indexing-in-databases-set-1/索引的组织形...
前言写这篇文章的契机是前段时间在Flink社区大群里详细解答了一个问题。我们每天都会与JVM堆打交道(之前哪篇文章的开头也是这个来着)。但作为大数据工程师,我们对JVM的堆外内存(off-heap memory,英文资料中也常称为native memory)应该也是非常熟悉的,Spark、Flink、Kafka等这些鼎鼎大名的大数据组件都会积极地使用堆外内存,更底...
节日快乐~今天是属于广大程序员的节日,祝自己快乐hhhhhh随着业务量的急速膨胀和又一年双11的到来,我们会对现有的Kafka集群进行扩容,以应对更大的流量和业务尖峰。当然,扩容之后的新Kafka Broker默认是不会有任何Topic和Partition的,需要手动利用分区重分配命令kafka-reassign-partitions将现有的Partition/Replica平衡...
前言在之前的一篇文章中,笔者介绍了Kafka Consumer Group(消费者组)以及Rebalance(重平衡)的概念:为了使得Consumer易于组织、可扩展以及更好地容错,Kafka将一个或多个Consumer组织为Consumer Group,即消费者组。Consumer Group的唯一标识就是group.id。Group内的所有Consumer共同消费已订阅的各个Topic的...
Flink默认提供了很多开箱即用的连接器,比如与Kafka、RabbitMQ、HDFS、ElasticSearch等对接的连接器。还有一些不那么常用的连接器则由Apache Bahir项目(官网很简陋,见这里)来提供,其中就包含Redis Sink。这个项目的文档有点缺乏,本文先记录一下用法。引入如下Maven依赖。目前bahir-flink项目比较停滞,最新版本是1.1-SNA...