自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

杨鑫newlife的专栏

算法就是我的灵魂

  • 博客(35)
  • 资源 (187)
  • 论坛 (1)
  • 收藏
  • 关注

原创 大数据之路、阿里巴巴大数据实践读书笔记 --- 第七章、数据挖掘

一、阿里巴巴算法平台框架和原理 算法平台计算框架MaxCompute MPI; 伏羲为阿里云飞天系统的分布式调度系统; 女娲为阿里云飞天系统的分布式一致性协同服务; 盘古为阿里云飞天喜听的分布式文件存储系统; 基于MaxCompute MPI,目前阿里巴巴的算法平台已经继承了攫夺大多数业界主流的机器学习算法 分类 ...

2020-03-31 21:01:53 376

原创 LeetCode --- 563. Binary Tree Tilt 解题报告

Given a binary tree, return the tilt of thewhole tree.The tilt of atree nodeis defined as theabsolute differencebetween the sum of all left subtree node values and the sum of all right subtree ...

2020-03-26 22:44:41 144 1

原创 Kafka学习笔记 ---Kafka是怎么实现高性能的?

其实这里的内容与Kafka的高吞吐有些交集,可以结合着看。Kafka学习笔记 --- Kafka是如何实现高吞吐率的?高性能主要从两个方面来剖析:一、架构层次 分区 我们知道Kafka是个分布式集群的系统,整个系统可以包含多个broker,每个topic会有多个分区。Kafka将分区均匀的分配到整个集群,当生产者向对应主题传递消息时,消息通过负载均衡机制传递到不同的分区以减轻...

2020-03-26 17:46:20 250

原创 Kafka学习笔记 --- Kafka是如何实现高吞吐率的?

Kafka的高吞吐率是一个使用起来很不错的性能,其中有如下几点原因:一、Broker NIO异步消息处理,实现了IO线程与业务线程分离Kafka的网络通信模型是基于NIO的Reactor多线程模型来设计的,这里先引入Kafka源码中注释。An NIO socket server. The threading model is1 Acceptor thread that han...

2020-03-26 16:32:28 675

原创 Sqoop export 数据导出覆盖与更新

sqoop-export xxxxxx --table xxxxxxxxx --columns xxx,xxxx --fields-terminated-by ',' --input-null-string '' --input-null-non-string '' --export-dir "/hdfs/xxxxxx/dt=$dt" --update-key id --update-mode ...

2020-03-26 12:29:58 1335

原创 Scala实现单例模式

单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例。对于系统中的某些类来说,只有一个实例很重要,例如,一个系统中可以存在多个打印任务,但是只能有一个正在工作的任务; 一个系统中只能有一个窗口管理器或文件系统; 一个系统只有一个计时工具或ID(序号)生成器; 如果在Windows中就只能打开一个任务管理器;...

2020-03-26 00:38:30 963

原创 Hive学习笔记 --- Hive外部表和内部表的关系

1.默认情况下是内部表(MANAGED_TABLE); 2.外部表(External Table)创建的时候需要加上External关键字,并指定位置存储位置; 3.删除内部表会直接删除元数据(METADATA)以及存储数据;删除外部表仅仅会删除元数据,HDFS上的文件并不会删除; 4.内部表由数据由Hive自由管理,外部表数据由HDFS管理; 5.对内...

2020-03-25 22:47:47 220

原创 Scala的可变集合与不可变集合

一、简述Scala语言中的集合可以分为可变与不可变集合。但是主要来自三个包: scala.collection scala.collection.immutable scala.collection.mutable 可变集合可以在适当的时候被更新或被扩展,这意味着你可以修改,添加,移除一个集合;而不变的集合类,永远不会改变。不过可以模拟改变,新增、移除或者更新...

2020-03-25 21:15:48 1699

原创 Spark实现对年级、班级、学生、分数求TopN

最近面试遇到一个问题就是,Spark实现对统计 “年级, 班级, 学生, 分数” 的Top3;除了此外问题还有: 每个班级分数前三名同学的名字以及分数; 各省指标数量前三的市的名字; 测试数据:一年级、一班、yy、99一年级、二班、xx、98二年级、二班、yx、97…我们假如使用:表的字段为:班级、姓名、分数Spark-Core...

2020-03-25 16:08:01 1118

原创 Scala实现单链表的反转

class ListNode(value:Int) { val node_v = value // 设置每个节点存储的值 var next:ListNode = null // 设置每个节点的指针}def reverse(l1:ListNode):ListNode = { // 参数l1:...

2020-03-25 14:28:35 351

原创 Spark学习笔记 --- ReduceByKey与GroupByKey的区别

一、功能对比: reduceByKey(func)的功能是,使用func函数合并具有相同键的值。 比如,reduceByKey((a,b) => a+b),有四个键值对(“spark”,1)、(“spark”,2)、(“hadoop”,3)和(“hadoop”,5) groupByKey()的功能是,对具有相同键的值进行分组。 比如,对四个键值对(“spark”,...

2020-03-24 21:49:14 225 2

原创 MapReduce与Spark的异同

Spark是借鉴了MapReduce并在其基础之上发展起来的,继承了分布式计算的优点并改进了MapReduce的劣势;1.Spark把运算的中间数据存放在内存,迭代计算效率更高,Spark中除了基于内存计算外,还有执行任务的DAG有向无环图;MapReduce的中间结果需要保存到磁盘,这样必然会有磁盘IO操作,应相性能降低;2.Spark容错性高,它通过弹性分布式数据集RD...

2020-03-24 20:30:36 1006

原创 数据仓库学习笔记 --- 数据仓库入门知识(业务数据矩阵、数据集市与主体域名、数据治理、数据中台、实时数仓、传统与互联网对比)

一、主题域划分规则(业务数据矩阵)下图是以某电商业务为背景做的划分 主题 通用行为主题 曝光 点击 下载 安装 注册 登陆 业务行为主题 订单 阅读 ...

2020-03-22 23:39:58 626

原创 大数据之路、阿里巴巴大数据实践读书笔记 --- 第六章、数据服务

— 题外话: 阿里巴巴数据服务基本从2010年开始开发,到现在刚好十年,但是我读完了这一章的感觉是很多公司数据服务技术依旧停留在2010年…— 版本迭代: DWSOA(2010) 一个需求一个接口 编码实现接口 接口数量5000/年 OpenAPI(2012) 一类需求一个接口 ...

2020-03-22 01:26:53 303

原创 数据仓库学习笔记 --- 数据仓库入门知识(痛点、模型、规范、系统建设)

主要内容: 数据仓库痛点 痛点一:临时获取数据需求占用数据仓库大部分时间(自助获取数据工具 + OLAP系统); 痛点二:数仓规范和流程不一致,跨部门合作困难(建模规范和开发规范); 痛点三:指标口径不一致导致数据数据可信度下降(指标字典); 痛点四:烟囱式开发形成的数据孤岛与重复计算(建模规范和开发规范); 痛...

2020-03-20 22:06:52 574

原创 HBase学习笔记 --- 如何优雅的设计RowKey

Rowkey的作用— RowKey在查询中的作用HBase中RowKey可以唯一标识一行记录,在HBase中检索数据有一下三种方式: 1.通过get方式,指定RowKey获取唯一一条记录; 2.通过Scan方式,设置startRow和stopRow参数进行范围匹配; 3.全表扫描,即直接扫描整张表中所有行记录; 当大量的请求访问HBase集群的一个或者少...

2020-03-20 16:52:27 196

原创 LeetCode --- 561. Array Partition I 解题报告

Given an array of2nintegers, your task is to group these integers intonpairs of integer, say (a1, b1), (a2, b2), ..., (an, bn) which makes sum of min(ai, bi) for all i from 1 to n as large as poss...

2020-03-20 10:32:52 142

原创 大数据之路、阿里巴巴大数据实践读书笔记 --- 第五章、实时技术

— 数据的分类根据实效性对数据分三大类: 离线:在今天(T)处理N天前(T-N, N >= 1)的数据延迟时间粒度为天; 准实时:在当前小时(H)处理N小时前(H - N, N > 0, 如 0.5 小时、1 小时等)的数据,延时时间粒度为小时; 实时:在当前时刻处理当前的数据,延迟时间粒度为妙; 【注意】:离线数据仓库的T + 1模型与这里的数据模型...

2020-03-19 21:00:36 245

原创 Hive学习笔记 ---- 支持Update和Delete以及Merge

在最早2013年接触Hive的时候就总看到各种材料说着Hive有一个很大的弊端,就是分布式系统依托底层HDFS存储系统没法对行级别的数据进行update更新和delete行级别的删除和merge行级别合并操作。但是后来隐约的听说Hive又可以支持update和delete了,我就去做了一个调研,这里是总结的说明文档。其中官网的WIKI中记录,开始支持行级别的update和d...

2020-03-18 20:33:11 616

原创 Hive学习笔记 --- 文件存储格式梳理汇总

Hive支持的文件存储格式如下: Text File SequenceFile RCFile Avro Files ORC Files Parquet Custom INPUTFORMAT and OUTPUTFORMAT 其中hive.default.fileformat 配置参数确定在CREATE TABLE 或...

2020-03-17 20:59:41 159

原创 Hive学习笔记 --- 动态分区与静态分区

一、简述动态分区与静态分区 Dynamic Partition 动态分区:每次运行时是通过数据来自动判断生成,自动生成写入的分区内; Static Partition 静态分区:每次运行时是通过用户手动指定分区,然后数据写入指定的分区下面哪; 二、动态分区与静态分区使用的差异CREATE TABLE table_dynamic_partition(...

2020-03-16 19:25:55 226

原创 Hive中小文件如何产生?会产生哪些影响?解决Hive小文件过多方案?什么导致速度慢&性能差的呢?

问题一:Hive中小文件如何产生的? 动态分区插入数据,产生大量的小文件,从而导致map数据剧增; Reduce数据量越多,小文件也就越多(Reduce的个数和输出文件是对应的); 数据源本身就包含大量的小文件; 问题二:会产生哪些影响? 从Hive角度来看,小文件会开很多map,一个map开一个JVM去执行,所以这些任务的初始化,启动,执行会浪费大量的资...

2020-03-16 18:54:18 1225

原创 Spark学习笔记 --- 架构原理和工作原理和执行流程

一、架构原理和工作原理 Driver: 一个进程,我们编写Spark程序运行在Driver上,由Driver进行执行,Driver是作业的主进程,具有Main函数,是程序的入口点,Driver进程启动后,向Master发送请求,进行注册,申请资源,在后面的Executor启动后,会向Driver进行反向注册,Driver注册Executor后,正式执行Spark程序,读取数据...

2020-03-13 21:04:08 200

原创 Hive学习笔记 --- Hive架构原理 与 执行流程 与 工作原理

一、简述:HIve数据仓库可以使用类SQL(HQL)查询读取、写入和管理存储在分布式中的大型数据集。Hive建立在Hadoop之上,提供以下功能: 通过SQL轻松访问数据的工具,从而实现数据仓库的任务,例如提取/转换/加载(ETL),报告和数据分析; 一种将强结构用于各种数据格式的机制; 可以直接访问存储在HDFS或者和其他存储系统(HBase)中的文件;...

2020-03-13 15:10:03 246

原创 Hadoop学习笔记 --- HDFS执行流程与工作原理

一、简述Hadoop分布式文件系统(HDFS - Hadoop Distributed File System)是一种旨在硬件上运行的分布式系统。它与现有的分布式分拣系统有许多相似之处。但是与其他文件系统的区别很明显。HDFS具有高度的容错能力,旨在部署在低成本的硬件上。HDFS提供对应应用程序数据的高吞吐量访问,并且适用于具有大数据集的应用程序。HDFS放宽了一些POSIX要求,...

2020-03-13 11:31:09 272

原创 Hadoop学习笔记 --- YARN执行流程与工作原理

一、YARN简述首先介绍一下YARN在Hadoop2.0版本引进的资源管理系统,直接从MapReduce V1演化而来(由于引擎的功能缺陷);原因是将MapReduce1中的Job Tracker的资源管理和作业调度两个功能分开,分别由ResourceManager和Application Master进行实现; ResourceManager:负责整个集群的资源管理和调度 ...

2020-03-11 20:56:41 190

原创 在浏览器输入域名之后,浏览器的处理过程

我们在地址栏输入www.baidu.com的时候,是什么反应呢?1.浏览器查找该域名的IP地址2.浏览器根据解析得到的IP地址向web服务器发器HTTP请求3.服务器收到请求并进行处理4.服务器返回一个响应5.浏览器对该响应进行解码6.根据返回的数据显示Web页面,后续点击浏览器在进行异步请求发送...

2020-03-11 00:31:31 193

原创 Hadoop学习笔记 --- MapReduce执行流程与工作原理

首先MapReduce是面向大数据的并行处理计算模型、离线计算框架。一、执行流程如下: Job Client:运行于Client node,负责将MapReduce程序打包成Jar包上传到HDFS,并把Jar路径传递给Job Tracker, 由于Jobtracker进行任务的分配和监控。 Job Tracker: 运行于Name Node,负责接收...

2020-03-10 20:43:23 162

原创 Azkaban源码学习笔记 --- 分布式Azkaban如何选择Executor

最近一直在想一个问题,就是当Azkaban是分布式部署的时候,Azkaban-Web-Server究竟是怎么选择哪个Executor来执行的呢?这里面我们找到了对应的筛选方法:selectExecutor定位到目录:/azkaban/azkaban-common/src/main/java/azkaban/executor/ExecutorManager.java如下图:...

2020-03-10 01:17:14 762

原创 Hadoop学习笔记 --- 解析MapReduce运行原理

MapReduce是一种编程模型,用于大规模数据集的并行计算。MapReduce采用分而治之的思想,把对大规模数据集的操作,分发给一个主节点管理下的各个分节点完成,然后通过整合各个节点的中间结果,得到最终结果。简单的说MapReduce就是任务的分解与结果的汇总。分层解析:1.Split阶段,Map的输入数据源是多种多样的,我们使用hdfs作为数据源,数据在hdfs上以bloc...

2020-03-07 14:39:17 181

原创 Hive中sql partition by 、Group by、Over 、Rank、Dense_Rank()、Row_number()区别

我们如何统计一个班级考试的课程的前三名?已知表:Lesson(no,course, score)实例一:对比Partition by 与Group bySelect a.course, a.score from( Select course, score, row_number() over(partition by course order by score...

2020-03-07 13:04:48 1637

原创 数据仓库 --- 范式建模与维度建模

一、维度建模源于 Kimball 提出的总线式的 自下而上(DM-DW-ODS)的数据仓库架构。根据应用推宽表形式。特点:1.模型结构简单,星型模型为主;2.开发周期短,能够快速迭代;3.维护成本较高;4.根据应用频繁更新;二、范式建模源于Inmon提出的集线器的自上而下(ODS-EDW-DM)的数据仓库架构。根据底表抽象通用逻辑。...

2020-03-07 11:23:39 1887

原创 脚本自动定时启动/停止Cloudera版本的Hue

我们可以利用基于Cloudera的Hue的API接口停止命令:curl -X POST -u 'admin:admin' http://ip:7180/api/v18/clusters/cluster/services/hue/commands/stop启动命令:curl -X POST -u 'admin:admin' http://ip:7180/api/v18/cl...

2020-03-06 11:17:19 469

原创 Hive-SQL获取表中复杂结构数据

数据格式基本如下:col1"{""couponSetting"":[{""amount"":""xxxxx"",""type"":""优惠券"",""boxxsrsarow"":""50万"",""_batchssId"":""4718"}"],""totalCount"":6,""couponExplain"":""优惠xxxxxxx选、U(服xxxxxxxx月),每xxxxxxx次。"...

2020-03-04 20:02:58 1392

原创 Celery命令选项操作

Celery 命令 选项Show help screen and exit 显示帮助信息并退出Options(选项):-A APP, --app=APPapp instance to use (e.g. module.attr_name)-本次操作使用的App实例。 -b BROKER, --broker=BROKER-消息代理(服务器),用于传递数据的URL...

2020-03-03 20:58:49 593

Python3实现KNN的三个例子(包含数据集),水果分类,识别手写数字,找相似的朋友

Python3实现KNN的三个例子(包含数据集),水果分类,识别手写数字,找相似的朋友

2019-03-06

demjson-2.2.4

demjson-2.2.4很好用,适合于python操作json使用。

2016-08-02

软件开发文档模板[全套]

软件开发文档模板[全套]

2017-04-07

ElasticSearch中文文档(新版)

ElasticSearch中文文档(新版)

2017-06-23

_bz2.cpython-36m-x86_64-linux-gnu.so

_bz2.cpython-36m-x86_64-linux-gnu.so,

2019-11-07

AzkabanAPI接口文档汇总

AzkabanAPI接口文档汇总

2018-09-26

ACM学习路线导图

ACM学习路线导图

2018-11-14

数据仓库规范设计.pdf

数据仓库规范设计.pdf

2019-11-04

Confluence-5.6.6-language-pack-zh_CN.jar

Confluence-5.6.6-language-pack-zh_CN.jar,防止confluence乱码的jar包

2018-09-30

KNN实现水果分类的数据集

KNN实现水果分类的数据集KNN实现水果分类的数据集,KNN实现水果分类的数据集,KNN实现水果分类的数据集

2019-10-17

cyrus-sasl-plain-2.1.26-20

cyrus-sasl-plain-2.1.26-20,用于安装sasl。

2016-10-08

哈希算法C语言实现

哈希算法C语言实现

2016-02-17

机器学习算法-神经网络LSTM

机器学习算法-神经网络.pptx

2019-09-21

easygui-0.96.tar.gz

easygui-0.96.tar.gz 在linux下的使用,很好用,有需要的自己去下载吧。

2016-06-09

pandas-0.19.2.tar.gz

pandas-0.19.2.tar.gz 用于开发操作数据分析等

2017-02-21

openpyxl-openpyx

openpyxl 挺好用的一个lib包,需要自己进行编译。

2016-09-09

jsp实现购物车

这个使用jsp实现的购物车代码,和我上次上传的servlet实现的购物车正好行对应,适合新手学习。

2015-03-25

C语言实现prim算法

C语言实现prim算法

2015-08-12

Griffin数据质量管理技术调研.pdf

Griffin数据质量管理技术调研.pdf

2019-12-09

Azkaban元数据库分析

Azkaban元数据库分析,

2018-09-19

Presto资源管理Rest API 文档

Presto资源管理Rest API 文档

2018-12-01

easygui-docs-0.96.zip

easygui-docs-0.96.zip,在windows下的文档说明,很好用!

2016-06-09

java连接DB2所有jar包

java, python等通过jdbc连接DB2数据库的连接jar文件集合。

2017-02-14

C语言实现银行模拟-数据结构应用

C语言实现银行模拟-数据结构应用,很好用,有需要的来下载。

2016-03-28

基础算法 - 动态规划-2019-08-01.pptx

基础算法 - 动态规划-2019-08-01.pptx,基础算法 - 动态规划-2019-08-01.pptx,基础算法 - 动态规划-2019-08-01.pptx,基础算法 - 动态规划-2019-08-01.pptx

2019-10-17

C语言实现链式队列

链式队列

2015-09-08

C语言实现循环队列

C语言实现循环队列

2015-09-08

中文停用词表

中文停用词表,很好用,找了很久才找到,有需要的去下载就好了。

2016-03-28

完整的VISIO教程.ppt

完整的VISIO教程.ppt

2017-03-23

实时指标计算引擎-Spark-Part_1_杨鑫_2019-12-19.pptx

实时指标计算引擎-Spark-Part_1_杨鑫

2019-12-19

开源SuperSet、MetaBD、Redash简单对比

开源SuperSet、MetaBD、Redash简单对比

2020-07-22

servlet-api.jar && jsp-api.jar

servlet-api.jar && jsp-api.jar

2015-03-13

Python对Excel操作详解

Python对Excel操作详解,很好用,里面有xlrd, xlwt怎么使用。

2016-09-13

C语言实现串存储

C语言实现串存储

2015-09-08

Apache Kylin竞品分析.pdf

Apache Kylin竞品分析.pdf

2019-11-18

宽依赖与窄依赖

宽依赖与窄依赖,很好用的PPT,对于spreak的宽依赖与窄依赖很清楚,分享给有用的朋友。

2016-05-06

英文停用词表Stop

英文停用词表Stop,很好用,有需要的去下载

2016-03-29

Hive编程指南

Hive编程指南 pdf,内容很不错适合入门hive编程的朋友。

2017-09-13

mongodb-linux-x86_64-3.4.6

mongodb-linux-x86_64-3.4.6,很好用的客户端,请下载使用。

2017-10-17

串的块链存储表示

串的块链存储表示

2015-09-08

杨鑫newlfe的留言板

发表于 2020-01-02 最后回复 2020-04-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除