自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 收藏
  • 关注

原创 ssh免密登陆失败原因

配置ssh免密登陆ssh-keygen -t rsa查看~/.ssh多了两个文件:测试:ssh hadoop@hadoop000发现仍需输入密码,说明ssh免密登陆配置失败。ssh免密登陆失败原因文件~/.ssh/authorized_keys必须是600权限文件夹~/.ssh必须是700及以下权限home目录~/ 必须是750及以下权限/home/hadoop目录文件权限必须是700sudo chmod 600 ~/.ssh/authorized_keyschmod -

2021-05-12 21:39:27 680

原创 Spark学习笔记

一、Spark入门WordCount案例思路:完整代码:运行结果:

2021-05-10 12:11:13 1116

原创 Scala学习笔记

一、概述Scala语言特点Scala是一门以Java虚拟机(JVM)为运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言(静态语言需要提前编译的如: Java、 c、 c++等, 动态语言如: js)。1)Scala是一门多范式的编程语言,Scala支持面向对象和函数式编程。(多范式,就是多种编程方法的意思。有面向过程、面向对象、泛型、函数式四种程序设计方法。)2)Scala源代码(.scala)会被编译成Java字节码(.class) ,然后运行于JVM之上,并可以调用现有的J

2021-05-09 15:59:57 593

原创 大厂SQL面试题

1.现在有大学考试成绩如下表A:id,subject,score,找出每一科都是这一科前10%的学生的id(快手)1)建表及准备数据create table tmp( nam char(10), lesson char(20), mark int);INSERT into tmp VALUES('a1','c1',80),('a2','c2',80),('a3','c1',90),('a4','c1',90),('a5','c2',70),('a6','c3',70),(

2021-04-14 02:09:49 503

原创 CDH的安装与部署

1.基础环境准备1.1创建一个新的虚拟机1.2安装虚拟机,设置ROOT密码并创建用户名为cdh的用户。1.3修改配置文件1.4测试是否可以联网1.5安装常用命令1.6关闭防火墙1.7复制两台虚拟机并修改名称1.8生成MAC地址并记录此地址之后取消1.9启动第二台虚拟机1.10修改配置文件,修改以下三处内容(MAC地址为之前记录的)。1.11修改MAC地址与配置文件中一致1.12对第三台服务器重复1.8-1.111.13修改主机名1.14配置ho

2021-01-30 11:51:09 3063

原创 基本的算法设计技术——贪心法

1.一个简单的例子——埃及分数完整代码:#include<iostream>using namespace std;int CommFactor(int m,int n){ int r=m%n; while(r!=0) { m=n; n=r; r=m%n; } return n;}void EgyptFraction(int A,int B){ int E,R; cout<<A<&l

2020-06-08 23:36:06 285

原创 算法学习笔记11——回溯法解决N皇后问题

在n×n格的棋盘上放置彼此不受攻击的n个皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n后问题等价于在n×n格的棋盘上放置n个皇后,任何2个皇后不放在同一行或同一列或同一斜线上。完整代码:#include<iostream>#include<stdlib.h>#include<time.h>using namespace std;const int N=20; //最多放皇后的个数int q[N]; /

2020-06-08 16:10:38 1089

原创 基本的算法设计技术——动态规划法

1.数塔问题int DataTower(int d[n][n]){ int maxAdd[n][n]={0},path[n][n]={0}; int i,j; for(j=0;j<n;j++) maxAdd[n-1][j]=d[n-1][j]; for(i=n-2;i>=0;i--) { for(j=0;j<i;j++) { if(maxAdd[i+1][j]>maxAdd[i+1][j]) { maxAdd[i][j]=d[i][j]

2020-06-07 00:40:27 431

原创 基本的算法设计技术——减治法

1.两个序列的中位数int SearchMid(int A[],int B[],int n){ int s1=0,e1=n-1,s2=0,e2=n-1; int mid1,mid2; while((s1<e1)&&(s2<e2)) { mid1=(s1+e1)/2; mid2=(s2+e2)/2; if(A[mid1]==B[mid2]) return A[mid1]; if(A[mid1]<B[mid2]) { if((s1+

2020-05-26 14:25:16 888

原创 算法学习笔记10——应用哈夫曼树构造最短的不等长编码方案

内容:(1)设需要编码的字符集为{d1, d2, …, dn},它们出现的频率为{w1, w2, …, wn},应用哈夫曼树构造最短的不等长编码方案。提示:哈夫曼树(Huffman Tree),又叫最优二叉树,指的是对于一组具有确定权值的叶子结点的具有最小带权路径长度的二叉树。哈夫曼树的构造算法:假设有n个权值,则构造出得哈夫曼树有n个叶子结点。n个权值分别设为w1,w2,…,wn,则哈夫曼树的构造规则为:(1)将w1,w2,…,wn看成是有n棵树的森林(每棵树仅有一个结点);(2)在森林中选出

2020-05-26 08:26:55 2141

原创 基本的算法设计技术——分治法

1.数字旋转矩阵void Full(int number,int begin,int size)//从number开始填写size矩阵,左上角的下标为(begin,begin) { int i,j,k; int data[50][50]; if(size==0)//递归的边界条件,如果size等于0,则无需填写。 return; if(size==1)//递归的边界条件,如果size等于1,则只需要填写number { data[begin][begin]=number; re

2020-05-23 18:02:42 527

原创 基本的算法设计技术——蛮力法

1.查找问题中的蛮力法:串匹配问题:1>BF算法:int BF(char S[],char T[]){ int i=0,j=0,index=0; while(S[i]!='\0'&&T[j]!='\0'){ if(S[i]==T[j]){ i++; j++; }else{ index++; i=index; j=0; } } if(T[j]=='\0'){ return index+1; }else{ return

2020-05-23 10:25:24 714 1

原创 算法学习笔记9——蛮力法和动态规划法求解0/1背包问题

完整代码:#include<iostream>#include <windows.h>#include<iomanip>using namespace std;int c; //背包的容量int bag_values=0;//背包(装入)的价值 初始化为0int goods_num; //货物的数量int maxValue = -1; //定义最大的价值int calc_arrangement(); //函数 在后面实现 /*结构体 物

2020-05-18 10:01:28 1120

原创 算法学习笔记8——游艇出租站最小租金(多源点最短路径问题)

问题描述:游艇租用问题:长江旅游俱乐部在长江上设置了N个游艇出租站0,1,2,…,N-1,游客在这些站中租用游艇,并在下游的任何一个游艇出租站归还,游艇出租站i到游艇出租站j之间的租金为fee(i,j),0≤i<j≤N-1;试使用动态规划法求出从游艇出租站0到游艇出租站N-1所需的最少租金;实现提示:设游艇出租站有N个,而且每两个站的租金都是不一样的,用f(i,j)表示每两个站之间的租金费用。当要租用游艇从一个站到另外一个站时,采取不同的停靠站策略就有不同的租金。例如从第一个站到第三个站,租金是

2020-05-18 00:16:19 433

原创 算法学习笔记7——蛮力法和动态规划法分别求解最大子段和问题

算法分析完整代码:#include <iostream>#include <stdio.h>#include <windows.h>#include<iomanip>using namespace std;int largesum=-10;//蛮力法 void BruteForce(int a[], int n){ for(int i=0; i<n; i++){ int sum=0; for(int j=i; j&lt

2020-05-17 23:34:42 637

原创 牛客网sql题详解41-50

41.删除emp_no重复的记录,只保留最小的id对应的记录。CREATE TABLE IF NOT EXISTS titles_test (id int(11) not null primary key,emp_no int(11) NOT NULL,title varchar(50) NOT NULL,from_date date NOT NULL,to_date date DEFAULT NULL);insert into titles_test values (‘1’, ‘10001’

2020-05-14 17:31:07 198

原创 牛客网sql题详解31-40

31.将employees表的所有员工的last_name和first_name拼接起来作为Name,中间以一个空格区分CREATE TABLE employees ( emp_no int(11) NOT NULL,birth_date date NOT NULL,first_name varchar(14) NOT NULL,last_name varchar(16) NOT NULL,gender char(1) NOT NULL,hire_date date NOT NULL,PRIM

2020-05-14 15:22:35 358

原创 牛客网sql题详解21-30

21.统计各个部门的工资记录数,给出部门编码dept_no、部门名称dept_name以及次数sumCREATE TABLE departments (dept_no char(4) NOT NULL,dept_name varchar(40) NOT NULL,PRIMARY KEY (dept_no));CREATE TABLE dept_emp (emp_no int(11) NOT NULL,dept_no char(4) NOT NULL,from_date date NOT NU

2020-05-14 10:23:01 178

原创 牛客网sql题详解11-20

11.获取所有员工当前的manager,如果当前的manager是自己的话结果不显示,当前表示to_date=‘9999-01-01’。结果第一列给出当前员工的emp_no,第二列给出其manager对应的manager_no。CREATE TABLE dept_emp (emp_no int(11) NOT NULL,dept_no char(4) NOT NULL,from_date date NOT NULL,to_date date NOT NULL,PRIMARY KEY (emp_

2020-05-13 14:52:39 122

原创 Hive自定义UDTF函数

UDTF:一进多出举例:自定义一个UDTF实现将一个任意分隔符的字符串切割成独立的单词,例如:Line:“hello,world,hadoop,hive”Myudtf(line, “,”)helloworldhadoophivepackage hive.udtf;import com.sun.corba.se.spi.ior.ObjectId;import java.util.ArrayList;import java.util.List;import org.apache.ha

2020-05-12 17:17:51 544

原创 Hive自定义UDF函数

一个简单的自定义函数(实现将所有的int型数据加5的函数)举例:package hive.udf;import org.apache.hadoop.hive.ql.exec.UDF;public class MyUDF extends UDF{ public int evaluate(int data){ return data + 5; }}...

2020-05-12 15:55:00 91

原创 牛客网sql题详解1-10

题目描述1.查找最晚入职员工的所有信息create database practice;use practice;CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL, `first_name` varchar(14) NOT NULL, `last_name` varch...

2020-05-12 00:34:10 174

原创 Hive排名函数

1.函数说明RANK() 排序相同时会重复,总数不会变DENSE_RANK() 排序相同时会重复,总数会减少ROW_NUMBER() 会根据顺序计算2.举例如下:表score内容如下图所示:按照三种方式进行排名:结果如下:...

2020-05-06 17:15:38 722

原创 Hive窗口函数

business表如下图所示:(1)查询在2017年4月份购买过的顾客及总人数1)不用窗口函数结果为1和4,并不是正确的答案。因为只有jack,mart两个人,所以正确的答案应该是2和2。.2)使用窗口函数(注:over()函数要加在聚合函数的后面)3)若不分组使用窗口函数结果如下:(2)查询顾客的购买明细及购买总额(3)查询顾客的购买明细及月购买总额(4)上述...

2020-05-06 16:50:09 257

原创 hive的order by, sort by, distribute by, cluster by的区别

order by 全局排序sort by 区内排序distributed by 用于分区 默认Hashcluster by 如果sort by和distribute by中所用的列相同,可以缩写为cluster by(注:clustered by为桶表)...

2020-05-06 16:08:35 313

原创 sql语句关键字的顺序

写sql语句关键字顺序:select——from——join on——where——group by——order by——having——limitsql语句执行顺序:from——join on——where——group by——select | having——order by——limit...

2020-05-06 15:53:45 886

原创 算法学习笔记6——减治法求解假币问题

描述:在n枚外观相同的硬币中,有一枚是假币,并且已知假币与真币的重量不同,但不知道假币与真币相比较轻还是较重。可以通过一架天平来任意比较两组硬币,设计一个高效的减治算法来检测出这枚假币。int nCoin(int coin[], int n, int p, int q);coin[]数组存储各枚硬币的重量。算法分析:将硬币分成三组,前两组有[n/3]枚硬币A和B,其余的硬币作为第三组C,...

2020-04-28 10:04:43 1957 1

原创 Hive函数——常用函数case&if

emp_sex表内容如下:需求:求出不同部门男女各多少人。查询语句1)查询语句2)

2020-04-22 16:49:02 207

原创 Hive函数——常用函数时间类

1.date_format:格式化时间2.date_add:时间和天数相加3.date_sub:时间和天数相减4.datediff:两个时间相减5.若时间格式为yyyy/MM/dd格式,则需转换为yyyy-MM-dd...

2020-04-22 16:11:50 204

原创 sql语句order by与group by

一、order by与group by的用法1.orderby的用法1)单一列排序例1:默认排序:select * from info例2:按照no倒序排序select * from info order by no desc;2)多个列属性排序选择多个列属性进行排序,然后排序的顺序是,从左到右,依次排序。如果前面列属性有些是一样的话,再按后面的列属性排序。例:selec...

2020-04-21 20:07:23 20683 2

原创 算法学习笔记5——分治法求解最近对问题并测算算法运行时间

完整代码:#include<iostream>#include<time.h> #include<stdlib.h>#include<math.h>#include <stdio.h>#include <windows.h>#include<iomanip>using namespace std;...

2020-04-21 11:53:52 283 1

原创 算法学习笔记4——蛮力法求解最近对问题并测算算法运行时间

完整代码:#include<iostream>#include<time.h> #include<stdlib.h>#include<math.h>#include<stdio.h>#include<windows.h>#include<iomanip>using namespace std;st...

2020-04-21 11:50:07 370

原创 SQL中inner join,outer join,cross join及left join,right join的区别

1.A LEFT [OUTER] JOIN B 产生表A的完全集,而B表中匹配的则有值,没有匹配的则以null值取代。2.A RIGHT [OUTER] JOIN B 产生表B的完全集,而A表中匹配的则有值,没有匹配的则以null值取代。3.A CROSS JOIN B 把表A和表B的数据进行一个NM的组合,即笛卡尔积。A表4行,B表5行,结果:45=20行,这种很少用。举例:studen...

2020-04-18 10:14:11 249

原创 Zookeeper Shell命令操作

1.查看当前znode中所包含的内容2.查看当前节点的详细数据3.创建节点发现节点并不存在注:创建节点的同时必须写相应的数据。4.获取节点的值5.创建短暂节点6.创建带序号的节点1)先创建一个根节点2)创建带序号的节点7.修改节点数据值8.节点的值的变化监听在虚拟机主机改变此节点的值注意到xshell上变化但再次改变则xshell上没有变化。即...

2020-04-14 12:39:02 1050 1

原创 算法学习笔记3——KMP算法并测算算法运行时间

#include<iostream>#include<string.h>#include<string.h>#include <stdio.h>#include <windows.h>#include<iomanip> using namespace std; void get_next(char T[],int...

2020-04-14 00:16:24 298

原创 算法学习笔记2——BF算法并测算算法运行时间

方法一#include<iostream>#include<string.h>#include <stdio.h>#include <windows.h>#include<iomanip> using namespace std;int main(){ //a[20]主串 b[20]子串 char a[20],b[20...

2020-04-14 00:11:27 264

原创 MapReduce用户行为数据分析之最多购买组合

需求分析:通过对购买组合的分析可以对商品进行捆绑销售或者特殊促销的手段来提高销量,利用Map统计所有用户的购买商品情况,在Reduce阶段将所有商品组合,最后在cleanup阶段统计各种组合商品的购买次数并输出Top5。测试数据如下:结果:可视化:如下图4所示部分代码分析:reduce阶段:map阶段use_ID和time为key,ite_ID为value。reduce阶段购...

2020-04-08 21:05:31 771

原创 MapReduce用户行为数据之购买率最高的商品

需求分析:商品的购买率可以反映用户群体对商品的忠诚度和对商品描述的接受程度,利用Map统计出所有的商品,在Reduce中统计出每种商品的点击数和购买数,通过公式购买率=购买数/(点击数+购买数)来进行记录,在cleanup阶段统计出Top3。测试数据:结果:可视化如下图3:部分代码分析:clean up阶段按升序输出Top5,则return的数据应为int型且大于0。为实现ret...

2020-04-08 20:16:50 550

原创 MapReduce用户行为数据分析之最畅销的商品

需求分析:商品的销售量可以反映一个商品的畅销程度,利用Map统计出所有被购买过的商品,利用Reduce统计出所有商品的购买次数,最后在cleanup阶段统计出Top5,输出到结果文件。数据来源:根据天池上下载的淘宝2015年7月1日至2015年11月30日之间的用户行为数据分析最畅销的商品。部分数据如下结果:可视化:如下图2所示完整代码map阶段:package qunt...

2020-04-08 19:54:10 1255

原创 MapReduce用户行为数据分析之最受欢迎商品

需求分析:商品的点击量可以反映一个商品的受欢迎程度,最受欢迎的商品的定义是在所有商品中点击量最多的商品Top5,利用Map统计出所有被点击过的商品,利用Reduce统计出所有商品的点击次数,最后在cleanup阶段统计出Top5,输出到结果文件。数据来源:根据天池上下载的淘宝2015年7月1日至2015年11月30日之间的用户行为数据分析点击率最高的商品。部分数据如下结果:可视化...

2020-04-08 19:43:21 2096 5

空空如也

空空如也

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

TA关注的人

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