自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mysql事务

mysql事务一个或者一组sql语句组成的一个执行单元,这个执行单元要么全部执行,要么全部不执行。多条sql语句构成执行单元,单元中每个mysql语句都是相互依赖的。当单元中的某条sql语句失败的话,这个单元都会回滚。受影响的数据将回到事务开始的状态。1、事务的ACID属性原子性:是指事务是一个不可分割的工作单位,事务中的操作要么全部发生,要么全部不发生。一致性:事务必须使数据库从一个一致性状态变换到另一个一致性状态。隔离性:指一个事务的执行不能被其他事务干扰,即一个事务内部的操作及使用

2021-05-30 09:58:38 130

原创 Mysql索引优化

1、explain作用用于查看sql的执行计划,使用explain关键字可以模拟优化器执行sql查询语句,从而知道mysql是如何执行某条sql语句的,可以用来分析查询语句或表结构的性能瓶颈。那么explain可以用来干嘛:表的读取顺序、数据读取操作的操作类型、哪些索引可以使用、哪些索引被实际使用、表之间的引用、每张表有多少行被优化器查询。接下来介绍下explain每个查询结果代表的意义。​​​​​​​1.1、id首先呢是一组序列号,表示的是查询中执行select子句或操作表的顺序。单.

2021-05-30 09:55:54 153 1

原创 Mysql索引-索引原理、聚集索引、覆盖索引

mysql索引索引就是来帮助mysql高效获取数据的数据结构。索引数据结构的有四种:二叉树、红黑树、hash表、b树、b+树。二叉树作为索引缺点:如果为一组有序的数据,那么二叉树实际存储更像链表,就是二叉树单边存储了。红黑树:红黑树本质上也是一颗二叉树,就是一个节点最多只有两个子节点,当存储的数据多的时候,红黑树的深度就会变得很深,不利于查询。hash表,根据查找值做hash运算得到的一个值,因为key是经过hash运算的,hash函数处理后的结果无序,所以用hash表做不到范围查询。b

2021-05-30 09:52:14 533

原创 HashMap底层原理总结

刚学习完HashMap,对这几天的学习内容做个总结和记录。1、简单讲一下Hash的实现原理首先HashMap底层数据结构由数组+链表组成,jdk1.8不一样的地方就是当Hash冲突多时,链表会自动装换为红黑树,当链表长度达到8时转换为红黑树,长度为6时转换为链表。HashMap的put操作中,。当我们向HashMap 入一个键值对<key,value>时,首先将key通过hash函数计算出hash值,根据hash值将<key,value>存放至数组中,当再次传进来的&lt..

2020-10-20 22:01:20 587 1

原创 spark dataframe预处理---表堆叠,横向堆叠与纵向堆叠

数据准备//表1scala> val df1 = spark.createDataFrame(Seq(("aaa", 14, 1), ("bbb", 30, 2), ("ccc", 45, 3), ("bbb", 56, 4)) ).toDF("R1","R2","R3")scala> df1.show+---+---+---+| R1| R2| R3|+---+---...

2020-04-15 21:08:04 1923 1

原创 spark dataframe预处理---表连接、修改多列列名

创建dataframe//表1scala> val df1 = spark.createDataFrame(Seq(("aaa", 14, 1), ("bbb", 30, 2), ("ccc", 45, 3), ("bbb", 56, 4)) ).toDF("R1","R2","R3")scala> df1.show+---+---+---+| R1| R2| R3|+...

2020-04-14 23:26:55 1581

原创 spark dataframe预处理---数据离散化

数据准备,我们根据labels列来离散化数据长这样scala> df.show(5)+--------+------------------+------+| R1| G2|labels|+--------+------------------+------+|148.6041|4.1254973506233155| 1.0||1...

2020-04-14 22:57:35 534

原创 spark dataframe数据预处理---数据筛选

利用.filter对dataframe的数据进行筛选筛选比较符有“==”、"!="、">"、"<"、"<="、">="、"like"、"rlike"数据长这样scala> df.show(10)+--------+------------------+------+| R1| G2|labels|+------...

2020-04-14 22:23:48 3394

原创 Spark dataframe数据预处理---csv文件读取与保存

1、读取csv文件val data_left_ori = spark.read .option("inferSchema","true")//自动推导数据类型 .option("header","true")//读取列名 .csv("/user/root/image.csv")//文件路径2、保存csv文件data.coalesce(1)//文件分区设置为1...

2020-04-14 21:45:25 2230

原创 spark dataframe数据预处理---选择多列

例如有dataframe如下.scala> data.show+--------+------------------+--------------------+--------+------------------+--------------------+-------+------------------+-------------------+------+| R...

2020-04-13 23:28:35 3428

原创 centos7配置集群错误

[root@master logs]# hadoop dfsadmin -reportDEPRECATED: Use of this script to execute hdfs command is deprecated.Instead use the hdfs command for it.Configured Capacity: 0 (0 B)Present Capacity: ...

2020-02-23 15:09:24 302 1

原创 Apriori 关联规则算法

通过Apriori算法,我们可以对数据进行关联分析,能够在大量的数据中找出数据间有趣的关系。那这个关系怎么找呢。一是根据支持度找出频繁项集,二是根据置信度产生关联规则。频繁项集指在物品经常一起出现的。关联规则表示两个物品间有很强的关系。首来理解一下关联规则中两个基本概念:支持度与置信度。举一个购物清单的例子对于Bread->milk这个事件中:1、支持度:P(Bread...

2019-12-07 19:30:08 2044

原创 GraphX之aggregateMessages、outerJoinVertices

aggregateMessages:aggregateMessages为GraphX中核心的聚合操作,他主要的功能是向领边发送信息,合并领边收到的信息。aggregateMessages方法的定义格式为:其中sendMsg 看做 map reduce 过程中的 map 函数,向邻边发消息,应用到图的每个边三元组(edgemergeMsg 指定两个消息到相同的顶点并保存为一个消息。可...

2019-11-19 19:04:12 360

原创 Java原理

1、面向对象的特征有哪些方面(1)抽象抽象就是找出事物之间的相似和共性处,把这些事物归为一个类,这个类只考虑事物的相似和共性之处,忽略一些主题与当前目标无关的那些方面。抽象不需要了解全部问题,只需要了解一部分的问题,忽略问题的细节。抽象 包含行为抽象与数据 抽象。(2)继承在实现一个类时,可以现有的类上派生,这个过程称为继承。新类继承了原有类的特征,那么新类为子类,原有类为父类。子...

2019-11-14 00:19:11 183

原创 spark sql连接mysql报错java.sql.SQLException: Access denied for user 'root'@'master' (using password: YES

scala> res4.write.jdbc("jdbc:mysql://master:3306/test","modeldata",prop)java.sql.SQLException: Access denied for user 'root'@'master' (using password: YES) at com.mysql.jdbc.SQLError.createSQLE...

2019-11-12 10:14:16 1383

原创 Spark之dataframe操作大全

一、datafram描述DataFrame 是一种不可变的分布式数据集,这种数据集被组织成指定的列,类似于关系数据库中的表。数据集的每一列都带有名称和类型,对于数据的内部结构又很强的描述性。二、datafram特点1、支持 KB 级到 PB 级得到数据处理 2、支持多种数据格式和存储系统 3、通过 Spark SQL Catalyst 优化器可以进行...

2019-11-11 19:04:13 2453

原创 spark算子

数据准备这是hdfs上的result_math.txt数据:为数学成绩表,第一列为学号, 第二列为科目(数学),第三列为成绩这是hdfs上的result_bigdata.txt数据:为大数据成绩表,第一列为学号, 第二列为科目(大数据),第三列为成绩1、通过textFile读取hdfs上文件为RDDscala> val math=sc.textFile("test1...

2019-11-07 19:00:29 502

原创 HBase JavaAPI 上传下载多张图片练习

目标:上传本地10张图片至hbase,从hbase下载10张图片作业环境:Hbase1.1.2、使用Eclipse Java EE软件作为编程软件。表结构:创建Hbase表tenpic,tenpic表有一个列簇info版本为1,info里有列名:长height、宽width、图片数据bf。以图片名为rowkey。表设计如下:代码:package Demo;import jav...

2019-10-26 10:53:20 380

原创 HBase javaAPI(四):HBase过滤查询(filter)之其他过滤器

本次使用的表结构为:数据为:键值元数据过滤器1、FamilyFilter:用于过滤列簇,输出在指定簇下的值。BinaryComparator comp = new BinaryComparator("info".getBytes());//判断列簇是不是infoFamilyFilter filter = new FamilyFilter(CompareOp.EQUAL,...

2019-10-25 18:46:50 1266

原创 HBase javaAPI(三):HBase过滤查询(filter)之列值过滤器SingleColumnValueFilter

HBase过滤器(filter)提供了强大得功能来帮助用户筛选需要的数据。HBase中的get、scan都支持过滤器,,过滤器在服务端生效,这样可以保证被过滤掉的数据不会被传送到客户端,从而提高了代码运行的效率。过滤器的执行流程:过滤器可以根据列族、列、版本等更多的条件来对数据进行过滤,基于HBase 本身提供的三维有序(行键,列,版本有序),这些过滤器可以高效地完成查询过滤的任务...

2019-10-24 22:42:25 4749

原创 HBase javaAPI(二):实现对表简单的增删查改

前面讲个JavaAPI几个主要类的使用方法这次使用JavaAPI实现在hbase上 新建、删除表,以及在表里面插入、删除、查询数据,里面有注释package Demo;import java.io.IOException;import java.util.ArrayList;import java.util.Iterator;import java.util.List;im...

2019-10-24 18:31:33 353

原创 HBase javaAPI(一):JavaAPI几个主要类的使用方法

javaAPI中几种主要的类对HBase数据模式的操作。java类 HBase数据模式 Admin 管理hbase数据表信息 HTableDescriptor 对表结构列簇的操作 HColumnDescriptor 列族结构对象,维护着关于列族的信息。 Table 表对象 put 修饰符 get scanner 下面讲一下其...

2019-10-24 18:16:02 687

原创 HBaes表的设计以及hbase表与RDBMS表的区别

hbase表与RDBMS表的区别:属性 hbase RDBMS 数据类型 只有字符串 丰富的数据类型 数据查找 简单的增删改查 各种各样的函数与表连接 存储模式 基于列式存储 基于表结构与行式存储 数据保护 更新后可以保留之前版本 保留最新版本 可伸缩性 轻易增加节点,兼容性高 需要中间层,牺牲功能 ...

2019-10-23 23:38:14 262

原创 HBase shell常用命令及练习

命名空间操作(namespace)1、创建命名空间hbase(main):008:0> create_namespace 'test1'0 row(s) in 0.3370 seconds2、查看命名空间,default为默认命名空间hbase(main):009:0> list_namespaceNAMESPACE ...

2019-10-22 18:34:17 599

原创 HBase shell练习

1.有一个表scores,分别有列簇course、grade,创建表并添加scores数据其scores表数据如下:Tom grade: 5Tom course:math97Tom course:art87Tom course:english80Jim grade: 4Jim course:chinese89Jim course:english80答:...

2019-10-22 17:04:06 1401

原创 Hadoop原理&面试题

1、partition的作用partitioner的作用主要是将map输出的数据按key做分区,使数据能够均匀的分布到reduce做后续的操作,这样能避免reduce处理过多的数据,产生 热点区。2、partition、combine、shuffle之间的关系与差别combine主要将map的输出做一次合并,combin的实现一般接在combine或者map后面, 她将map产生的多个...

2019-10-19 16:03:36 198

原创 Hadoop自定义键或值的数据类型

Hadoop里面有一些内置的数据类型,例如:数据类型 Hadoop数据类型 整型 IntWritable 双字节数值 DoubleWritable 布尔型 BooleanWritable 长整型数 LongWritable 使用UTF8格式存储的文本 Text 浮点数 Floatwritable 但当我们在MapReduce...

2019-10-18 15:21:32 477

原创 Hadoop自定义输入格式

MapReduce默认的输入格式为TextInputFormat。他的每条记录是一行输入。键是 LongWritable 类型,存储该行在整个文件中的字节偏移量。 值是这行的内容,不包括任何行终止符(换行符、回车符),它被打包成一个 Text 对象。有时默认的输入格式不能满足我们的需求,例如我们想要的输入格式为:文件名为key、文件的每一行内容为 value。下面我们来通过自定义输入格式来满足我们...

2019-10-17 19:01:39 241

原创 Hive自定义函数

1、Eclipse上 新建项目,new-->project-->java project输入项目名字后一路next就创建好项目了,新建的项目下 新建一个package,起名lib,然后把Linux上hive的jar复制到lib文件夹下面。我的jar包位置分别为/usr/local/hive/lib/下 的jar包(注意不要把其他文件也复制给lib)、/usr/local/hadoop/...

2019-10-17 12:38:38 109

原创 Linux上运行WordCount单词统计程序

本次在Linux上运行WordCount程序,因为在Eclipse上运行会涉及到很多配置问题,在Linux上运行就方便很多,时候初学者。本次单词程序分为三个Java文件:主函数WordCount.java、Mapper类WCMapper.java、Reducer类WCReducer。新建一个package,下面放建立这三个class文件。MapReduce实现的大致流程为:主函数Wo...

2019-10-16 23:10:23 892

原创 Linux shell基础编程

shell是一种命令语言,通过shell我们可以操作Linux,shell脚本其实就是一行行的命令,可以通过vim查看。shell脚本执行: 首先先创建一个脚本,vim进入脚本 第一行:#!/ban/bash # 指明shell脚本为bash类 指令。。。。保存退出 #...

2019-09-07 12:45:10 82

原创 Linux 文件权限管理

在多用户的管理系统中,权限是指某个特定的用户具有特定的系统资源使用权力,像是文件夹、特定系统指令的使用或存储量的限制。由root用户创建的普通用户的权限没有root超级管理员用户的权限大。超级用户可以通过给一部分权限给普通用户,这样就可以给普通用户分配工作,并且普通用户无法更改root没有授权的文件,这样能保护系统文件了。这是文件创建时的默认权限状态:其中1 中“-”代表文件,“ d”代表...

2019-09-07 11:26:51 164

原创 Linux 用户与用户组管理管理

linux系统为多用户管理系统,任何一个用户想加入系统使用资源,都必须在超级管理员账号(root账号)下创建账号,用户才可以通过账号登陆来对系统进行操作。每个用户都必须要有唯一的用户名,以及各种的密码才能登陆,没有设置密码则不能登陆(只能在root下切换用户),要想实现用户的管理则要做用户账号的添加、删除、修改以及用户密码的管理。以及用户组的管理。1、用户管理添加用户 语法:#us...

2019-09-07 10:21:31 102

原创 Linux高级命令

1、ps语法1:#ps 选项 语义:查看服务器的进程 选项:-e 列出全部进程 -f 显示全部列 案例1:查看服务器全部进程 UID:该进程执行的用户id; PID:进程id;PPID:该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程称之为僵尸进程(parent process ID);C:Cpu的占...

2019-09-06 23:03:56 58

原创 Linux基础命令

1、ls语法1:#ls 语义:列出当前 路径下的文件内容 语法2:#ls 【路径】 语义:列出指定路径下的文件内容 语法3:# ls 【选项】【路径】 选项:-l 输出指定路径下文件的具体内容 -a 输出路径下的所有文件(包括隐藏文件) 也可以用 -la #ll命令相当于#ls -l2、cd#cd【路径】 语义:进入指定的路径(进入绝对...

2019-09-06 22:22:27 105 1

原创 keras卷积网络对手写数字的识别

keras卷积网络对手写数字的识别keras卷积网络对手写数字的识别与多层感知器对手写数字识别的步骤内容差不多,这一章主要写之间不同的地方,步骤一样,接下来直接上代码1、数据预处理 from keras.datasets import mnistfrom keras.utils import np_utilsimport numpy as np(x_train,y_trai...

2019-03-10 15:17:42 283

原创 keras多层感知器对手写数字识别

Keras学习总结 keras是基于TensorFlow的深度学习框架,在编写keras代码时,我们不必去管keras的底层运行内容(矩阵运算),我们只需建立模型,处理好输入参数的数据类型就可以。我写的博客主要是类似于做笔记,写得不好,仅供参考。keras多层感知器对手写数字识别的步骤1、数据预处理(处理好输入的数据类型)2、建立模型3、训练模型(利用训练数据和验证数据对模型...

2019-03-10 13:42:44 594

空空如也

空空如也

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

TA关注的人

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