Fork me on GitHub
摘要:0. 复杂度分析 0.时间空间复杂度 1. 数据结构 1.1 数组 1.2 链表 1.3 跳表 1.4 栈、队列 1.5 散列表、映射、集合 1.6 树、二叉树、二叉搜索树 AVL树、红黑树 字典树、并查集 1.7 堆 1.8 图 2. 算法 2.1 递归 2.2 分治和回溯 2.3 DFS、BFS 阅读全文
posted @ 2020-08-31 23:42 kris12 阅读(171) 评论(0) 推荐(0) 编辑
摘要:数仓| 离线& 实时 Flume数据采集的搭建及其架构原理 Kafka Hadoop Hive Spark Flink Mysql& Redis Hbase ELK 调度框架 Linux 常用工具 阅读全文
posted @ 2019-06-01 14:14 kris12 阅读(785) 评论(0) 推荐(0) 编辑
摘要:0. SQL数据库 1. python基础知识 2. 重点工具掌握:数据解析核心技巧 - Numpy| Pandas| Matplotlib 3. 数据特征分析:分布| 对比| 统计| 帕累托| 正态| 相关性分析 4. 数据处理:缺失值| 异常值| 数据归一| 数据连续属性离散化 5. 数学建模: 阅读全文
posted @ 2018-10-14 18:39 kris12 阅读(1645) 评论(0) 推荐(0) 编辑
摘要:1. Kafka的事务和 Exactly Once Kafka 中的事务,它解决的问题是,确保在一个事务中发送的多条消息,要么都成功,要么都失败。注意,这里面的多条消息不一定要在同一个主题和分区中,可以是发往多个主题和 分区的消息。Kafka 的这种事务机制,单独来使用的场景不多。更多的情况下被用来 阅读全文
posted @ 2021-01-26 21:11 kris12 阅读(160) 评论(0) 推荐(0) 编辑
摘要:1. 副本 副本的目的主要是保障数据的高可用性,即使一台ClickHouse节点宕机,那么也可以从其他服务器获得相同的数据。 1.1 副本写入流程 client从clickhouse-a节点写数据,提交写入日志给zookeeper,clickhouse-b有一个监听器来监听zookeeper接收到日 阅读全文
posted @ 2021-01-18 10:54 kris12 阅读(388) 评论(0) 推荐(0) 编辑
摘要:1. 基本概念 Elasticsearch有几个核心概念,先理解这些概念将有助于掌握Elasticsearch。 近实时(Near Realtime / NRT) Elasticsearch是一个近实时的搜索平台,从生成文档索引到文档成为可搜索,有一个轻微的延迟(通常是一秒钟)。 集群(Cluste 阅读全文
posted @ 2021-01-13 16:04 kris12 阅读(67) 评论(0) 推荐(1) 编辑
摘要:Kylin Cube的优化 在没有采取任何优化措施的情况下,Kylin会对每一种维度的组合进行预计算,每种维度的组合的预计算结果被称为Cuboid。假设有4个维度,我们最终会有24 =16个Cuboid需要计算。 但在现实情况中,用户的维度数量一般远远大于4个。假设用户有10 个维度,那么没有经过任 阅读全文
posted @ 2020-12-07 10:25 kris12 阅读(274) 评论(0) 推荐(0) 编辑
摘要:employee实事表才会参与真正运算,dept维表不参与 model模型分以下2种: ① 当所有维表都直接连接到“ 事实表”上时,整个图解就像星星一样,故将该模型称为星形模型 星状模型是直接关联; ② 当有一个或多个维表没有直接连接到事实表上,而是通过其他维表连接到事实表上时,其图解就像多个雪花连 阅读全文
posted @ 2020-12-04 15:52 kris12 阅读(116) 评论(0) 推荐(0) 编辑
摘要:动态规划 Dynamic Programming 1. “Simplifying a complicated problem by breaking it down into simpler sub-problems” (in a recursive manner) 2. Divide & Conq 阅读全文
posted @ 2020-11-30 11:01 kris12 阅读(131) 评论(0) 推荐(0) 编辑
摘要:Redis Redis 是一种键值(Key-Value)数据库。相对于关系型数据库(比如 MySQL),Redis 也被叫作非关系型数据库。 像 MySQL 这样的关系型数据库,表的结构比较复杂,会包含很多字段,可以通过 SQL 语句,来实现非常复杂的查询需求。而 Redis 中只包含“键”和“值” 阅读全文
posted @ 2020-11-25 10:11 kris12 阅读(156) 评论(0) 推荐(0) 编辑
摘要:1. B+树 为了加速数据库中数据的查找速度,常用的处理思路是,对表中数据创建索引。数据库索引是如何实现的呢?底层使用的是什么数据结构和算法呢? 数据库查询需求: 根据某个值查找数据,比如 select * from user where id=1234; 根据区间值来查找某些数据,比如 selec 阅读全文
posted @ 2020-11-24 09:10 kris12 阅读(198) 评论(0) 推荐(0) 编辑
摘要:2011 年 CSDN 的“脱库”事件,当时,CSDN 网站被黑客攻击,超过 600 万用户的注册邮箱和密码明文被泄露,如果你是 CSDN 的一名工程师,你会如何存储用户密码这么重要的数据?仅仅 MD5 加密一下存储就够了吗? 要想搞清楚这个问题,就要先弄明白哈希算法。 哈希算法历史悠久,业界著名的 阅读全文
posted @ 2020-09-28 08:10 kris12 阅读(155) 评论(0) 推荐(0) 编辑
摘要:1. 散列碰撞攻击 散列表的查询效率并不能笼统地说成是 O(1)。它跟散列函数、装载因子、散列冲突等都有关系。如果散列函数设计得不好,或者装载因子过高,都可能导致散列冲突发生的概率升高,查询效率下降。在极端情况下,有些恶意的攻击者,还有可能通过精心构造的数据,使得所有的数据经过散列函数之后,都散列到 阅读全文
posted @ 2020-09-27 22:33 kris12 阅读(115) 评论(0) 推荐(0) 编辑
levels of contents