自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

kw-home

人生若只如初见

  • 博客(128)
  • 资源 (9)
  • 收藏
  • 关注

原创 Hadoop2.7.3搭建单机、伪分布环境

1.下载jdk并安装去官网下就可以了,下完之后把文件移到/opt/Java下[plain] view plain copyguo@guo:~/下载$ mv ./hadoop-2.7.2-src.tar.gz /opt/Hadoop/  mv: 无法创建普通文件"/opt/Hadoop/hadoop-2.7.2.tar.gz": 权限不够  guo@guo:~/下载$ su root #你用sudo...

2017-12-05 10:45:16 1360

转载 Hive基本架构和原理

Hive基本架构和原理

2023-02-23 10:59:16 1814

原创 机器学习常用十大算法

机器学习常用10种算法

2022-06-17 16:31:01 10411

原创 group by、grouping sets、rollup和cube方法详解

在平时的工作中,经常有按照不同维度筛选和统计数据的需求。拿视频会员订单数据来说吧,运营人员要查看深圳市的成功下单数或则深圳市某一种产品的成功下单数或者某一种产品的所有成功下单数时,每天的订单数又很大,现查的话按照不同的维度去查询又很慢。此时本篇文章或许会帮助到你。group by:主要用来对查询的结果进行分组,相同组合的分组条件在结果集中只显示一行记录。可以添加聚合函数。 grouping sets:对分组集中指定的组表达式的每个子集执行group by,group by A,B grouping s

2020-11-18 11:32:07 4416

原创 ODPS-SQL多维度交叉的优化方法探究

一、背景odps是阿里集团的大数据计算平台,odps-sql语法类似于hive。最近做了一个***的需求,需求中用到了大量的维度交叉,等到需求实现后却发现新的问题——cube的交叉维度太多了(最初有17个),而且指标的计算逻辑比较复杂,造成数据加工太慢了,举例1天的增量表大概8个小时,需求中还有自然月和30天时间粒度的,根本没法实现,因此投入大量时间做了优化,最终结果:11个维度,1天表的加工时间是30分钟,7日表1个小时,30天表3个小时。二、两种SQL方式实现聚合查询有两种方式,一种是使

2020-11-18 11:20:11 1332

原创 spring+mybatis useGeneratedKeys返回主键

在数据库操作中,当我们插入数据时往往需要当前插入数据的主键id,初学时比较笨,在插入之后再做一遍查询来获取id,这样会出现很多的问题。其实java提供了useGeneratedKeys方法,可以直接返回id,直接上代码:正常插入语句是这样的<insert id="addTeacher" parameterType="com.kk.demo.bean.Teacher">...

2019-11-26 15:38:10 2471

原创 Java多线程——FutureTask+ExecutorService

1.Java并发编程:Callable、Future和FutureTask创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到效果,这样使用起来就比较麻烦。而自从Java 1.5开始,就提供了Callable和Futur...

2019-10-30 18:41:32 1012

原创 Spring——IOC(控制反转)、DI(依赖注入)

一、概述1.1、IoC是什么  Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。如何理解好Ioc呢?理解好Ioc的关键是要明确“谁控制谁,控制什么,为何是反转(有反转就应该有正转了),哪些方面反转了”,那我们来深入分析一下:  ●谁控制谁,控...

2019-09-27 18:03:04 235

原创 SpringBoot + Cache缓存

本文介绍Spring boot 如何使用redis做缓存,如何对redis缓存进行定制化配置(如key的有效期)以及spring boot 如何初始化redis做缓存。使用具体的代码介绍了@Cacheable,@CacheEvict,@CachePut,@CacheConfig等注解及其属性的用法。1.部署Cache1.1配置redis依赖和数据源配置pom.xml<...

2019-08-29 19:10:08 213

原创 SpringBoot常用注解

一、注解(annotations)列表@SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让springBoot扫描到Configuration类并把它加入到程序上下文。@Controller用于标注控制层组件,@Service用于标注业务层组...

2019-07-30 19:07:18 317 1

原创 mysql实现窗口函数功能

有时候我们想要得到每个分组的前几条记录,这个时候oracle中row_number函数使用非常方便,可惜MYSQL从8.0版本开始才支持窗口函数。本文介绍一些通过sql实现窗口函数效果的方法。1.利用用户变量实现数据自增表flow_task有phaseno(序列号),objectno(编号)等几个字段,我们想实现根据编号字段分组,然后组内根据序列号排序功能select @rownum...

2019-04-22 14:19:41 5179 1

原创 Hbase批量查询-scan介绍

1.scan原理HBase的查询实现只提供两种方式:1、按指定RowKey 获取唯一一条记录,get方法(org.apache.hadoop.hbase.client.Get)Get 的方法处理分两种 : 设置了ClosestRowBefore 和没有设置的rowlock .主要是用来保证行的事务性,即每个get 是以一个row 来标记的.一个row中可以有很多family 和colu...

2019-04-16 14:32:06 39445 6

原创 手机号码归属地查询接口

1、淘宝网((精确到省份)API地址: http://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=手机号码2、百度(精确到地市)API地址:http://mobsec-dianhua.baidu.com/dianhua_api/open/location?tel=手机号码import jsonimport urlli...

2019-03-26 10:13:54 1735

原创 Phoenix简介

HBase 提供很方便的shell脚本,可以对数据表进行 CURD 操作,但是毕竟是有一定的学习成本的,基本上对于开发来讲,sql 语句都是看家本领,那么,有没有一种方法可以把 sql 语句转换成 hbase的原生API呢? 这样就可以通过普通平常的 sql 来对hbase 进行数据的管理,使用成本大大降低。Apache Phoenix 组件就完成了这种需求,官方注解为 “Phoenix – ...

2019-03-12 15:57:49 958

原创 Python执行系统命令的方法

1.os.system使用os.system(cmd)即可在python中使用linux命令os.system(cmd)的返回值。如果执行成功,那么会返回0,表示命令执行成功。否则,则是执行错误。使用os.system返回值是脚本的退出状态码,该方法在调用完shell脚本后,返回一个16位的二进制数,低位为杀死所调用脚本的信号号码,高位为脚本的退出状态码(查看文章尾部扩展资料[1]),...

2019-03-12 15:51:00 16928

原创 Hadoop HA高可用集群搭建及常见问题处理

最近研究了下公司的hadoop集群并模仿搭建了一个在本地测试使用的hadoop集群。本文介绍下详细的搭建过程以及各种常见问题的处理解决。 1 ,  前期准备1.1  ,  准备Linux环境,配置虚拟机网络环境,修改虚拟机IP地址(最好使用第一种配置,简单且不容易出错)        注意,修改之前建议使用 root 管理员权限登陆,这样会避免特别多问题,等集群搭建好之后在用普通用户登...

2019-02-13 18:58:57 1171

原创 Python的datetime模块详解

datetime模块用于是date和time模块的合集,datetime有两个常量,MAXYEAR和MINYEAR,分别是9999和1.datetime模块定义了5个类,分别是1.datetime.date:表示日期的类2.datetime.datetime:表示日期时间的类3.datetime.time:表示时间的类4.datetime.timedelta:表示时间间隔,即两个时间点...

2019-02-13 12:18:24 1654 1

原创 Linux内存信息详解

1. toptop命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。  可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:  $ top   第一部分 系统信息栏 :  第一行(top):    “11:15:5...

2019-01-16 11:18:48 3083

原创 python 获取环境变量

用Python Shell设置或获取环境变量的方法:一、设置系统环境变量1、os.environ['环境变量名称']='环境变量值' #其中key和value均为string类型2、os.putenv('环境变量名称', '环境变量值')二、获取系统环境变量1、os.environ['环境变量名称']2、os.getenv('环境变量名称')环境变量vi /etc/pr...

2019-01-15 16:07:22 17316

原创 Hbase存储详解

Hbase存储详解一、概述  Hbase是建立的hdfs之上,提供高可靠性、高性能、列存储、可伸缩、实时读写的数据库系统。  它介于nosql和RDBMS之间,仅能通过主键(row key)和主键的range来检索数据,仅支持单行事务(可通过hive支持来实现多表join等复杂操作)。主要用来存储非结构化和半结构化的松散数据。  与hadoop一样,Hbase目标主要依靠横向扩展,...

2018-12-22 16:47:53 2250

原创 python爬取淘宝商品信息

本文实现了用python爬取淘宝信息的功能,主要涉及访问网页、正则匹配、json格式化等技术。# -*- coding: utf-8 -*import requests# import bs4import reimport jsondef open(keywords, page): headers = { "User-Agent": "Mozilla/...

2018-12-22 14:21:46 1445

转载 Apache 流框架 Flink,Spark Streaming,Storm对比分析

1.Flink架构及特性分析Flink是个相当早的项目,开始于2008年,但只在最近才得到注意。Flink是原生的流处理系统,提供high level的API。Flink也提供 API来像Spark一样进行批处理,但两者处理的基础是完全不同的。Flink把批处理当作流处理中的一种特殊情况。在Flink中,所有 的数据都看作流,是一种很好的抽象,因为这更接近于现实世界。 1.1 基本架构...

2018-12-06 12:13:02 511

原创 Python Excel 导出 + 发送邮件

一、依赖模块1.excel导出依赖xlwt或者xlsxwriterxlwt只能支持65535行,较大数据量可以选用xlsxwriter;python 字符默认是ascii编码,导出时转化为udf-8格式2.发送邮件依赖smtplib发送附件时,必须用starttls(),保证安全性 二、代码# -*- coding: UTF-8 -*-import sysi...

2018-12-03 20:44:31 2790

原创 python实现Phoenix批量导入数据

官网文档:Phoenix provides two methods for bulk loading data into Phoenix tables:· Single-threaded client loading tool for CSV formatted data via the psql command· MapReduce-based bulk load tool for C...

2018-11-14 17:18:13 2398

原创 Hive几种数据导入方式

一、从本地文件系统中导入数据到Hive表先在Hive里面创建好表,如下: hive&gt; create table wyp &gt; (id int, name string, &gt; age int, tel string) &gt; ROW FORMAT DELIMITED &gt; FIELDS TERMINATED BY '\t' ...

2018-10-23 17:43:45 611

原创 shell获取日期

1.通过shell获取当前8位日期,并赋给变量,并且使用变量作为文件名,建立文件夹ls_date=`date +%Y%m%d`mkdir ${ls_date}获取日期注意事项:date +%Y%m%d 这个字符串是被英文状态下的ESC下面那个键。获取变量注意事项:必须有$与{变量名}组成。2.获取时分秒:date "+%Y-%m-%d %H:%M:%S"3.获取昨天时期...

2018-04-10 11:07:20 4552 2

转载 IntelliJ IDEA 2017激活(Mac版本)

1. 下载JetbrainsCrack-2.6.2.jar链接:http://pan.baidu.com/s/1eRJkOcq 密码:a4ji12这个是我使用的IntelliJ IDEA 2017版本下载地址链接:http://pan.baidu.com/s/1kVHoZ5t 密码:weu3122.找到IntelliJ IDEA,右键显示包内容,将JetbrainsCrack-2.6.2....

2018-03-27 14:30:24 1561

转载 spark的kafka的低阶API createDirectStream

大家都知道在spark1.3版本后,kafkautil里面提供了两个创建dstream的方法,一个是老版本中有的createStream方法,还有一个是后面新加的createDirectStream方法。关于这两个方法的优缺点,官方已经说的很详细(http://spark.apache.org/docs/latest/streaming-kafka-integration.html),总之就是cr...

2018-03-08 14:21:21 788

转载 Spark 核心 RDD 剖析

本文将通过描述 Spark RDD ——弹性分布式数据集(RDD,Resilient Distributed Datasets)的五大核心要素来描述 RDD,若希望更全面了解 RDD 的知识,请移步 RDD 论文:RDD:基于内存的集群计算容错抽象RDD是Spark的最基本抽象,是对分布式内存的抽象使用,实现了以操作本地集合的方式来操作分布式数据集的抽象实现。RDD是Spark最核心的东西,它表示...

2018-03-06 09:52:37 684

原创 Java实现“推荐注册,获得奖励”算法

应用场景:推荐新用户注册A会员推荐B注册,即赠送A会员100积分,B会员推荐C会员注册,赠送A会员50积分、B会员各100积分,依次类推,只要A发展的会员继续发展下面的会员,A都可以获增相应的积分。 package com.enn.test;import java.util.ArrayList;import java.util.HashMap;import java.util.List;...

2018-03-05 18:29:57 3188

原创 Hive和关系型数据库的区别

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射成一张表,并提供类sql语句的查询功能;Hive使用Hql作为查询接口,使用HDFS存储,使用mapreduce计算;Hive是非关系型数据库即NoSQL(Not Only SQL)。关系数据库,是建立在关系模型基础上的数据库,一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织。1. 查询语言。由于 SQL 被广泛的...

2018-03-05 11:10:34 5546

转载 解决Spark应用日志级别设置

最近在研究Spark的相关知识,本地搭建了一个开发环境Windows7+Eclipse+JDK1.7。一. 日志效率原因开发时,控制台输出一大堆日志信息,严重影响查看日志效率。从控制台输出日志我们可以看出,应用程序是默认加载Spark-core包下面的log4j-defaults.properties日志文件。查看log4j-defaults.properties文件由上图可知,Spark-cor...

2018-03-01 14:07:16 6724

原创 redis安装配置

REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。1、先到Redis官网(redis.io)下载redis安装包 2、解压并进入其目录  3、编译源程序。由于redis是C语言编写,因此需要编译。如果执行make报错,则Linux系统先安装GCC。  make       修改安装目录  make ins...

2018-02-28 16:09:45 470

原创 kafka+zookeeper安装配置

1、安装zookeeper步骤1:下载并解压zookeeper安装包tar -zxvf zookeeper-3.4.11.tar.gz 步骤2:配置环境变量 export ZOOK=/opt/hadoop/zookeeper-3.4.11 步骤3:配置文件 zoo.cfgcd conf/复制配置文件:cp zoo_sample.cfg zoo.cfg修改配置文件:#数据目录dataDir...

2018-02-26 14:55:30 12879

原创 SSM框架(三)——Mybatis多表关联查询

本文介绍ssm框架中mybatis实现多表关联查询的问题。主要修改mapper.xml和Entity定义两个地方,mapper.xml中需要定义返回格式,而Entity里定义关联表类的相互引用等关系。一、一对一关联 1.1、提出需求  根据班级id查询班级信息(带老师的信息)1.2、创建表和数据  创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,

2018-01-15 16:03:48 17577 5

原创 SSM框架(二)——Mybatis传多个参数

本文介绍三种方法:1)用下标代替DAO层的函数方法 Public User selectUser(String name,String area);对应的Mapper.xml   select * from user_user_t where user_name = #{0} and user_area=#{1}其中,#{0}代表接收的是dao层中的

2018-01-15 15:54:21 2408

原创 Eclipse部署Tomcat项目

本文实现Eclipse部署Tomcat项目。项目组给力git框架,由于第一次操作,踩了很多坑,以下做一些记录。1.下载git项目。1)常规方法:(1)File->import->Git->project from git选择“Colne URI”,输入git地址,之后next选择正确分支(拉代码过程时选择preproduction分支),然后ne

2018-01-11 11:31:40 5968

原创 SpringBoot实战(二):数据库Mysql

一,建立spring-boot-sample-mysql工程1、http://start.spring.io/     A、Artifact中输入spring-boot-sample-mysql     B、勾选Web下的web     C、勾选SQL下的JPA MYSQL2、Eclips中导入工程spring-boot-sample-mysql     A、解压快

2018-01-09 18:24:01 976

原创 SpringBoot实战(一)Hello World

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。1.首先介绍极简的helloworld工程1).打开Ecl

2018-01-09 18:13:08 783

转载 Spark源码解读之SparkContext初始化

SparkContext初始化是Driver应用程序提交执行的前提,这里以local模式来了解SparkContext的初始化过程。 本文以 val conf = new SparkConf().setAppName(“mytest”).setMaster(“local[2]”) val sc = new SparkContext(conf) 为例,打开debug模式,然后进行分析。 一

2018-01-04 19:01:00 1485

proxifier for Mac(含注册码、使用图解)

Proxifier是一款功能非常强大的socks5客户端,可以让不支持通过代理服务器工作的网络程序能通过HTTPS或SOCKS代理或代理链。 本资源是proxifier for Mac(含注册码、使用图解)

2019-01-15

Oracle11g-64bit客户端免绿色安装版

Oracle11g-64bit客户端绿色免安装版,解压之后配置plsql的oci路径,直接使用

2017-12-18

Linux下安装Oracle11g服务器(详细图解)

Linux下安装Oracle11g服务器(详细图解)

2016-07-04

oracle oracle 11g体系结构图

oracle 11g体系结构图

2016-07-04

Oracle_OCP_11G_题库-中文版

OCP:Oracle数据库认证专家(Oracle Certified Professional)是Oracle公司的Oracle数据库DBA(Database Administrator 数据库管理员)认证课程,通过这个考试, 说明此人可以管理大型数据库, 或者能够开发可以部署到整个企业的强大应用。要成为OCP需要先获得OCA (Oracle数据库认证助理Oracle Certified Associate)的认证,目前主要是Oracle 11g版本认证。

2016-02-26

程序员面试宝典(第4版)

第5章 程序设计基本概念 笔试基本题型及解答

2013-11-01

Visual_C++MFC入门教程

目录 +-- 第一章 VC入门 |------ 1.1 如何学好VC |------ 1.2 理解Windows消息机制 |------ 1.3 利用Visual C++/MFC开发Windows程序的优势 |------ 1.4 利用MFC进行开发的通用方法介绍 |------ 1.5 MFC中常用类,宏,函数介绍 +-- 第二章 图形输出 |------ 2.1 和GUI有关的各种对象 |------ 2.2 在窗口中输出文字 |------ 2.3 使用点,刷子,笔进行绘图 |------ 2.4 在窗口中绘制设备相关位图,图标,设备无关位图 |------ 2.5 使用各种映射方式 |------ 2.6 多边形和剪贴区域 +-- 第三章 文档视结构 |------ 3.1 文档 视图 框架窗口间的关系和消息传送规律 |------ 3.2 接收用户输入 |------ 3.3 使用菜单 |------ 3.4 文档,视,框架之间相互作用 |------ 3.5 利用序列化进行文件读写 |------ 3.6 MFC中所提供的各种视类介绍 +-- 第四章 窗口控件 |------ 4.1 Button |------ 4.2 Static Box |------ 4.3 Edit Box |------ 4.4 Scroll Bar |------ 4.5 List Box/Check List Box |------ 4.6 Combo Box/Combo Box Ex |------ 4.7 Tree Ctrl |------ 4.8 List Ctrl |------ 4.9 Tab Ctrl |------ 4.A Tool Bar |------ 4.B Status Bar |------ 4.C Dialog Bar |------ 4.D 利用AppWizard创建并使用ToolBar StatusBar Dialog Bar |------ 4.E General Window |------ 4.F 关于WM_NOTIFY的使用方法 +-- 第五章 对话框 |------ 5.1 使用资源编辑器编辑对话框 |------ 5.2 创建有模式对话框 |------ 5.3 创建无模式对话框 |------ 5.4 在对话框中进行消息映射 |------ 5.5 在对话框中进行数据交换和数据检查 2 |------ 5.6 使用属性对话框 |------ 5.7 使用通用对话框 |------ 5.8 建立以对话框为基础的应用 |------ 5.9 使用对话框作为子窗口 +-- 第六章 网络通信开发 |------ 6.1 WinSock介绍 |------ 6.2 利用WinSock进行无连接的通信 +------ 6.3 利用WinSock建立有连接的通信

2013-11-01

Matlab语言、数字图象基本操作

MATLAB软件具有很强的开放性和适用性。在保持内核不变的情况下,MATLAB可以针对不同的应用学科推出相应的工具箱(toolbox)。目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、概率统计、信号处理、图像处理和物理仿真等,都在工具箱(Toolbox)家族中有自己的一席之地。在实验中我们主要用到MATLAB提供图象处理工具箱(Image Processing Toolbox)。

2013-10-13

车流检测与跟踪

对车流检测与跟踪技术进行概述,研究其实现方法

2011-12-22

空空如也

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

TA关注的人

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