In previous article, we have introduced the columnar storage of Dremel. In this paper summary, we will focus on running query on tree structure records in Dremel.
Paper Reading: Dremel 1
Symbols count in article: 9.3k Reading time ≈ 8 mins.
Dremel is a scalable, interactive ad-hoc query system for analysis of read-only nested data.
Book Reading: C++ Primer Plus, Chapter 7
Book Reading: C++ Primer Plus, Chapter 4
Symbols count in article: 9.8k Reading time ≈ 9 mins.
Arrays
Declaring an array:
typeName arrayName[arraySize]
arraySize must be a integer constant, const value or const expression, for which all values are known at compilation time. In particular, arraySize
cannot be a variable whose value is set at run time.
If need to dynamically allocate an array at run time, use new
or malloc
.
修复使用LeanCloud国际版时Valine阅读量和评论的bug
Symbols count in article: 704 Reading time ≈ 1 mins.
在这篇文章当中我们介绍过用Valine支持阅读量和评论的方法。
Book Reading: Java Concurrency in Practice, Chapter 7
Symbols count in article: 17k Reading time ≈ 16 mins.
Book Reading: CSAPP, Chapter 2, 浮点数的表示和运算
Symbols count in article: 2.7k Reading time ≈ 2 mins.
Book Reading: CSAPP, Chapter 2, 整数的表示和运算
Symbols count in article: 4.5k Reading time ≈ 4 mins.
Book Reading: Java Concurrency in Practice, Chapter 6
Symbols count in article: 14k Reading time ≈ 12 mins.
Executing tasks in threads
The first step in organizing a program around task execution is identifying sensible task boundaries. Ideally, tasks are independent activities: work that doesn’t depend on the state, result, or side effects of other tasks. Independence facilitates concurrency, as independent tasks can be executed in parallel if there are adequate processing resources.
Book Reading: Java Concurrency in Practice, Chapter 5
Symbols count in article: 15k Reading time ≈ 13 mins.