自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 重磅!flink-table-store将作为独立数据湖项目重入apache

重磅!flink-table-store将作为独立数据湖项目重入apache,项目名 Paimon

2023-03-01 09:47:53 1359

原创 大数据需要学什么?(一)语言篇

大概两年前写过同样标题的一篇文章,对于这个问题感兴趣的人不少,后台收到不少同学的提问,所以准备细致地解答一下这些问题,希望能解决掉大家90%的疑问。下次再看到相关的提问我会理直气壮地把这篇文章的链接甩你脸上。但是可能又会有同学有疑问了,那剩下10%的疑问怎么办?加我公众号【老蒙大数据】,然后加我微信问我哈哈。言归正传,这一篇讲得是语言,对于新手来说,老是会有类似这样的问题,“做大数据需要学Java吗?”“不会Java可以吗”“需要学到什么程度”…我的回答是“需要!”,“不可以”,“精通”。当然对于一个新手

2021-06-01 17:52:29 357 1

原创 大数据面试需要考察什么?

大家好,我是老蒙,有多年大数据从业经验,资深面试官,曾就职国内某 Top3 游戏厂商,目前是某公司 30+ 人大数据团队负责人,专注于大数据分布式技术的研究与实践。目前为止大部分的大数据开发程序员都是“野生”的,虽然很多高校已经开设了大数据相关的课程,但是这些科班的同学大部分都还在大学校园没出来,所以很多人对于大数据面试需要掌握的知识点的了解是不全面且不系统的,基本都来自于网上候选人们分享的一篇...

2020-09-22 11:50:00 814

原创 HDFS 底层交互原理解析

大约在 15 年前,我们大数据开发的“祖师爷”(Doug Cutting)基于 Google 经典论文“三驾马车”,陆续实现了 HDFS、MapReduce、HBase 三个经典大数据组件并做了开源,这才有了这些年来大数据生态圈的红红火火。所以开篇准备讲的就是这个最基础的也是最核心的,基于《Google File System》实现的 HDFS。它是一个可以部署在普通服务器上的分布式文件系统。那...

2020-09-22 11:49:58 765 1

原创 HDFS 优化与容错机制

上一篇主要讲了 HDFS 的一些基础内容,包括角色职责,工作流程,可用性保证等等,这里我们要更进一步,再挖掘出一些比较有价值的内容,所以这篇主要讲解 HDFS 的容错机制和在保证系统性能的方面做的相关努力,包括机架感知,短路读,压缩,避免小文件等。另外上一篇说到了系统可用性的问题,这里的容错机制算是可用性的一个补充, 主要讲解在读写异常过程中 HDFS 是如何保证系统可用性的。本篇面试内容划重点...

2020-09-22 11:49:57 1036

原创 HBase 高效读写原理全解读

继续沿着“祖师爷” **Doug Cutting **的大数据之路,我们要讲的第二个分布式存储组件是 Apache HBase,它的理论基础来自《Bigtable》同样是 Google 的三大经典大数据论文之一,底层依赖于上一个讲解的组件 HDFS,但是通过对内存的高效合理运用,它拥有了毫秒级的读写能力,能够适应更多不同的使用场景。把它放在第二位来讲可见它的重要性,在大数据面试中,HBase 是必...

2020-09-22 11:49:55 459

原创 HBase 系统调优指南

上一篇用 4000 字的长文介绍了 HBase 的各种重要的面试知识点,原理方面的讲解已经相当地全面了,但这里仍然需要再单独拿出一个章节的篇幅来写 HBase 另外一大块非常重要的内容 —— 调优,可见这块内容在面试过程占据的重要地位。在任何面试中,系统调优能力都是衡量优秀工程师的很重要的一个指标,所以各位同学们振奋一下精神,把下面的内容都吃透了,在面试的过程中才能从容应对。本篇面试内容划重点:...

2020-09-22 11:49:54 167

原创 Kafka 如何兼顾一致性和读写效率

完成了 HBase 的相关内容的梳理,我们把目光转到同样在流数据处理领域应用非常广泛的分布式组件 Kafka,作为一个消息队列,它与分布式数据库 HBase 不同,它的主要功能不是数据的存储,而是在各个系统之间起一个缓冲的作用,言简意赅又不失准确地总结一下就是解系统耦合和流量削峰。本篇按照大数据组件学习的方法,从基础讲起,逐层递进,深入底层,掌握原理,助力面试。本篇面试内容划重点:一致性与可用性...

2020-09-22 11:49:52 148

原创 kafka 事务机制与系统优化

上一篇内容我们了解到 Kafka 通过 ISR 机制平衡了各个 Partition 之间的可用性和一致性,通过顺序读写/PageCache/零拷贝保证了 Kafka 的高性能。这里我们继续深入之前没有完成的话题,Kafka 还有一块非常重要的内容 —— 消息投递语义,这块内容和流式计算息息相关,解决的消费数据的唯一性的问题。本篇面试内容划重点:消息投递语义、幂等、rebalance、调优。Ka...

2020-09-22 11:49:51 135

原创 Zookeeper 架构与 Zab 协议

看完了前面的那些章节,你会发现有个组件出镜率特别高,几乎无处不在,HDFS 的 NameNode 主备切换,HBase 的 HMaster 主备切换加元数据存储,Kafka 的元数据存储等等,这些内容都指向了它,没错就是接下来需要重点讲解的 Zookeeper ,官方地说它是一个分布式协调系统,主要功能是对其他组件提供一致性服务,把它纳入分布式存储这个模块是因为你确实可以把它看作是一个内存数据库,...

2020-09-22 11:49:49 134

原创 Zookeeper 特性与对应的场景

上一篇重点讨论了 Zab 协议,讲清楚了 Zookeeper 的整个架构和运作流程,而且也提到了 Zookeeper 具有一些数据库不具备的特性,支撑这它可以实现比较复杂的场景,这里我们从应用出发,看看 Zookeeper 到底有哪些特性,以及这些特性有哪些丰富的应用场景。本篇面试内容划重点:特性、watch、节点类型、分布式锁。Zookeeper 的特性这里的特性可以说是对上一篇内容的一个...

2020-09-22 11:49:48 92

原创 Elasticsearch 运行架构详解

文件系统 HDFS,数据库 HBase,消息队列 Kafka,协调服务 Zookeeper,接下来要让大数据存储的生态圈变得更完整,不得不提的就是搜索引擎了,虽然说 ElasticSearch 是以搜索闻名的,但是说到底它还是个数据库,它底层的存储特性使它拥有了毫秒级的全文检索响应能力,很好地补充了大数据在文本检索这块的处理能力。ES 的创始人 Shay Banon 很好地诠释了伟大的项目是来自...

2020-09-22 11:49:46 166

原创 Elasticsearch 倒排索引与优化

上一篇我们说了我们可以把 Elasticsearch 看作是一个数据库,但是它被更多人知道和记住是因为它的全文检索能力,这几乎成了 ES 的代名词,全文检索的原理就是我们这一篇需要重点讲解的“倒排索引”,面试中只要出现 ES 相关的内容,那么倒排索引的问题就是必不可少的,本篇面试内容划重点:倒排索引、设计上的优化、选主。倒排索引全文检索有什么用?举个例子,我们平时去图书馆找书会用检索系统来根...

2020-09-22 11:49:45 623

原创 Redis 特性&持久化&场景

非关系型数据库在大数据领域的应用非常广泛,比如之前说到的 HBase ,他能适用于很多的场景,解决各种大数据的难题,但是它不是万能的,磁盘 IO 是他的主要瓶颈,在实时性要求更高的场景下,内存数据库 Redis 就显现出了它的优势了,做过 web 开发的同学对 Redis 肯定不陌生,它丰富的数据结构和优秀的读写性能同样征服了大数据领域的开发者们。本篇面试内容划重点:数据结构、持久化、高性能你...

2020-09-22 11:49:43 146

原创 Redis 架构方案详解

上一篇对 Redis 做了一个比较全面的梳理,从数据结构到场景,再到各种原理和机制,完全掌握后基本能应对大部分 Redis 相关的问题了,这一篇再从架构上做一个补充,包括基础的主从模式,哨兵模式和官方的集群方案,这些架构解决了很多 Redis 使用上的问题,但是仍然存在缺陷,所以诞生了很多社区的集群方案来解决大家普遍遇到的问题,这里就不讨论了,有兴趣的同学可以自行去了解。总的来说 Redis 还是...

2020-09-22 11:49:42 140

原创 Spark 重要概念及相关知识点

看到这里,恭喜你,结束了分布式存储模块的内容,愿此刻你已经把前面的章节都看透了,但是即便如此也还是不要松懈,接下来还有一个大模块的内容。因为大数据的技术基本都是计算与存储分离,各司其职,所以我们需要继续来看分布式计算模块的内容,让我们大数据面试的知识点更加完善。第一篇写的是分布式计算界的中流砥柱,Spark。Spark 在实现上和 MapReduce 计算框架类似,但是它在内存的使用上更“贪婪”...

2020-09-22 11:49:40 297

原创 Spark 执行流程&内存管理&SparkSQL

Spark 的相关概念我们整理清楚了,接下来就是让 Spark “跑起来”,让我们看看它是怎么运行的,包括它的任务提交和执行流程,执行过程中的内存管理机制,以及 SparkSQL 的执行和优化。掌握执行流程相关的内容对 Spark 任务的 debug 和优化有很大帮助,可以帮助我们迅速定位到哪个执行的环节出了问题,或者哪里出现了瓶颈,解决此类问题通常是大数据工程师的日常工作,所以这不仅仅是对知识...

2020-09-22 11:49:38 232

原创 Spark Streaming 流式计算解析

流式计算在大数据生态中也是非常地有份量,Spark Streaming 在过去很长一段时间都是最常用的流式计算引擎,直到出现了 Flink。所以常常有人问我,有了 Flink 之后 Spark Streaming 还需要学吗,答案是肯定的,Spark Streaming 目前在大部分公司的应用还是非常广泛的,虽然有被 Flink 替代的趋势,但是技术的迭代是需要消耗成本的,并不是每个公司都愿意去承...

2020-09-22 11:49:37 326

原创 Flink 运行架构与编程模型

七年前如果提起实时流式计算,老程序猿们想到的应该是 Storm,四年前再提到,大家脱口而出的会是 Spark Streaming,现在再说到实时计算那无疑都会指向 Flink 了。可见开源世界技术的迭代是飞速的,稍不留神就落伍了。言归正传,上一篇我们讲了 SparkStreaming 和简单地介绍了衍生的 StructedStreaming,也提到了 StructedStreaming 在很多概...

2020-09-22 11:49:35 179

原创 Flink 容错&内存管理&反压

上一篇内容总结了 Flink 的运行架构和编程模型,这一篇我们要讨论的是 Flink 的设计,包括它是如何解决容错、内存管理、反压问题的,这些知识点是面试的常客,目的是考察大家对 Flink 理解的深度。本篇面试内容划重点:容错、内存管理、反压。容错机制Flink 的容错机制主要是依靠 barrier + checkpoint 来产生分布式快照,分布式快照中保存了计算过程中 Operator...

2020-09-22 11:49:34 158

原创 Hive 底层与架构相关面试题解析

Hive 是大数据工程师的必备技能,它帮助我们解决了海量数据查询的问题,但是它保证稳定性的同时也遗留下了查询慢的问题。虽然缺点很明显,但是那么多年过去了,大数据生态圈仍然有它的一席之地,因为稳定性这个明显的优点,大家到现在为止还是喜欢用 Hive 来跑 T+1 的离线任务。另外,大家都喜欢把常写 HiveSQL 的人戏称为“SQL BOY”,其实这是每个大数据工程师成长的必经之路,SQL 语法看...

2020-09-22 11:49:32 205

原创 HiveSQL 典型面试练习题

说起 Hive 大家首先自然会想到的就是 SQL ,所以现场手写 SQL 基本上也是面试的一个保留环节,这时候千万不要乱了阵脚,只要掌握 SQL 的一些常用的高阶语法,这些难题基本上都能迎刃而解,所以本章归纳总结了一些比较常用的 SQL 语法相关的面试题。另外,光会写 SQL 还是不够的,这还只能算是基本技能,要知道 Hive 的调优才能拿到高阶工程师的入场资格。本篇面试内容划重点:Hive 调...

2020-09-22 11:49:31 655

原创 Yarn 资源调度全面解析

远在 Hadoop v1 版本时期,Yarn 还没有出现,资源管理是和 Hadoop 耦合在一起的,我们没法在 Hadoop 集群运行除了 MapReduce 以外其他计算框架的任务,在策略和管理上也没那么成熟。Yarn 的出现可是说是为 Hadoop 生态圈大数据技术的百花齐放奠定了一个基础,一直到目前为止 Yarn 仍然是在大数据领域最常用的一个资源调度框架,Spark/Flink/Hive ...

2020-09-22 11:49:29 355

原创 ETL 常用工具对比和选型

数据同步是每个大数据人都绕不开的工作,因为大数据的存储组件太多了,数据常常因为各种需求需要从一个地方导到另一个地方,如果是数据量小,可能我们写个普通的脚本就可以完成,但是大数据的场景下,我们不得不借助一些工具来达到我们同步海量数据的目的。说实话 ETL 工具实在是太多了,而且很多都可以满足我们日常的数据同步需求,所以这里不可能罗列所有的技术出来,主要是从场景的角度来说明,因为这一块的内容,面试官更...

2020-09-22 11:49:28 1725 1

原创 分布式理论 CAP&BASE

在前面的 HBase 篇和 ZooKeeper 篇都有稍微提到了一点 CAP 相关的内容,这是分布式系统设计绕不开的一个话题,CAP 理论告诉我们一个真理,“没有最完美的系统,只有最合适的”,我们没法做到面面俱到,但是我们可以根据需求去选择我们需要的特性。大数据的面试这些分布式原理和理论相关的内容是少不了的,这块内容一般会出现在架构设计的场景问题中。本篇面试内容划重点:一致性问题。什么是 CA...

2020-09-22 11:49:26 109

原创 分布式共识 Paxos&Raft&Zab

很多人喜欢把 Paxos 说成是一致性协议,但是一致性这个词其实会给大家误导,会把这个一致性和 ACID 的一致性(Consistency)联想在一起,Paxos 的“一致性”实际上是 consensus,中文翻译成“共识”可能会更加准确一点,这个“共识”更强调的是多副本状态的一致性。本篇面试内容划重点:Paxos、Raft 的主要内容。Paxos 协议Paxos 是最基础的分布式共识算法,...

2020-09-22 11:49:24 147

原创 分布式事务 ACID&2PC

单机场景的事务大家可能都比较了解,对于事务的实现来说,分布式场景相比单机场景要考虑的东西更多一些,比如复杂的网络环境,这也是分布式系统最大的挑战之一,如何确认各个节点的状态,保证一致性等问题都是我们要考虑的。对于分布式事务原理,我们在工作中可能不会经常去使用它,但是它几乎存在于每一个我们接触的分布式系统中,重要性显而易见。本篇面试内容划重点:分布式 ACID、2PC 的优缺点,3PC 解决的问题。事务的四大特性 ACID回顾一下我们熟悉的事务的四个特性(ACID),分布式的场景下,这四个特性依旧

2020-09-22 11:49:23 196 1

原创 数据仓库方法论与相关面试题

数据仓库的概念最早是由美国著名的信息工程专家 William Inmon 博士在 1991 年提出,他的出现是因为数据量达到一定的程度,传统数据库的数据处理方案已无法支持方便地对海量数据直接做分析和处理。数据仓库对数据集合的定义是面向主题的、集成的、稳定的和随时间变化的,刚好弥补了数据库在 OLAP 方面的不足。值得说明的是,数据仓库是一个数据分析处理过程,或者说是一套数据处理的方法论,而不仅仅是一个数据存储软件或产品,大数据的工作很多都是基于数据仓库展开的,所以数据仓库方法论是除了大数据底层技术之外非常重

2020-09-22 11:49:22 318

原创 数据治理方法论与相关面试题

在前几年大数据发展的初期,各个公司都在风风火火地搞平台,搞数仓,接入各种数据,在那个阶段注重的是数据的存储和计算,慢慢地一年一年的数据积累下来,数据量大了之后人们开始关注质量的问题,这也是数据治理这个词这几年变得非常火的原因,平台那一套东西已经很成熟了,基本上即插即用,能满足大部分不太刁钻的需求了。所以,现在各个企业都会把保证平台的稳定,保证数据的高质量放在第一位,毕竟用于指导决策的数据是不容许出现大错误的,所以数据治理也就成了数仓建设非常重要的一个环节。本篇面试内容划重点:元数据管理、数据质量、数据安

2020-09-22 11:49:21 5706

原创 数据湖 Hudi 原理与相关面试题

数据湖是近几年来比较热门的一个话题,把这块的内容也加入这个专栏的目的想传达的一个信息,程序员需要对新技术框架有敏锐感知能力,也需要保持一颗好奇心,因为技术肯定是会一直迭代发展的,这一点毫无疑问,所以我们也需要不停地迭代自己的知识,跟上时代的步伐。另外,如果你的简历上有一个新技术的实践经验,这也可以是你的一个加分项。本篇是基于数据湖的具体实现之一 Apache Hudi 来讲解相关内容。本篇面试内容划重点:表类型(COW、MOR)、查询类型(视图)。Apache Hudi 依赖于 HDFS 做底层的存

2020-09-22 11:49:20 1578

原创 彩蛋:如何准备你的简历

专栏的最后两篇就不聊技术了,说一些面试需要准备的东西,包括简历和一些常见的需要提前把话理顺的开放问题,希望能够帮助大家把最后的临门一脚踢好。另外,大家有其他想要了解的技术内容可以留言或者加我微信和我沟通,后续可以继续发布一些 Chat 来给大家分享。基本信息首先是基本信息,这部分内容如实填写即可,不要写得太极端,也不用想刻意地搞点事情搞点花样。模版:程序员的简历模版一定要避免花里胡哨的,最好用 Markdown 写好之后直接生成 PDF。 基本信息:包括个人信息,毕业院校,就业经历和职位.

2020-09-22 11:49:19 94

原创 彩蛋:面试的注意要点



2020-09-22 11:49:18 111

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除