0%

0. 引言

这篇文章我们介绍了一下 Flink 的 Catalog,基于 Flink 1.11,熟悉 Flink 或者 Spark 等大数据引擎的同学应该都知道这两个计算引擎都有一个共同的组件叫 Catalog。下面是 Flink 的 Catalog 的官方定义。

Catalog 提供了元数据信息,例如数据库、表、分区、视图以及数据库或其他外部系统中存储的函数和信息。

数据处理最关键的方面之一是管理元数据。 元数据可以是临时的,例如临时表、或者通过 TableEnvironment 注册的 UDF。 元数据也可以是持久化的,例如 Hive Metastore 中的元数据。Catalog 提供了一个统一的API,用于管理元数据,并使其可以从 Table API 和 SQL 查询语句中来访问。

简单来说,Catalog 就是元数据管理中心,其中元数据包括数据库、表、表结构等信息。

Read more »

在 github 上面有一个 700 多人 star 的 repo 叫做 Bash-Oneliner,介绍了很多实用并且可以有效提高工作效率的命令,我们来了解一下。原文直达:Bash-Oneliner 。注:去除了部分看上去没啥用的命令,可以原文查看所有内容。

Read more »

合抱之木,生于毫末;九层之台,起于垒土;千里之行,始于足下。

“合抱之木,生于毫末”是我非常喜欢的一句话,强调万事积于忽微,也就是积累的重要性。

要说到积累,我积累的最多的应该就是写代码和写作。由于接触计算机比较晚,本科阶段一直想做学术,所以本科阶段的编码训练并不是很多。在本科毕业之后,本来是去中科院硕博连读,经过一个学期,终于决定还是要去工业界。确定了之后,就开始高强度的代码编程训练。光《算法导论》我就刷了三遍,课后习题做了一遍。《深入理解计算机系统》等书籍也是刷了三遍以上。研究生阶段基本由个人负责的大型项目的代码行数也是在十万行以上。找工作的时候参加 Google Code Jam 校招比赛,打到全球前两百名,最后通过 Google 的校招算法面试。

Read more »

距离 Google 的上一篇 F1 论文,也就是 F1: A Distributed SQL Database That Scales 已经 5 年过去了,Google 在今年的 VLDB 上终于发布了 F1 的新版本 F1 Query: Declarative Querying at Scale,我们今天就来看一下这篇论文。安利一下,今天上午在 PingCAP 的 paper party 上,黄东旭大神对这篇论文的讲解非常精彩。

2013 年的 F1 是基于 Spanner,主要提供 OLTP 服务,而新的 F1 则定位则是大一统:旨在处理 OLTP/OLAP/ETL 等多种不同的 workload。但是这篇新的 F1 论文对 OLTP 的讨论则是少之又少,据八卦是 Spanner 开始原生支持之前 F1 的部分功能,导致 F1 对 OLTP 的领地被吞并了。下面看一下论文的具体内容,疏漏之处欢迎指正。

Read more »

过去一段时间很长的一段时间内都在写用 spark streaming 来做一些规则引擎的工作,工作第一阶段暂时告一段落,这里简单做一下总结。

Read more »

0. 引言

如果看过我的上一篇关于 mesos 的文章,应该还记得 mesos 的资源调度策略写的泛化的 max-min fairness 算法,其实这个就是 DRF 算法。

DRF,全称 dominant resource fairness,由伯克利大学提出,论文链接在文末列出。论文中介绍 DRF 为 generaliztion of max-min fairness to multiple resource types,所以下面先介绍一下 max-min fairness 算法。

Read more »

简而言之,mesos 是一个在多种计算框架之间协调集群资源的平台。通过 mesos,我们可以提高集群的资源利用率。mesos 的调度机制叫 resource offer,是一种 two-level 调度策略:1. mesos 决定分配给 framework 多少资源;2. framework 决定是否接受以及用来运行哪些 task。

Read more »