大数据好文推荐

大数据好文推荐

综合好文推荐

  • 大数据平台常见开源工具集锦
  • 数据中台-好文推荐
  • 数据对业务价值帮助的一些思考
  • 盘点:SQL on Hadoop中用到的主要技术
  • 大数据平台架构–多公司架构图分析
  • 大数据 SQL Boy 脱坑指南

企业实践

搜索

  • 有赞搜索系统的架构演进

大数据平台

  • 网易大数据平台架构实践分享
  • 饿了么大数据离线平台架构
  • 饿了么离线大数据平台实践
  • 饿了么大数据平台建设
  • 美图大数据平台架构实践
  • 知乎大数据平台架构和实践优化
  • 知乎⼤大数据平台架构和实践优化
  • 美团的大数据平台架构实践
  • 移动大数据平台架构思想以及实践经验
  • 滴滴知乎腾讯大数据平台架构图
  • 快手-SQL on Hadoop在快手大数据平台的实践与优化

调度系统

  • 饿了么调度系统全解

技术选型

  • 滴滴出行技术总监:关于技术选型的那些事儿

流式处理

  • Spark & Alluxio在网易严选架构演进中的实践和探索

组件升级

  • 携程 Kafka 升级到2.0的实战经验

代码仓库

-Apache代码仓库
可下载个版本组件的源码、tar包等

1 数据埋点

  • 创业公司做数据分析(三)用户行为数据采集系统
  • 七天数据埋点之旅-指引篇

2 数据采集

3 硬盘型数据存储

3.1 HDFS

  • HDFS学习
  • Hadoop参数:fs.defaultFS、 dfs.name.dir 、 dfs.data.dir
  • HDFS-异常大全-《每日五分钟搞定大数据》

4 内存数据存储

4.1 Redis

  • Redis好文推荐
  • Redis学习-安装和启动
  • Redis学习-FAQ
  • Redis学习-知识梳理
  • Redis- info调优入门-《每日五分钟搞定大数据》

4.2 MemCache

  • MemCache详细解读

4.3 Alluxio

5 流处理

说说实时流式计算

5.1 Spark

  • Spark-SparkSQLJoin
  • Spark-算子原理和区别
  • Spark-常见问题
  • Spark好文推荐
  • 十年开发经验大牛分享Spark 以及 spark streaming 核心原理及实践
  • 百度/微信-Spark 以及 spark streaming 核心原理及实践
  • Spark Streaming 源码解析系列/0.1 Spark Streaming 实现思路与模块概述
  • 性能优化-使用高性能的库fastutil
  • spark性能调优之使用fastutil优化数据格式
  • 一篇文章搞懂DataSet、DataFrame、RDD-《每日五分钟搞定大数据》
  • 一篇文章scala入门-《每日五分钟搞定大数据》
  • 解读Spark原理

5.2 Livy-图形化Spark提交

  • Apache Livy 0.5.0 简介及安装教程
  • Livy:基于Apache Spark的REST服务

5.3 Flink

5.3.1 概念

  • Flink学习1-基础概念
  • Flink学习2-安装和启动
  • Flink学习3-API介绍
  • 过往记忆-深入理解Flink核心技术

5.3.2 实践

  • OPPO 基于 Flink 构建实时计算平台的思路、演进与优化
  • 基于 Flink 的严选实时数仓实践
  • 腾讯基于 Flink 的实时流计算平台演进之路
  • OPPO数据中台之基石:基于Flink SQL构建实数据仓库
  • 为什么我们选择基于Flink搭建实时个性化营销平台?

6 OLAP

6.1 Druid

Apache Druid:一款高效的 OLAP 引擎

6.2 Hive

6.2.1 基础概念

  • 官网-Hive文档目录

6.2.2 配置

  • 官网-HiveConfiguration

6.2.3 使用

  • Apache Hive 联邦查询
    可以在 Hive 中使用标准的 JDBC 方式读取存储在不同数据存储里面的数据。比如我们可以在 Hive 中分别读取 MySQL 和 Phoenix 里面的数据,然后进行关联。其提供高效,统一的 SQL 访问 - 开箱即用。
  • HiveCasCade-新增字段(column)后,旧分区无法更新数据问题

6.2.4 集成其他

  • Impala集成hive

7 OLTP

7.1 Elasticsearch

7.1.1 概念

  • 搜索引擎 ElasticSearch
  • Elasticsearch发展史
  • Elasticsearch5.x 新特性
  • Elasticsearch分布式存储
  • Elasticsearch核心概念与原理
  • Elasticsearch学习-Doc与Segment原理
  • Elasticsearch学习-搜索调优
  • Elasticsearch学习-关于倒排索引、DocValues、FieldData和全局序号

7.1.2 Demo

  • 23种非常有用的ElasticSearch查询例子
  • Elasticsearch 5.4 JAVA API 使用

7.1.3 聚合

  • 浅谈基数计数HLLC算法原理及其应用
  • cardinality算法之优化内存开销以及HLL算法
  • 官方文档-Cardinality Aggregationedit
  • 官方文档-权威指南
  • 官方文档翻译-信息聚合系列之近似聚合
  • Elasticsearch 聚合
  • Elasticsearch聚合统计-度量聚合
  • Elasticsearch数据去重(百万级别)

7.1.4 使用

  • Elasticsearch使用总结
  • Elasticsearch最佳实践之Index与Shard设计
  • Elasticsearch最佳实践之使用场景
  • 创业公司做数据分析(四)ELK日志系统

7.1.5 监控

  • 阿里云Elasticsearch的X-Pack:机器学习、安全保障和可视化

7.1.6 企业实践

  • 有赞搜索系统的架构演进

7.2 HBase

  • HBase学习
  • HBase中文社区
  • HBase篇-每日五分钟搞定大数据系列

7.3 Phoenix

  • Phoenix学习

7.4 Impala

7.4.1 原理

  • Impala学习-基础概念
  • Impala学习-JDBC配置
  • Impala 简析
  • impala的原理架构介绍及应用场景
  • 大数据时代快速SQL引擎-Impala
  • Cloudera Impala架构设计要点

7.4.2 教程

impala教程

7.4.3 安装部署

  • Impala集成hive
    需要注意的是,这种集成方式有很多限制。比如hive自定义的INPUTFORMAT,impala无法识别;
    impala无法感知hive表产生的变动,需要invalidate metadata全量或是用refresh 指定表名刷新元数据。

7.4.4 使用

  • Impala Shell 简单命令
  • Impala shell详解

7.4.5 调优

  • Impala 性能调整
  • CDH-Impala Performance Guidelines and Best Practices
  • CDH-Controlling Impala Resource Usage
  • [Impala–使用注意]–调整对应的参数(cdh-5.8.x版本)

7.4.6 实践

  • 网易-基于Impala平台打造交互查询系统
  • 网易知乎-基于Impala平台打造交互查询系统

7.5 Kudu

7.5.1 概念

  • kudu简介与操作方式
  • CDH组件版本查询

7.5.2 Kudu Impala

  • Apache Kudu 与 Impala Shell 的结合使用文档(创建表、删、改、查)
  • impala + kudu一些优化心得

7.5.3 Kudu Spark

  • CDH-kudu-spark github
  • CDH-Spark on Kudu,详细示例
  • KuduCRUD
  • Spark Kudu 结合
  • Apache-kudu Kudu-Spark-example
  • 一个家伙写的SparkOnKudu例子
  • java操作kudu全示例(含sparksql)
  • SparkStreaming读Kafka数据写Kudu
  • Spark 2.2.1 + Kudu 1.5.0

7.6 ClickHouse

7.6.1 简介

ClickHouse是一个面向开源列的数据库管理系统,能够使用SQL查询实时生成分析数据报告。

  • 高性能
    ClickHouse的性能超过了目前市场上可比的面向列的DBMS,每秒处理数亿个到超过十亿行和几十GB的数据。

    ClickHouse尽可能快地使用所有可用硬件来处理每个查询。 单个查询的峰值处理性能(在解压缩之后,仅使用列)的速度超过每秒2TB。

  • 即席查询
    常见的数据管理中大多数原始格式的原始数据可用作任何给定查询的“数据湖”;而ClickHouse在大多数情况下提供即时结果:数据处理速度快于创建数据所需的速度。

  • 方便水平扩展和垂直扩展。
    Yandex.Metrica公司主要集群有394个节点,分布在6个数据中心,每个节点100Tb数据。

  • 容错性高
    ClickHouse支持多master异步复制的副本,可部署到多个数据中心,所以某个数据中心或某个节点挂掉不影响整个集群读写可用性,因为读是分布式读,自动均衡分派到存活的副本节点。

  • 用户友好的SQL方言

  • 支持近似查询处理 - 您可以根据需要快速获得结果,这在处理TB级和PB级数据时必不可少

  • 部署简单

  • 丰富的使用方法:

    • HTTP
    • TCP
    • ClickHouse命令行
    • JDBC/ODBC
    • 其他第三方包

7.6.2 适用的几种场景

  • 网页和应用分析
  • 时序数据
  • 监控数据
  • BI
  • 网游
  • 物联网
  • 在线广告

7.6.3 不适用的几种场景

  • OLTP
  • Key-value,高QPS访问场景
  • 文档性数据存储
  • 过度标准化的数据

7.6.4 对比测试

  • Benchmark对比
  • 对比Amazon RedShift
  • ClickHouse评测

7.6.5 好文推荐

  • ClickHouse官方中文文档
  • ClickHouse的特性
  • 官网-ClickHouse

7.7 Presto

Presto是一个开源的分布式SQL查询引擎,适用于交互式分析查询,数据量支持GB到PB字节。Presto的设计和编写完全是为了解决像Facebook这样规模的商业数据仓库的交互式分析和处理速度的问题。Presto支持在线数据查询,包括Hive, Cassandra, Mysql关系数据库以及专有数据存储。也支持Redis,Mongodb,Kafak这样的系统通过SQL语句来查询数据。一条Presto查询可以将多个数据源的数据进行合并,可以跨越整个组织进行分析。

第三方界面化查询可用yanagishima

  • Presto实现原理和美团的使用实践
  • Presto实战

8 数据分析和可视化

8.1 综合经验

  • 《七天数据可视化之旅》第一天 数据可视化过程

8.2 Zeppelin

  • Zeppelin 使用心得
  • Apache Zeppelin是什么?
  • 使用Zeppelin来实现大数据分析的可视化

8.3 Superset

  • 数据可视化的开源方案: Superset vs Redash vs Metabase

8.4 HUE

  • Hue In Hadoop
  • 通过hue提交oozie定时任务

8.4 数据分析综合

8.4.1 创业公司做数据分析系列文章

  • 创业公司做数据分析(一)开篇
  • 创业公司做数据分析(二)运营数据系统
  • 创业公司做数据分析(三)用户行为数据采集系统
  • 创业公司做数据分析(四)ELK日志系统
  • 创业公司做数据分析(五)微信分享追踪系统
  • 创业公司做数据分析(六)数据仓库的建设

9 资源管理

9.1 Yarn

  • Yarn学习
  • Yarn-调优
  • 源码走读-Yarn-ResourceManager系列
  • YARN-异常大全-《每日五分钟搞定大数据》

10 数据治理

10.1 Atlas

11 调度系统

11.1 Airflow

11.2 Azkaban

11.2.1 官方文档

Azkaban documentation

11.2.2 安装

  • Azkaban 指南
  • Azkaban3.0安装部署
  • 安装使用Azkaban遇到的坑

11.2.3 使用

  • Azkaban-开源任务调度程序(使用篇)

  • Azkaban-参数传递

  • 基于Azkaban的任务定时调度实践

  • Azkaban HDFS Hive等

  • Azkaban HDFS Hive SQL等

  • Azkaban邮件发送

  • Azkaban-综合手册

11.2.4 二次开发

  • Azkaban-二次开发

11.2.5 对比

  • 工作流调度器azkaban(以及各种工作流调度器比对)
  • 工作流调度器azkaban——权威指南

11.2.6 问题记录

Azkaban 使用问题记录

11.3 Oozie

  • 通过hue提交oozie定时任务
  • 如何使用Hue上创建一个完整Oozie工作流

11.4 对比

  • 2018工作流引擎比较:Airflow、Azkaban、Conductor、Oozie和 Amazon Step Functions

11.5 企业实践

  • 饿了么-调度系统

12 全量数据同步

12.1 Sqoop

辅助系统(Flume,azkaban,sqoop)

13 增量数据同步

13.1 Flume

  • Flume-好文推荐
  • Flume架构与实践
  • Flume学习-小项目实例
  • Flume-常见错误

13.2 Canal

13.2.1 概念

  • Canal概述
  • MySQL增量订阅&消费组件Canal
  • 深入解析中间件之-Canal
  • Mysql主从同步问题及Canal的好处

13.2.2 使用

  • Canal-配置详解
  • 使用 Binlog 和 Canal 从 MySQL 抽取数据
  • 使用canal同步mysql变更到elasticsearch及其坑

13.2.3 API

  • Canal-Java-API
  • Canal-Java-API2

14 消息队列MQ

  • 用MQ的原因
    好处:解耦, 异步, 削峰
    坏处:系统整体可用性降低, 系统复杂性增加(一致性、数据多或少?)
  • 技术选型-RabbitMQ 和 Kafka
    - ActiveMQ RabbitMQ RocketMQ Kafka
    开发语言 java erlang java scala
    单机吞吐量 万级 万级 十万级 十万级
    时效性 ms us ms ms以内
    可用性 高,主从 高,主从 非常高,分布式 非常高,分布式
    功能特性 成熟,公司实践多,文档多,协议支持丰富 依靠erlang并发能力强,性能极好,延时最低,管理界面较丰富 MQ功能较完备,扩展性好 只支持主要的MQ功能,原生不提供消息查询(可通过Preso/KSQL)、消息回溯(老版本可通过改ZK,新版本改存offset的Topic)等功能。在大数据领域应用广
    适用/不适用场景 适合中小型公司,管理功能齐全方便;但要注意事项erlang开发,二次开发较困难 适用于大型公司;JAVA开发,容易二次开发;由阿里开发,没有社区支持 使用大型公司

14.1 Kafka

14.1.1 概念

  • Kafka学习
  • Kafka水位(HW)与leader epoch的讨论
  • Kafka-0.8.2.1常见问题

14.1.2 Demo

  • Kafka 新版消费者 API(四):优雅的退出消费者程序、多线程消费者以及独立消费者

14.1.3 KSQL

大数据好文推荐_第1张图片
KSQL是一个用于Apache kafka的流式SQL引擎,KSQL降低了进入流处理的门槛,提供了一个简单的、完全交互式的SQL接口,用于处理Kafka的数据,可以让我们在流数据上持续执行 SQL 查询,KSQL支持广泛的强大的流处理操作,可以直接流式ETL,支持多种操作包括聚合、连接、窗口、会话等等。

KSQL 是分布式、可扩展、可靠的和实时的,支持多种流式操作,包括aggregatejoin、window、session等等。

  • Github-KSQL

  • 官网-KSQL

  • KSQL概念介绍

  • KSQL实战

  • KSQL:Apache Kafka的开源流式SQL

  • 使用Apache Kafka和KSQL实现普及化流处理

  • Github-KSQL

  • 码云-KSQL

  • KSQL和Flink SQL的比较

15 协调服务

15.1 Zookeeper

  • Zookeeper学习
  • Zookeeper篇-每日五分钟搞定大数据系列

15.2 Etcd

16 序列化和压缩

16.1 Avro

  • Avro概念介绍
  • Avro使用,带Spark
  • Avro使用,带maven依赖

16.2 压缩

  • 大数据-常用压缩方式总结

17 大数据与传统数据库

  • SparkSQLJoin
  • CBO是什么
  • Join中的谓词下推
  • SparkSQL – 从0到1认识Catalyst

18 监控

一篇文章全面了解监控知识体系

18.1 prometheus

大数据好文推荐_第2张图片

18.1.1 概述

Prometheus普罗米修斯是一个时序数据库,可以用来做metrics采集(比如访问Exporter暴露出的接口来采集数据)、数据查询、监控告警等。

可参考:

  • prometheus简介
  • prometheus.io
  • 开源监控 prometheus初体验
  • Prometheus官网的非官方中文手册

18.2.2 Exporter

  • Github-JMX Exporter
    把JMX metrics 导出为 Promethues 格式
  • Github-Kafka Exporter
    把常见的 Kafka metrics导出为 Prometheus 格式。

18.2 Grafana

可视化工具,可以搞dashbord,适合用来展示监控数据,可搭配时序库Prometheus、InfluxDB等使用。

  • Grafana import

18.3 实践

  • JMX exporter+Prometheus+Grafana监控Hadoop集群
  • 携程的Kafka监控方案:
    • JMX Exporter:部署到每台 broker 上。
    • Kafka Exporter:部署到任意 1 台 broker 上。
    • Prometheus:部署到 1 台独立机器上,采集 JMX Exporter 和 Kafka Exporter 上的数据。
    • Grafana:部署到 1 台独立机器上,可视化 Prometheus Kafka metrics 数据。对于 cluster、broker、topic、consumer 4 个角色,分别制作了 dashboard。

19 数据格式

19.1 CarbonData

  • Apache CarbonData 中文文档
    Apache CarbonData 是一种新的融合存储解决方案,利用先进的列式存储,索引,压缩和编码技术提高计算效率,从而加快查询速度,其查询速度比 PetaBytes 数据快一个数量级。
  • CarbonData QuickStart

20 执行引擎

20.1 Tez

MapReduce和Tez对比

20.2 MapReduce

  • MapReduce学习
  • Hadoop Streaming介绍
  • 对比 Hadoop MapReduce 和 Spark 的 Shuffle 过程
  • MapReduceshuffle过程剖析及调优

21 数据仓库

  • 一种通用的数据仓库分层方法
  • 数据库, 数据仓库, 数据集市
  • 大数据处理过程的通俗理解
  • 创业公司做数据分析(六)数据仓库的建设

22 数据质量

  • 漫谈数据质量监控
  • 数据质量监控
  • 网易猛犸:数据质量漫谈

23 数据湖

  • 转自数据异次元:杭州-数据中台|数据治理
    数据湖以前最开始其实就代表了ODS,所以对于大型企业来说被忽悠上船之后就是数据沼泽。现在随着云厂商的不断概念演进,数据湖更多强调的是数据从各种源快速稳定的到达数仓,然后在一个平台进行各种敏捷分析和数据获取的过程。并且在这一层通过诸如impala、spark使用列存储 ,其他MPP类型数据库在分布式环境下更快速的获取想要的数据。但是这只是解决了数据从0-1的问题,一旦业务复杂数据量大(各种金融类型场景)还是得一步一步维度建模。感兴趣的可以搜一下这篇文章《data lakes fake news?》

  • EDW2019-国际数据管理最新趋势(二)

24 云服务

24.1 阿里云

  • DataWorks

25 调优

  • 数据倾斜
  • 谓词下推

26 分布式

26.1 分布式事务

  • 分布式-事务
  • 分布式-事务-阿里Fescar

26.2 CAP

  • 分布式-CAP
  • 有赞-CAP 一致性协议及应用解析

26.3 一致性协议

  • 一个关于paxos的故事…
  • 大数据生态圈里的一致性算法

26.4 系统设计

  • 分布式-系统设计

27 数据中台

  • 数据中台-好文推荐
  • 数据中台和数仓的关系

28 图数据库

图数据库好文推荐

29 用户画像

  • 大数据用户画像方法与实践

30 元数据

  • EDW2019-国际数据管理最新趋势(一)

你可能感兴趣的:(分享)