那尔的blog
  • 首页
  • 归档
  • 标签
  • 关于
  •   
  •   

关于 foldRight 为何能操作无穷列表

从我在第一次接触到 Haskell 中的 foldRight(foldr)起,我就对它十分好奇:foldRight 是如何能够处理无穷列表的?这个问题让我魂牵梦绕,我必须要得到一个合情合理的结果。

2022-04-18
FP Scala

Scala 学习笔记——惰性求值

惰性求值的重要性在于,它能够使我们操作集合时在使用原有的高阶函数进行操作的基础上尽量保证性能,不用在操作过程中临时创建集合,从而能兼顾抽象性和性能。那么代价是什么呢?

2022-04-16
FP Scala

微服务学习笔记 1——Prelude

三个月前做的笔记,后来学到了服务注册和发现,负载均衡模式就停下了。最近可能要捡起来也说不定。 对微服务的学习是至关重要的,这个论断是绝对正确的,单体应用已经难以承受当前的互联网时代的复杂度,且性能等因素也受摩尔定律的约束无法更多提升。无论是对当前还是遥远的将来(?),微服务对工程实践都将是有重大影响的。即使以后分布式技术继续发展,人们发现了什么比微服务更好的分布式架构,对微服务的理解也将会有巨

2022-03-27
微服务

Scala 隐式转换之一窥

学习 Spark 的键值对 RDD 时,对其的实现比较感兴趣——它是如何让特定类型的 RDD 拥有自己独有的方法的?于是就对此进行了一些了解,发现它的本质是比较浅显但又确实非常有趣的,现在做下笔记。

2022-03-24
Scala

Hive 学习笔记 2——SORT,JOIN,分区等

现在跟随《Hive 编程指南》进行学习,此书的翻译…我在序章已经看到两处明显错误了,中英对照着看吧。 这里去学习一下 SELECT,Hive 最重要的部分。Hive 的 SELECT 相较于普通的关系型数据库,增加了内置的集合类型,因此各种操作,如函数,聚合,窗口函数等,都会有一些新东西,新模式可用,更别说还有新增的 UDTF 了;同时由于底层使用 MapReduce,因此分区等概念也需要体现

2022-03-20
Hive

MapReduce,Hive,Spark 的两个示例——Word Count 和 JOIN

在系统学习 Hive 的 SELECT 之前,我们先来进行一些超有趣的事情——分别使用 MapReduce,Hive,Spark 来实现同一个程序,感受一下三者代码的差异,这里选择去实现一下 WordCount,以及一个表连接的示例。

2022-03-18
分布式计算

Hive 学习笔记 1——架构,DDL 和数据的导出导入

Hive 就是一种用于构造 MapReduce 的 DSL 及相关基础设施,这样的概括大概足矣。

2022-03-17
Hive

MapReduce 的魔法——Shuffle

数据从每个 Mapper 到每个 Reducer 这个过程,就是 MapReduce 的魔法——Shuffle 所在之处。

2022-03-15
MapReduce

MapReduce 开发模式 2——排序,二次排序,JOIN

没想到一整天都研究排序去了,拜它所赐,对 Partitioner,SortComparator,GroupComparator 等机制更为熟悉了。

2022-03-14
MapReduce

力扣 SQL 刷题笔记

最近意识到 SQL 的重要性(Hive 要写 SQL,Spark 还要写 SQL,MapReduce 又可以用 SQL 来描述),并且大数据的各种平台作为分析型系统,复杂的查询是屡见不鲜的,因此打算对 SQL 进行专门学习,这里把 LeetCode 上所有免费 SQL 题目都刷一下,之后也要做做别的题目。尽量给出多于一个解决方案。

2022-03-13
SQL
1…2122232425…31

搜索

Hexo Fluid