- 博客(30)
- 收藏
- 关注
原创 数据仓库面试
1、数仓构建1. 前期业务调研,如需求调研、数据调研、技术调研2. 提炼业务模型、总线矩阵、划分主题域3.定制规范,如命名规范、开发规范、流程规范4.数仓架构分层以阿里巴巴OneData建设为例:一般分为操作数据层(ODS:Operational Data Store)、公共维度模型层(CDM)和应用数据层(ADS)。其中公共维度模型层包括明细数据层(DWD和汇总数据层(DWS)。公共维度模型层(CDM):存放明细事实数据、维表数据及公共指标汇总数据,其中明细事实数据、维...
2021-04-09 09:58:13
804
原创 Yarn容量调度器并发度问题,解决一直卡在Running job
一、问题描述Yarn默认调度器为CapacityScheduler(容量调度器),且默认只有一个队列——default。如果队列中执行第一个任务资源不够,就不会再执行第二个任务,一直等到第一个任务执行完毕。(1)创建一张测试表create table student(id int, name string);(2)启动1个hive客户端,执行以下插入数据的sql语句insert into table student values(1,'abc');执行该语句,hive会初始化..
2021-03-04 13:13:03
3407
1
转载 Hive SQL迁移Spark SQL在滴滴的实践
桔妹导读:在滴滴SQL任务从Hive迁移到Spark后,Spark SQL任务占比提升至85%,任务运行时间节省40%,运行任务需要的计算资源节省21%,内存资源节省49%。在迁移过程中我们沉淀出一套迁移流程, 并且发现并解决了两个引擎在语法,UDF,性能和功能方面的差异。1.迁移背景 Spark自从2010年面世,到2020年已经经过十年的发展,现在已经发展为大数据批计算的首选引擎,在滴滴Spark是在2015年便开始落地使用,不过主要使用的场景是更多在数据挖掘和机器学习方向...
2021-01-29 21:17:19
258
原创 Hive之窗口函数(一文搞懂)
1.相关函数说明OVER():指定分析函数工作的数据窗口大小,这个数据窗口大小可能会随着行的变而变化。重点解释下OVER()函数,OVER()函数中包括三个函数:包括分区partition by 列名、排序order by 列名、指定窗口范围rows between开始位置and结束位置。我们在使用over()窗口函数时,over()函数中的这三个函数可组合使用也可以不使用。over()函数中如果不使用这三个函数,窗口大小是针对查询产生的所有数据,如果指定了分区,窗口大小是针对每个分区的数据
2021-01-28 17:49:56
6067
原创 Hive问题之执行sql的mapreduce时卡在Kill Command
Hive问题之执行sql的mapreduce时卡在Kill Command1、首先遇到问题先查日志,我的hadoop采用yarn进行资源管理调度,需要查看日志yarn-hadoop-resourcemanager-hadoop.log2、唯一的一个node节点出现不健康状态的日志3、执行命令确认 yarn node -list all,确实有不健康的节点4、原因:NodeManager默认会每两分钟检查本地磁盘(local-dirs),找出那些目录可以使用。注意如果判定这个磁盘不可用,则在重
2021-01-26 13:35:41
1070
转载 php程序员的发展路线
按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定学习成长目标。 本文按照目前主流技术做了一个基本的梳理,整个是假设PHP程序员不是基础非常扎实的情况进行的设定,并且所有设定都非常具体明确清晰,可能会让人觉得不适,请理解仅代表一家之言
2017-05-07 21:10:16
980
原创 关于解决在win10无线局域网环境下VMware虚拟机中的CentOS6.5系统连接网络的问题
关于解决在win10无线局域网环境下VMware虚拟机中的CentOS6.5系统连接网络的问题
2017-04-28 01:25:17
3868
转载 查看mysql数据库及表编码格式和解决中文乱码问题
一. 在前台连接写入的时候编码是不是与数据库编码符合 $conn = @ MYSQL_CONNECT("localhost","root","")OR DIE ("数据库连接错误"); MYSQL_SELECT_DB("millia",$conn); MYSQL_QUERY('SET NAMES UTF8');//使用UTF8而不是UTF-8中文编码?>1234512345二、
2017-04-25 00:08:38
2476
原创 浅谈css中浮动和清除浮动带来的影响
有很多时候,我们都会用到浮动,而我们有时候对浮动只是一知半解,却不是太清楚它到底是怎么回事,不知道各位有没有和我一样的感觉,只知道用它,却不知道它到底是怎么回事,所以,在学习的过程中,就要把一个概念不是很清晰的问题把它弄清楚了,便于我们以后的使用。早些时候,W3C规定出来的浮动实际并不是为了布局所用,当时是为了做文字环绕才使用到浮动,后来有人发现用它来做布局也挺不错啊,但是,用到了浮动,是要付出一
2017-03-11 20:54:16
682
转载 移动前端开发之viewport的深入理解
在移动设备上进行网页的重构或开发,首先得搞明白的就是移动设备上的viewport了,只有明白了viewport的概念以及弄清楚了跟viewport有关的meta标签的使用,才能更好地让我们的网页适配或响应各种不同分辨率的移动设备。一、viewport的概念通俗的讲,移动设备上的viewport就是设备的屏幕上能用来显示我们的网页的那一块区域,在具体一点,就是浏览器上(也可能是一个app
2017-02-24 10:19:59
415
转载 前端面试题汇总01
Web前端常见面试题及答案1、盒子模型盒子模型包括四部分:内容(content)、填充(padding)、边框(border)、边界(margin)盒子模型可以分为两种:IE盒子模型和W3C标准盒子模型区别:两者对于width的计算方式不同,前者width=border+padding+内容宽度,后者width=内容宽度。2、position包含几种属性?a
2017-02-21 08:39:21
422
转载 文章标题
高效的 JavaScript 本文转载自:众成翻译 译者:边城 链接:http://www.zcfy.cc/article/2320 原文:https://dev.opera.com/articles/efficient-javascript/?page=3#timeouts传统的 Web 页面不会包含很多脚本,至少不会太影响 Web 页面的性能。然而,Web 页面变得越来越
2017-01-17 14:42:56
557
转载 Ext.ComponentQuery.query()
1.ComponentQuery简介: ComponentQuery提供了一种类似CSS标签选择器的组件查询方式,他有两种调用方式: (1)直接通过ComponetManager来查询:Ext.ComponentQuery.query() (2)通过组件直接的Container来查询: combo.up('form').query()2.优点:不用指
2016-07-29 15:39:40
955
转载 eclipse+spket+Extjs4.2.1开发环境搭建
一、开发工具配置 1、http://www.eclipse.org/downloads/下载Eclipse,解压。 2、http://spket.com/download.html下载Plugin,解压后覆盖到Eclipse的目录。 3、启动Eclipse,选择window→proference→spket→javascriptprofil
2016-04-01 13:47:24
343
转载 Android 日常开发总结的技术经验 60 条
1. 全部Activity可继承自BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效。2. 数据库表段字段常量和SQL逻辑分离,更清晰,建议使用Lite系列框架LiteOrm库,超级清晰且重心可以放在业务上不用关心数据库细节。3. 全局变量放全局类中,模块私有放自己的管理类中,让常量清晰且集中.4. 不要相信庞大的管理类
2016-02-28 10:28:12
388
转载 首次用Eclipse进行android开发,能够提高效率的配置
一、Eclipse中androi开发代码的自动补全 1>运行Eclipse开发工具,在开发工具最顶端菜单栏,点击“windows”->"preferences",弹出preferences设置窗口。 2>在preferences(参数)设置窗口左边列表,找到Java,依次展开列表"Editor"->"Content Assist",点击C
2016-02-27 20:24:49
543
转载 JNDI技术简介
JNDI技术简介 JNDI(Java Naming and Directory Interface),Java命名和目录接口,它对应于J2SE中的javax.naming包, 这套API的主要作用在于:它可以把Java对象放在一个容器中(JNDI容器),并为容器中的java对象取一个名称,以后程序想获得Java对象,只需通过名称检索即可。其核心API为Context,它代表JNDI容器
2015-05-28 20:24:19
851
转载 软件工程之数据流图
数据流图 数据流图( Data Flow Diagram , DFD )以图形的方式描绘数据在系统中流动和处理的过程,它只反映系统必须完成的逻辑功能,所以是一种功能模型。数据流图强调的是数据流和处理过程,只关心系统做什么,而不关心系统怎么做;一般不考虑时序问题,即不表示过程的序列;只有数据流,没有控制流;既不反映判断和控制条件,也不反映循环过程。1.
2015-05-27 16:28:43
11510
转载 SmartTemplate学习入门
php最简单的模板Array的变量是由SmartTemplate内建函数assign()来赋值的 具体语法如下 assign ( 模版中的变量, 要替换的内容 ) 或 assign ( Array内容 ) 和其他程序的变量一样,smartTemplate的变量是由特殊的{}所包含的。里面的内容可以是String,Array,Int,或者是Long Text等等(基本
2015-05-25 13:02:52
572
转载 CentOS 6.6安装配置LAMP服务器(Apache+PHP5+MySQL)
准备篇:1、配置防火墙,开启80端口、3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允许80端口通过防火墙-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j AC
2015-04-08 11:53:18
886
转载 strcmp函数实现及分析
最近看C,看到strcmp函数,对它的实现原型不很清楚,于是到网上搜。网上算法一大堆,看了很多代码后自己做了一下总结 strcmp函数是C/C++中基本的函数,它对两个字符串进行比较,然后返回比较结果,函数形式如下:int strcmp(const char* str1, const char* str2);其中str1和str2可以是字符串常量或者字符串变量,返回值为整形。返回结
2015-04-07 16:18:10
543
原创 Linux环境下Log4cpp-1.1.1 的下载、安装、配置
Log4cpp的主页为:http://sourceforge.net/projects/log4cpp/ 下载log4cpp-1.1.1. tar.gz tar zxvf log4cpp-1.1.1 tar.gz 解压到 /usr/local目下 安装:打开终端,在/usr/local/log4cpp/
2015-03-26 21:41:54
974
原创 考研数据结构与算法之排序专题三 直接插入排序
直接插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中的适当位置,直到全部记录插入完成为止。设数组为a[0…n-1]。1. 初始时,a[0]自成1个有序区,无序区为a[1..n-1]。令i=12. 将a[i]并入当前的有序区a[0…i-1]中形成a[0…i]的有序区间。3. i++
2015-02-01 00:52:59
572
原创 指针小节
a) 一个整型数(An integer) int ab) 一个指向整型数的指针(A pointer to an integer) int* a ;c) 一个指向指针的的指针,它指向的指针是指向一个整型数(A pointer to a pointer to an integer) int* *p d) 一个有10个整型数的数组(An array of 10 int
2015-02-01 00:16:56
456
转载 select 函数实现 三种拓扑结构 n个客户端的异步通信 (完全图+线性链表+无环图)
一、这里只介绍简单的三个客户端异步通信(完全图拓扑结构)1 1 //建立管道2 2 mkfifo 12 13 21 23 31 32 open顺序: cl1 读 , cl2 cl3 向 cl1写 cl2 读 , cl1 cl3 向 cl2写 cl3 读 , cl1 cl2 向 cl3写 顺序
2015-01-31 23:42:49
603
原创 考研数据结构与算法之排序专题二 冒泡排序及优化
冒泡排序顾名思义就是由于在排序过程中总是小数往前放,大数往后放,相当于气泡上升。基本思想:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结束,将最大的数放到了最后。然后从头开始比较,比较n-2次,第二次结束,重复以上操
2015-01-31 22:20:34
663
原创 考研数据结构与算法之排序专题一 快速排序
基本思想:通过一趟排序将待排序记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,已达到整个序列有序。一趟快速排序的具体做法是:附设两个指针low和high,他们的初值分别为low和high,设枢轴记录的关键字为pivotkey,则首先从high所指位置起向前搜索找到第一个关键字小于pivotkey的记录和枢轴记录互相交换,然后从low
2015-01-31 21:47:14
936
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人