- 博客(34)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 1、Python核心之一切皆对象
一、类和函数也是对象1、类和函数可以赋值给变量2、类和函数可以添加到集合中3、类和对象可以作为参数4、类和对象可以作为返回值二、type、object、class关系1、所有类都是type的实例对象2、object是一切类的基类3、object也是type的实例对象4、type也是继承于object三、python常见内置类型1、对象特征1、id2、类型3、值2、常见类型1、None(全局唯一)2、数值 int、float、complex、bool3、迭代类型4
2020-10-12 22:52:08
196
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Linux相关命令、虚拟机网络配置
虚拟机联网## Linux命令1、查找#查找django进程,不包括grep自建的ps -ef |grep django | grep -v grep# find 查找home目录下的name.txt文件find /home -name name.txt# locate 查找home下以sh开头的文件locate /home/sh# whereis 查找可执行文件相关文件whereis ls#which 查找可执行文件which ls2、用户和用户组#添加用户useradd
2020-05-18 17:45:42
1796
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 08JAVA基础关键字(final、static)以及抽象类和接口
#一、关键字##1、final修饰类修饰变量修饰成员方法该类为最终类,不能被继承该变量为常量该成员方法不能被重写##2、static###(1)、生命周期随着类的加载而加载###(2)、特点被本类所有对象共享使用方式:类名.静态成员在实例化对象前被加载###(3)、成员特点静态方法中只能使用静态成员非静态方法中可以使用静态成员也可以使用非静态成员静态方法中不能使用this、super(因为此时对象还没有创建,先进内存的不能方位后进内存的)#二、
2020-05-12 15:58:14
95
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 06JAVA基础面向对象-继承/多态
一、继承1、概念子类的共性重用现有类并在此基础上进行扩展public class 子类 extends 父类{}2、继承中的成员访问成员变量成员方法局部->本类中成员变量->父类中非私有成员变量本类中方法->父类中非私有成员方法->object基类中非私有成员方法3、方法重写(1)、为什么要重写父类的方法不能满足我们的需求,我们需要进行扩展。(2)、怎么进行重写子类中的方法名、方法权限、方法形参和父类一样,此时就产生了重写(3)
2020-05-12 10:54:24
75
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 05JAVA基础面向对象(OOP)之封装
##一、面向对象###1、面向过程和面向对象面向过程分析问题的步骤,然后逐步实现。面向对象(1)面向对象基于面向过程(2)面向对象是找出解决问题的人,然后分配职责。(3)对象中包含解决问题的步骤面向对象更接近人的思想面向对象的优势:高复用,高维护,高扩展##二、类和对象###类 类是具有相同属性和行为的一类事物的总称。 类中包含成员变量和成员方法。####1、例子public class Student{ int age;//成员变量
2020-05-11 15:29:35
201
原创 软件测试基础
一、测试模型1、V模型V模型描写了基本的开发、测试流程缺点:测试介入比较晚,前期的缺陷和问题无法修改测试和开发是串行2、W模型从需求分析开始测试就开始介入缺点:对于测试要求比较高3、H模型完全独立于开发,某一个测试点准备就绪,测试活动就开始缺点:测试就绪点无法把握二、测试分类1、按照阶段划分单元测试集成测试系统测试验收测试2、按是否覆盖代码划分黑盒测试白盒测试灰盒测试...
2022-01-13 13:43:02
95
原创 FLASK_基础
1、Flask 路由配置@app.route("/index") #第一种def index(): return "index"#第二种,第一个参数为路由,第二个参数为路由别名,第三个参数为视图函数app.add_url_rule("/index","index",index)2、Flask启动export FLASK_APP=main.py 设置启动文件export FLASK_ENV=【development/production】 设置开发者模式和生产环境flask run -h
2020-12-09 23:03:53
121
原创 Python高阶-多线程
一、GIL锁全局解释性锁让Python同一时刻只有一个线程在CPU上运行字节码无法将多个线程映射到多个CPU上同时运行二、线程同步主要讲锁相关的知识锁实现了上下文协议即 __enter__ __exit__ 可以用with语句1、LockPython中最基础的锁一个上锁对应一个释放锁2、RLock可重入锁,上几把锁就需要释放几次3、Condition条件变量from threading import Thread, Conditiondef speak(cond)
2020-12-02 00:28:32
203
1
原创 Python高级编程-元类编程
一、property属性class People: def __init__(self,name): self.__name=name @property def name(self): return self.__name @name.setter def name(self,value): self.__name=value二、__getattr__和__getattribute__区别__getattr__是在找不到属性的时候会进入到该魔法方法__getattribu
2020-11-17 22:54:20
174
2
原创 Python高级编程-自定义序列以及dict
一、序列类型分类1、容器序列list、tuple、deque2、扁平序列str、array3、可变序列list、deque、array4、不可变序列str、tuple二、序列的abc继承关系#"Sequence", "MutableSequence",不可变序列以及可变序列三、序列的+ += 以及extends区别+ 是生成一个新的对象+= 调用isadd 本质上还是extends,对于可变类型是在修改原来对象extend 对于可变类型是在修改原来对象,extend(
2020-11-11 22:58:30
159
原创 网站流量分析
点击流数据点击流数据:关注的是用户访问网站的轨迹,按照时间来进行先后区分基本上所有的大型网站都有日志埋点通过js的方式,可以获取到你再网站上面点击的所有的链接,按钮,商品,等等,包括你访问的url的链接等等埋点收集的数据,都发送到日志服务器 一条日志大概1Kb来算数据全部在日志服务器分析用户的点击数据,得到我们的点击流模型点击流模型pageView:重视的是每一个页面受到的访问情况,每访问一个页面,就算一条记录visit:重视的是每一个session会话内的访问情况,这次会话内,哪个
2020-06-18 17:43:38
478
原创 sqoop
简介apache开源提供的一个数据导入导出的工具,从关系型数据库导入到hdfs,或者从hdfs导出到关系型数据库等等 从关系型数据库到hdfs 叫做导入 从hdfs到关系型数据库 叫做导出 通过MR的inputformat和outputformat来实现数据的输入与输出,底层执行的全部都是MR的任务,只不过这个mr只有map阶段,没有reduce阶段 说白了只是对数据进行抽取,从一个地方,抽取到另外一个地方架构sqoop 1.x 不用安装,解压就能用 sqoop 2.x 架构发生了变
2020-06-17 15:54:21
167
原创 hive调优
1、 feach不走mr能够不适用mr的时候尽量不适用mr。hive.feach.task.conversion 的配置有none、minimal、more。hive的默认配置是more.设置为more后,下面hql都不执行mr.select * from xxx;select a from xxx;select a from xxx limit 3;2、 本地模式如果存在很多小文件,每个小文件都要开启mr程序,会极大的浪费资源。所以可以开启本地模式,进行小文件合并。 //开启本地m
2020-06-04 10:50:13
165
原创 hive相关操作
建库创建一个hive数据库,在hdfs中就会创建一个文件夹创建库create database 库名;查看库相关信息desc database 库名;查看库详细信息desc database extended 库名;建表CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment], ...)] [COMMENT table_comment]
2020-06-02 21:08:02
89
原创 hive基础
数据仓库数据仓库简称DW,用来存储数据。数据仓库不涉及事务操作。目的构建面向分析的集成化环境,主要对数据仓库的数据进行分析特征1、面向主题:数据分析需要一定的范围,需要选取一定的主题2、集成:集成相关联的数据。数据仓库里面的数据是经过清洗的3、非易失性:数据仓库的数据基本上是过去的数据,不需要经过事务操作4、实变性:随着时间的发展,数据的形态在发生改变,数据分析的手段也需要发生对应的改变数据库和数据仓库的区别数据库:OLTP,联网事务处理。主要功能是做事务处理,主要负责频繁的事务操
2020-06-01 16:51:18
95
原创 mapreduce分区排序规约
分区相同key的value去同一个reduce分区后需要指定reduceTask个数package pation;import org.apache.hadoop.io.NullWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Partitioner;public class PationOwn extends Partitioner<Text, NullWritable>
2020-05-27 21:58:31
272
原创 mapreduce
核心思想mapreduce的思想主要分为map和reducemap:拆分阶段,将复杂的任务拆分成并行的多个小任务(每个任务的执行过程一样)reduce:聚合阶段 map阶段处理好的数据交由reduce阶段组合。mapreduce框架结构完整的mapreduce包括三个部分applicationMaster:分配任务,请求资源mapTask:map阶段数据处理reduceTask:数据整合mapreduce流程1、客户端提交任务2、resourceManager在某一台nodeMa
2020-05-26 21:16:39
112
原创 HDFS设计思想、元数据、简单JAVAAPI操作HDFS
一、 设计思路分布式文件系统在Hadoop中文件系统是一个顶层的抽象。分布式文件系统相当与对文件系统进行了一个扩展(类似于java中的接口)。HDFS是分布式文件系统的一个实现,分布式文件系统还有许多其他的实现。二、设计目标1、硬件错误 是常态:特别是硬盘的损坏。所以存在副本机制。2、数据流访问:所有的访问都是访问大量的数据, 使用IO流一直操作。稳定而不是效率。3、大数据集:存入到HDFS的数据都是海量的数据,不擅长处理小数据。因为存入过多小数据,每个小数据都需要元数据,容易
2020-05-25 16:57:45
196
原创 HDFS概述
hdfs基本特性hdfs是分布式文件存储系统hdfs是主从架构namenode:主节点,用于处理客户端请求,管理元数据datanode:从节点,存储数据分块存储: 文件过大,就会把一个大文件分为一个个block块。 一个block块的默认大小是128M统一命名空间: 对外提供一个文件访问的地址: hdfs://node01:8020namonode元数据管理:namenode存储所有的元数据,方便数据查找副本机制: 假设一个文件1280M,需要分为10个block块,如果一
2020-05-24 15:52:55
193
原创 Hadoop-apache版本部署以及CDH版本部署
apache版本伪分布式namenode和resourceManager在一台机器上完全分布式需要配置高可用namenode和resourceManager在一台机器上都有两个分布在不同的机器上一个namenode宕机,另外一个从standBy转为activeresourceManager同理CDH版本编译由于CDH的所有安装包版本都给出了对应的软件版本,一般情况下是不需要自己进行编译的,但是由于cdh给出的hadoop的安装包没有提供带C程序访问的接口,我们在使用本地库(
2020-05-22 22:46:07
253
原创 Hadoop框架模型、Hadoop环境搭建
Hadoop发展历史最初起源nutch项目。这个项目是个通用爬虫项目。项目中遇到两个问题:1、数据存储 Hadoop : HDFS---文件存储系统 MapReduce---分布式文件计算系统 HBase---非关系型数据库2、数据检索 luceneHadoop版本三种版本线上使用CDH版本Hadoop 1.x1、HDFS: 典型的主从架构,没有主备架构 nameNode :主节点,维护集群当中国的元数据,处理客户端请求 scondaryNod
2020-05-21 20:16:54
254
原创 Hadoop-Zookeeper环境搭建、Zookeeper的shell操作、Zookeeper的JavaAPI
环境搭建1、下载Zookeeper安装包2、解压3、到Zookeeper解压后的文件夹中,将conf中zoo_sample.cfg复制并重命名为zoo.cfg4、将zoo.cfg中的autopurge.snapRetainCount=3autopurge.purgeInterval=1取消注释以及设置机器的消息传输和选举端口server.1=node01:2888:3888server.2=node02:2888:3888server.3=node03:2888:38885、在Zooke
2020-05-20 17:30:26
163
原创 01Hadoop基础环境、zookeeper概念以及特性
三台虚拟机无密码登录1、关闭虚拟机的防火墙以及selinux#防火墙service iptables stopchkconfig iptables off#selinuxvim /etc/selinux/configSELINUX=disabled2、机器更改主机名vim /etc/sysconfig/network3、主机ip映射vim /etc/hosts然后重启虚拟机 reboot -h now4、机器创建公钥和私钥ssh-keygren -t rsa5、将公钥拷贝到第一
2020-05-19 22:50:40
116
原创 shell脚本
shellshell脚本文件一般以.sh结尾在shell脚本中第一行通常为#!/bin/bash#脚本执行方式# 1、文件没有执行权限sh hello.shbash hello.sh#2、有执行权限./hello.sh#添加可执行权限chmod -R 777 hello.sh文件传参bash hello.sh hello在hello.sh脚本中$0 文件名$1 第一个参数变量#不能有空格变量=变量名a=10# 变量使用${a}变量的范围局部变量 只
2020-05-19 22:19:15
140
原创 JAVA基础IO2
字节缓冲区流字节缓冲区流作用:字节流一次读写一个数组的速度比一次读写一个字节的速度快很多,这是加入了数组这样的缓冲区效果,java本身在设计的时候,也考虑到了这样的设计思想,所以提供了字节缓冲区流。BufferedOutputStream:字节缓冲输出流BufferedInputStream:字节缓冲输入流转换流转换流出现的原因:字节流读数据时,一次读取一个字节的方式读取带有汉字的文件是有问题的,因为汉字是由两个字节组成的。文件复制的时候,字节流读取一个字节,写入一个字节,这个没有出现
2020-05-16 23:08:45
149
原创 JAVA基础异常字节流
异常JAVA异常可以分为编译时候出现的异常和执行时候出现的异常JVM默认处理异常的方法是抛出异常异常处理//第一种try{可能会出错的代码}catch{发生异常后处置方法}finally{处理完毕后需要执行的代码}//第二种throws 异常类thorows作用:当前方法不知道如何处理异常,就可以用throws,谁调用该方法,谁处理异常。IO流存在数据交互的地方就存在IOFile类构造方法//构造方法File file = new File(String f
2020-05-15 22:22:07
126
原创 11JAVA基础-集合
一、集合`二、Collection类Collection 是单列的顶层类。Collection是接口。创建对象需要借助多态。//e为集合中数据类型//ArrayList是List的实现类Collection<e> collection= new ArrayList<e>();1、 Collection的常用方法Collection<String> collection= new ArrayList<String>();//向collec
2020-05-14 14:37:03
84
原创 10JAVA基础-常用类02
Arrays工具类,构造方法私有//将数组转变为字符串String str = Arrays.toString(int[] value);//对于原数组进行排序,升序Arrays.sort(int[] arr);基本数据类型包装类包装类数据类型BytebyteShortshortIntegerintLonglongFloatfloatDoubledoubleCharactercharBooleanboolean
2020-05-13 22:23:11
72
原创 09JAVA基础-常用类
1、Scanner//获取键盘输入Scanner sc = new Scanner(System.in);int num = sc.nextIn();String str = sc.nextLine();2、Object所有类都直接或者间接继承Object类public class Person{}public class Test{ public static void main(string[] args){ Person p = new Person(); Person
2020-05-13 16:44:44
101
原创 05JAVA基础方法
##一、格式函数有返回值public static 返回类型 方法名(参数类型 形参1,参数类型 形参2){函数体;return 返回值;//返回值必须是定义的返回类型}函数没有有返回值public static void 方法名(参数类型 形参1,参数类型 形参2){函数体;return 返回值;//返回值必须是定义的返回类型}##二、方法调用###方法有返回值赋值调用int result = fun();输出调用System.out.printIn(fun());
2020-05-10 22:24:44
75
原创 04JAVA基础数组相关
##概念存储同一种数据类型的多种元素的容器##数组初始化动态初始化设定数组长度,系统自动分配默认值int[] arr = new int[3];静态初始化给定数组默认值,系统自动分配长度int[] arr = new int[]{1,2,3};//完全结构int[] arr = {1,2,3};//简写,在内存图中,也是先开辟一个长度为3,默认值都为0的数组,然后再把每个默认值改为1,2,3##JVM内存分配名称作用栈存储局部变量,使用完成立即销毁堆
2020-05-10 22:24:02
65
原创 03JAVA循环结构
#和JS\Python语句判断逻辑基本一致,不需要记录详细,只需要记录格式##一、for循环 for (初始化数据;判断语句;控制语句){ 循环体语句; }##二、while循环 初始化数据; while (判断语句){ 循环体语句; 控制语句; }##三、do…while循环 初始化数据; do { 循环体语句; 控制语句
2020-05-10 22:23:15
82
原创 02JAVA基础-运算符及选择语句
##一、运算符###1、算数运算符算数运算符备注+可以用作拼接-*/整数相除得整数,需要获得小数,需一方为浮点数%取余数++自增–自减扩展(1)对于++和--的扩展(以++为例)++可以放在变量前面和变量后面++放在变量前面需要对该变量先进行自增再进行其他运算。++放在变量后面需要先进行运算然后再进行自增例子 int a = 10; int b; //先将a赋值给b,然后a再进行自
2020-05-10 22:21:20
101
原创 01JAVA基础相关
#JAVA基础##一、JAVA基本概述###1、JAVA三大应用平台JAVA SEJAVA EEJAVA ME标准版企业版小型版桌面开发后台服务器端开发移动端开发###2、JAVA跨平台####(1)、JAVA跨平台依赖于JVM(虚拟机) 源代码-编译-字节码-JVM识别####(2)、JRE与JDKJRE是JAVA运行环境,其中包括JVMJDK是JAVA开发环境,其中包括JRE##二、JAVA基础语法###1、常量整数浮点数字符串
2020-05-10 22:20:01
68
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人