摘要: 背景介绍为什么要做借口测试?很多系统关联都是基于接口来实现的,接口测试可以将复杂的系统关联进行简化.接口功能比较单一,能够比较好的进行测试覆盖,也相对容易实现自动化持续集成.接口相当于界面功能,会更底层一些,测试覆盖会更容易.软件开发生命周期?接口测试在单口测试后,UI测试之后接口测试可以获得较高的投资回报(接口测试比单元测试的粒度要粗一些)什么是接口测试? (什么是接口: 电梯、开车刹车、搜索引... 阅读全文
posted @ 2019-05-15 01:23 BBBone 阅读(4045) 评论(0) 推荐(0) 编辑
摘要: 需求描述GET: http://localhost:8080/MyWebsite/user/ Header: Content-Type = application/json Body: 空 Response: 返回所有User对象 Status code: 200GET: http://localhost:8080/MyWebsite/user/{id} Header... 阅读全文
posted @ 2019-05-15 01:21 BBBone 阅读(677) 评论(0) 推荐(0) 编辑
摘要: fg(前台执行) frontgroundbg(后台执行) background & daemon总结:一般命令在前台执行(fg),执行完毕后,控制返回给用户。在命令后面加上&,它会在后台执行(bg),并将特殊的环境变量$!设置为该任务的进程ID。这时shell可以并发执行其他命令。按Ctrl+z可以挂起前台运行的程序挂起的程序可以用fg恢复到前台,或者用bg恢复到后台后台程序试图写入数据到... 阅读全文
posted @ 2019-05-15 01:14 BBBone 阅读(2193) 评论(0) 推荐(0) 编辑
摘要: shell脚本——调试(-n / -x / + / ++ )-n 只读取shell脚本,但不实际执行 "-n"可用于测试shell脚本是否存在语法错误,但不会实际执行命令。-x 进入跟踪方式,显示所执行的每一条命令 "-x"选项可用来跟踪脚本的执行,是调试shell脚本的强有力工具。 -v 显示所有行,详细模式sh -n file.sh# 检查脚本中的语法错误,并显示行号expo... 阅读全文
posted @ 2019-05-15 01:14 BBBone 阅读(6612) 评论(0) 推荐(0) 编辑
摘要: 一、 在QQ邮箱中开启POP二 、关闭主机的sendmail,开启postfix(本机若没有两个服务,就需要先安装)本地安装sendmail和postfix[root@Slave1 ~]## yum -y install sendmail# yum -y install postfix//sendmail# service sendmial stop# chkconfig sendmail o... 阅读全文
posted @ 2019-05-15 01:07 BBBone 阅读(284) 评论(0) 推荐(0) 编辑
摘要: 一、存储Hive版本的元数据表(VERSION)二、Hive数据库相关的元数据表(DBS、DATABASE_PARAMS)DBS --存储Hive中所有数据库的基本信息DATABASE_PARAMS --该表存储数据库的相关参数,在CREATE DATABASE时候用WITH DBPROPERTIES (property_name=property_value, …)指定的参数。... 阅读全文
posted @ 2019-05-15 01:04 BBBone 阅读(607) 评论(0) 推荐(0) 编辑
摘要: 从2.10.0版本开始,Scala提供了三种创新的字符串插值方法: s、f 和 raw于2.11.0版本开始,用于模式匹配patter match中小结:s: s"Hello, $name" //变量插值 s"1 + 1 = ${1+1}" //任意表达式插值f: f"$name%s is $height%2.2f meters tall" //插值后,格式化字符串raw:... 阅读全文
posted @ 2019-05-15 01:03 BBBone 阅读(351) 评论(0) 推荐(0) 编辑
摘要: 关系模型、多维模型和Data Vault模型是三种常见的数据仓库模型.数据结构、完整性约束和SQL语言是关系模型的三个要素.规范化是通过应用范式规则实现的.第一范式(1NF)要求保持数据的原子性第二范式(2NF)消除了部分依赖第三范式(3NF)消除了传递依赖关系模型的数据仓库一般要求满足3NF.事实、纬度、粒度是维度模型的三个核心概念.纬度模型的四步设计法是选择业务流程、声明粒度、确定纬度、确定事... 阅读全文
posted @ 2019-05-15 01:02 BBBone 阅读(611) 评论(0) 推荐(0) 编辑
摘要: 外连接:---外连接并不要求连接的两表的每一条记录在对方表中都有一条匹配记录.要保留所有记录(甚至这条记录没有匹配的记录也要保留)的表成为保留表.外连接可以一句连接表保留左表,右表和全部表的行二进一步分为左外连接、右外连接、全连接.(在这种情况下left和right表示Join关键字的两边.)在标准的SQL语言中,外连接没有隐式的连接符号.外部连接即包含ON子句又包含WHERE子句时,应当只把表之... 阅读全文
posted @ 2019-05-15 01:01 BBBone 阅读(719) 评论(0) 推荐(0) 编辑
摘要: outputMysqlApp.scalaimport java.sql.DriverManagerimport org.apache.spark.SparkConfimport org.apache.spark.streaming.{Seconds, StreamingContext }object outputMysqlApp extends App { //配置入口点 val conf =... 阅读全文
posted @ 2019-05-15 01:00 BBBone 阅读(475) 评论(0) 推荐(0) 编辑
摘要: updataStateByKeyApp.scalaimport org.apache.spark.SparkConfimport org.apache.spark.streaming.{Seconds, StreamingContext}object updataStateByKeyApp extends App { //配置入口点 val conf = new SparkConf().set... 阅读全文
posted @ 2019-05-15 00:59 BBBone 阅读(326) 评论(0) 推荐(0) 编辑
摘要: TransformationDemo.scalaimport org.apache.spark.{HashPartitioner, SparkConf, SparkContext}import scala.collection.mutable.ListBufferobject TransformationDemo extends App { val sparkConf = new SparkCo... 阅读全文
posted @ 2019-05-15 00:49 BBBone 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 要用到transform and rdd.leftOuterJointransform: 使 DStream 和 RDD 之间的类型进行了转换,然后可以进行调用leftOuterJoin(左外连接,左边表不变,右边变) BlackFilterApp.scalapackage com.imooc.streamingimport org.apache.spark.SparkConfimport... 阅读全文
posted @ 2019-05-15 00:45 BBBone 阅读(1179) 评论(0) 推荐(0) 编辑
摘要: UserDefinedTypedAggregation.scala(用户可自定义类型)import org.apache.spark.sql.expressions.Aggregatorimport org.apache.spark.sql.{Encoder, Encoders, SparkSession}object UserDefinedTypedAggregation { case clas... 阅读全文
posted @ 2019-05-15 00:41 BBBone 阅读(138) 评论(0) 推荐(0) 编辑
摘要: UserDefinedUntypedAggregate.scala(默认返回类型为空,不能更改)import org.apache.spark.sql.{Row, SparkSession}import org.apache.spark.sql.expressions.{MutableAggregationBuffer, UserDefinedAggregateFunction}import or... 阅读全文
posted @ 2019-05-15 00:40 BBBone 阅读(147) 评论(0) 推荐(0) 编辑
摘要: SparkSQLDemo.scalaimport org.apache.spark.sql.{Row, SparkSession}import org.apache.spark.sql.types.{StringType, StructField, StructType}object SparkSQLDemo { // $example on:create_ds$ case class Per... 阅读全文
posted @ 2019-05-15 00:40 BBBone 阅读(580) 评论(0) 推荐(0) 编辑
摘要: 目录一、概述二、shuffle的定义三、ShuffleMananger发展概述四、HashShuffleManager的运行原理4.1 未经优化的HashShuffleManager4.2 优化后的HashShuffleManager五、SortShuffleManager运行原理5.1 普通运行机制5.2 bypass运行机制六、shuffle相关参数调优spark.shuffle.file.b... 阅读全文
posted @ 2019-05-15 00:29 BBBone 阅读(1088) 评论(0) 推荐(0) 编辑
摘要: 前置ES: JavaSpark/Flink Stack + Spring Boot + ES Scala/Java + Java/Scala + Java==> 用API的方式来掌握ES的用法(API、SpringBoot的使用)ES: API RESTFulElasticSearch + Kibana存储 展示/分析ES Plugin: Head SQL Kibana (三个插件... 阅读全文
posted @ 2019-05-15 00:28 BBBone 阅读(769) 评论(0) 推荐(0) 编辑
摘要: 目录什么是数据倾斜Hadoop框架的特性主要表现容易数据倾斜的情况产生数据清洗的原因业务场景空值产生的数据倾斜不同数据类型关联产生数据倾斜大小表关联查询产生数据倾斜一、什么是数据倾斜由于数据分布不均匀,造成数据大量的集中到一点,造成数据热点二、Hadoop框架的特性不怕数据大,怕数据倾斜jobs数比较多的作业运行效率相对比较低,如子查询比较多sum、count、max、min等聚合函数,通常不会有... 阅读全文
posted @ 2019-05-15 00:27 BBBone 阅读(423) 评论(0) 推荐(0) 编辑
摘要: 需求: 将统计结果写入到MySQLcreate table wordcount( word varchar(50) default null, wordcount int(10) default null);通过该sql将统计结果写入到MySQL "insert into wordcount(word, wordcount) vlaues('" + record._1 + "'," + re... 阅读全文
posted @ 2019-05-15 00:27 BBBone 阅读(559) 评论(0) 推荐(0) 编辑