- 博客(139)
- 资源 (5)
- 收藏
- 关注
翻译 Spark移动平均:时间序列数据平均值
一、内存排序import org.apache.spark.SparkConfimport org.apache.spark.SparkContextobject MovingAverageInMemory { def main(args: Array[String]): Unit = { val sparkConf = new SparkConf().setAppN
2017-11-15 15:42:35
2158
翻译 Hadoop/MapReduce反转排序:控制规约器Reducer值的顺序
例子:计算一个给定文档集中单词的相对频度。目标是建立一个N*N矩阵M,其中N为所有给定文档的单词量,每个单元Mij包含一个特定上下文单词Wi与Wj共同出现的次数。为简单起见,将这个上下文定义为Wi的邻域。例如:给定以下单词:W1,W2,W3,W4,W5,W6如果定义一个单词的邻域为这个单词的前两个单词和后两个单词,那么这6个单词的邻域如下:单词 领域+-2W1 W2,W3
2017-11-08 21:38:35
1479
原创 Spark的左外连接解决方案
Hadoop/MapReduce的左外连接解决方案1、Spark的左外连接解决方案之不使用letfOutJoin()import org.apache.spark.{SparkConf, SparkContext}object LeftOutJoinTest { def main(args: Array[String]): Unit = { //连接Spar
2017-11-08 20:05:20
3449
翻译 MapReduce/Hadoop的左外连接解决方案
要解决的问题:假设有两类数据:用户和交易。用户数据包括用户的地址信息,交易数据包括用户身份信息,但是不包括应乎地址的直接信息。给定users和transactions如下:users(user_id,location_id)transactions(transaction_id,product_id,user_id,quantity,amount)我们的目标是得出每个商品对应的唯一
2017-11-08 18:28:57
1247
原创 Spark的TopN解决方案(键唯一的情况、键不唯一的情况)
TopN问题:上星期访问次数最多的10个URL是哪些?所有猫中体重最大的10只猫是哪些?本文使用 MapReduce/Hadoop的TopN解决方案,假设所有输入键都是唯一的。也就是说,对于一个给定的输入集合{},所有K都是唯一的。例如对于下面的猫,cat1不会再出现第二次输入:top10data.txtcat1,12cat2,13cat3,
2017-11-02 21:24:26
1133
原创 MapReduce/Hadoop的TopN解决方案之键不唯一的情况
一、MapReduce/Hadoop的TopN解决方案之键唯一的情况(点击打开链接)二、针对键不唯一的情况,即文件中可能出现多次关键字解决办法:先讲不唯一键转换为唯一键,即使用MapReduce合并键相同的项,再使用(一)所述的唯一键TopN方案即package topN_hadoop1;import java.io.IOException;
2017-11-02 16:45:09
849
原创 MapReduce/Hadoop的TopN解决方案之键唯一的情况
TopN问题:上星期访问次数最多的10个URL是哪些?所有猫中体重最大的10只猫是哪些?本文使用 MapReduce/Hadoop的TopN解决方案,假设所有输入键都是唯一的。也就是说,对于一个给定的输入集合{},所有K都是唯一的。输入:cat.txt12,cat1,cat113,cat2,cat214,cat3,cat315,cat4,cat410,cat5,
2017-11-02 15:03:24
1265
4
原创 Spark的二次排序解决方案
一、MapReduce/Hadoop的二次排序解决方案(点击打开)二、Spark的二次排序解决方案方案1:同(一)的方案1,将一个给定键的所有值读取并缓存到一个List数组(Array)数据结构中,然后对这些值进行排序。如果内存不够放,则无法实现方案2:同(一)的方案2,“会为自然键增加部分或整个值来创建一个组合键以实现排序目标”三、代码实现(一):使用Spark
2017-11-02 10:03:53
1402
原创 MapReduce/Hadoop的二次排序解决方案
二、为什么要进行二次排序?使用hadoop的map reduce将原始数据按照以年份-月份为key,温度为value进行操作,hadoop默认会将key进行排序,即按照年份-月份进行排序可以发现其key为有序的,而每个key中的value,也就是我们想要排序的温度值却无能为力。因此我们需要进行二次排序,即在根据key值排序的基础上再对value值进行排序。三、如何进行二次排序?方案1:对于每一个key的所有value值,在(二)代码的reduce函数中先将其读取和缓存到一个集合中,然后再对这个集
2017-11-01 21:45:01
1565
1
原创 Hadoop 2.6.5 Windows平台下的bug NativeIO$Windows.access0(Ljava/lang/String;I)Z
HTTP Status 500 - Handler processing failed; nested exception is java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Ztype Exception reportme
2017-10-22 22:10:01
1582
原创 Hadoop 2.6.5 Windows环境下安装
打包好的已配置好的hadoop 2.6.5 其中包括重要的几个dll文件是hadoop不自带的。链接:http://pan.baidu.com/s/1i4YfUID 密码:1jflwindows下安装并启动hadoop2.6.5 64位windows安装hadoop没必要倒腾Cygwin,直接解压官网下载hadoop安装包到本地->最小化配置4个基本文件->执行1条启动命
2017-10-22 17:15:02
7309
1
原创 SpringBoot 调用Elasticsearch
1、项目配置<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/mav
2017-10-17 09:41:52
2759
原创 SpringBoot 使用JUnit 单元测试
在IDEA中打开要测试的类,使用ctrl + shift + T 新建一个测试类,选择要测试的方法package cn.edu.shu.ces_chenjie.service;import cn.edu.shu.ces_chenjie.pojo.Person;import org.junit.Assert;import org.junit.Test;import org.ju
2017-10-17 09:10:49
1087
原创 SpringBoot 统一异常处理
目的:无论请求是否成功,均返回格式一样的数据,方便前端等操作。如:{"code":0,"msg":"成功","data":{"id":5,"age":19,"name":"xiongsiyu"}}{"code":1,"msg":"未满18岁禁止访问","data":null}1、新建结果类package cn.edu.shu.ces_chenjie.pojo
2017-10-16 22:07:43
412
原创 SpringBoot 使用AOP处理请求
面向切面编程AOP是一种编程范式,与语言无关,是一种程序设计思想使用AOP统一处理请求日志1、增加maven配置dependency> groupId>org.springframework.bootgroupId> artifactId>spring-boot-starter-aopartifactId>dependency>2、新增类
2017-10-16 21:17:43
449
原创 SpringBoot 表单验证
拦截所有年龄1、实体层定义限制package cn.edu.shu.ces_chenjie.pojo;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.validation.constraint
2017-10-16 21:00:22
282
原创 SpringBoot 数据库操作、事务
Spring-Data_Jpa1、在pom.xml中加入: org.springframework.boot spring-boot-starter-data-jpa mysql mysql-connector-java 引入spring-data-jpa和mysql驱动2、修改配置文件
2017-10-16 20:49:25
718
1
原创 SpringBoot Controller
@Controller处理HTTP请求@RestController = @Controller + @ResponseBody 处理Rest请求@RequestMapping 配置URL映射1、获取请求参数的两种方式@RestControllerpublic class HelloController { @Value("${cupSize
2017-10-16 20:38:49
254
原创 SpringBoot 项目属性配置管理
1、使用yml文件代替propertities文件:简便2、新建一个application.yml代表全局配置,application_dev.yml代表开发环境配置,application_prod_yml代表产品发布配置application.ymlspring: profiles: active: dev datasource: dri
2017-10-16 20:23:54
870
原创 Maven 安装、配置、更换镜像
一、下载并解压Maven,在其目录下新建一个repisitory文件夹用于存放下载的jar包2、配置环境变量新建一个环境变量:M2_HOMED:\apache-maven-3.5.0在PATH后追加:%M2_HOME%\bin;命令行输入mvn -v3、到maven目录下的conf目录修改,settings.xm<setting
2017-10-16 19:56:42
975
原创 SpringBoot HelloWorld
一、SpringBoot介绍SpringBoot是SpringMVC的升级版化繁为简、简化配置备受关注,是下一代框架微服务的入门级微框架,SpringBoot是SpringCloud的基础二、环境准备JDK 1.8Maven 最新版开发环境 IDEA3、新建一个HelloController类p
2017-10-16 19:46:27
227
原创 Elasticsearch 学习笔记 高级查询
以下查询POST 127.0.0.1:9200/book/_search1、多条件查询{ "query":{ "multi_match":{ "query":"chenjie", "fields":["auther","title"] } }}结果:{ "took": 11, "timed_out": false, "_
2017-10-16 12:36:19
457
原创 Elasticsearch 学习笔记 索引创建、插入、查询、修改、删除
1、索引创建方式一、在Elasticsearch - head的索引界面中新建方式二、使用POSTMAN工具发送PUT请求创建{ "settings":{ "number_of_shards": 3, "number_of_replicas": 1 }, "mappings":{ "man":{ "properties":{ "word_
2017-10-16 10:24:57
32599
原创 Elasticsearch 学习笔记 Elasticsearch及Elasticsearch head安装配置
一、安装与配置1、到官网下载Elasticsearch,https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.3.zip2、解压成三分份3、下载Elasticsearch的管理工具 https://codeload.github.com/mobz/elasticsearch-head/zi
2017-10-16 10:00:17
3553
原创 Spark RDD API解析及实战
import org.apache.spark.{HashPartitioner, SparkConf, SparkContext}import scala.collection.mutable.ArrayBufferobject RDDTest { def main(args: Array[String]): Unit = { val sc = new SparkContex
2017-10-12 22:00:04
354
原创 Hadoop 2.6 使用MapReduce实现基于内容的推荐系统
基础:基于物品的推荐系统 基于物品的推荐系统 基于物品的推荐系统(点击打开)一、基于内容的推荐系统 1、余弦相似度(见基础)2、基于用户的推荐系统:思想:给用户推荐和他兴趣相似的其他用户喜欢的商品步骤:二、输入将ItemProfile.txt、ItemUser.txt文件上传到Hadoop HDFS /input目录下hadoop fs -p
2017-10-12 09:44:36
1040
原创 Hadoop 2.6 使用MapReduce实现基于用户的推荐系统
基础:基于物品的推荐系统 基于物品的推荐系统 基于物品的推荐系统(点击打开)一、基于用户的推荐系统 1、余弦相似度(见基础)2、基于用户的推荐系统:思想:给用户推荐和他兴趣相似的其他用户喜欢的商品步骤:二、输入将useraction2.txt文件上传到Hadoop HDFS /input目录下hadoop fs -put
2017-10-12 08:34:59
2838
1
原创 Hadoop 2.6 使用MapReduce实现基于物品的推荐系统
一、基于物品的推荐系统1、余弦相似度2、基于物品的协同过滤推荐算法思想:给用户推荐那些和他们之前喜欢的商品相似的商品步骤:二、输入将useraction.txt文件上传到Hadoop HDFS /input目录下hadoop fs -put useraction.txt /input(如果没有该目录则创建之)hadoop fs -mkdi
2017-10-11 13:27:40
8125
18
原创 Hadoop 2.6 使用Map Reduce实现矩阵相乘2 矩阵相乘
一、首先将右侧矩阵进行转置(点击打开)二、然后进行相乘运算1、将右侧转置矩阵缓存到Hadoop中2、对左侧矩阵进行map操作将左侧矩阵的每一行line,进行拆分,拆分成列(分量)数组,然后与缓存中的每一行进行相乘运算,然后将结果和对应的位置写回3、对结果进行拼接,形成结果矩阵的物理存储package hadoop;import java.io.BufferedR
2017-10-10 13:28:34
1243
原创 Hadoop 2.6 使用Map Reduce实现矩阵相乘1 矩阵转置
矩阵相乘一、理论基础二、如何用程序实现?A[M][N]*B[N][P]import java.util.Arrays;public class Matrix { public static void main(String[] args) { int[][] matrix1 = { {1,2,-2,0}, {3,3,4,-3}, {-
2017-10-10 10:47:43
1244
原创 Hive学习笔记 6 Hive的JDBC连接
1、配置Hadoop的配置文件/hadoop-2.6.5/etc/hadoop/ hadoop.proxyuser.root.hosts 127.0.0.1,localhost,pc1 hadoop.proxyuser.root.groups *
2017-10-09 13:28:08
652
原创 Hive学习笔记 5 Hive的数据查询、函数
nvl(linename,0) --将某一列为空时转为0判断是否为null 不能用=null ,而要用 is 或者is not nulHive的函数:内置函数、自定义函数1、数学函数:round四舍五入:select round(12,345,2) 小数点后2位 round(12.345,0)小数点前一位 round(12.345,
2017-10-08 20:48:18
490
原创 Hive学习笔记 4 Hive的数据导入
方式一、使用load语句load本地文件load data local inpath '/chenjie/apache-hive-2.3.0-bin/chenjie.txt' into table student4;将目录下的所有文件导入load data local inpath '/chenjie/apache-hive-2.3.0-bin/' overwrite int
2017-10-08 20:18:18
276
原创 Hive学习笔记 3 Hive的数据模型:内部表、分区表、外部表、桶表、视图
1、内部表Hive中默认的表就是内部表,即元数据存在数据库中,数据存在HDFS中顺便补充以下创建内部表的细节:指定列分隔符、从其他表中查询插入内部表被删除后,HDFS会把其移动到垃圾箱中2、分区表作用:加快查询效率,如按照性别分区如果按照性别进行分区,则可以加快按照性别查询时的查找效率
2017-10-08 16:34:15
759
原创 Hive学习笔记 2 Hive的数据类型
1、基本数据类型tinyint/smallint/int/bigint 整数类型float/double 浮点数类型boolean 布尔类型string 字符串类型2、复杂数据类型Array:数组类型,由一系列相同数觉类型的元素构成create table student(sid int,sname string,grade array);{1,Tom
2017-10-08 15:12:20
402
原创 Hive学习笔记 1 Hive体系结构
本Hive学习笔记是观看慕课网赵强的教程后的笔记,教程地址:http://www.imooc.com/learn/387什么是Hive?Hive是基于Hadoop HDFS之上的数据仓库,本质上就是一个数据库。什么是数据仓库?面向主题:数据仓库中的数据是用户进行数据分析时关心的数据集成的:数据仓库中的数据是来自于分散的数据源,有可能来自于Mysql
2017-10-08 14:23:53
394
原创 ubuntu 安装使用 Sqoop1.4.6 + hive 2.3.0
Hadoop 2.6.5 + Spark 1.6.0 + Scala 2.10.4 + Hive 2.3.0 + Sqoop 1.4.6主要记录Sqoop 1.4.6的安装和使用包括从mysql导入数据到HDFS 、从mysql导入数据到Hive、指定条件、指定查询、从Hive导出数据到mysql
2017-10-08 10:32:48
579
原创 ubuntu 安装hive2.3.0
1、到Apache官网下载hive2.3.0压缩包,并解压我的放在/chenjie/apache-hive-2.3.0-bin下下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-2.3.0/apache-hive-2.3.0-bin.tar.gz2、下载mysql最新驱动,将解压后的jar包放在/chenjie/a
2017-10-07 18:45:45
5044
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅