【Python查漏补缺(二)】正则表达式与深浅拷贝
在开始正题之前讲一下打开文件的另一种方式。
之前打开文件的方式f = open("文件路径","文件打开方式", encoding="utf8")
模式
描述
r
以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb
以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
r+
打开一个文件用于读写。文件指针将会放在文件的开头。
rb+
以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
w
打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb
以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
w+
打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+
以二进制格式打开一个文件用于读写。如果该文件已存在则 ...
【Hive】函数及DQL收尾
Hive–DQL正则匹配正则表达式(Regexp)介绍: 概述: 正确的, 符合特定规则的字符串.
Regular Expression
细节:
正则表达式不独属于任意的一种语言, 市场上大多数的语言都支持正则, 例如: Java, Python, HiveSQL, JavaScript等…
要求: 能用我们讲的规则, 看懂别人写的 正则表达式(式子)即可. 正则规则:
1234567891011^ 代表: 正则开头$ 代表: 正则结尾a 代表: 1个字符a. 代表: 任意的1个字符\. 代表: 取消.的特殊含义, 即只把它当做1个普通的 点(.)\\ 代表: 一个 \[abc] 代表: a,b,c中的任意1个字符[^abc] 代表: 除了a,b,c外的的任意1个字符\d 代表: 任意的1个整数, 等价于 [0-9]\w 代表: 任意的1个单词字符, 即: 数字, 字 ...
【Hive】DML及DQL语句
由于Hive是分布式语言(其本质是操作了HDFS上的文件,因为HSFS是分布式架构,所以就决定了Hive是一门分布式SQL)。丢,我解释的可能不是很专业,将就看看。通常来说存储在HDFS上的数据是不能修改的,但是appendTofile这个linux命令是个特例(hadoop fs -appendToFile /root/2.txt /aa/1.txt)-将数据从L inux上传到HDFS文件系统并将文件内筒追加到HDFS指定文件的末尾,所以Hive是没有数据的删除的SQL命令的,只有增删查,但是又说到DML了,所以数据操作只有增删。(是对数据表的操作)
关于DQL虽说跟MySQL有些许区别,实际上大同小异。
文言文HQL DML语句介绍 它指的是 数据操作语言, 主要是用来 操作表数据的, 对表数据进行 增删改操作, 这里特指的是: 如何往Hive表中新增数据.
数据导入: 流向: Linux, HDFS => Hive 方式:
通过 load data方式实现.
通过 insert + select 方式实现, 相对更灵活.
loa ...
【Hive】DDL语句详解二-言无不尽
Hive–DDL建表的关键:分区,分桶,切割,存储方式,存储位置,表属性
DDL建表关键总结:LazySimpleSerDe建表
12345678910create [external] table 表名( 字段名 字段类型 Comment'字段的描述信息', 字段名 字段类型 Comment'字段的描述信息', 字段名 字段类型 Comment'字段的描述信息' -- 最后一行没有逗号)Comment '表的描述信息'row format delimited fields terminated by ','collection items terminated by '#'map keys terminated by ':'lines terminated by '' -- LazySimpleSerizlizer 4项结束
所有关键字汇总
1234567891011create [external] ...
【Hive】DDL语句详解一-知无不言
学会了Hive的一些操作,发现Hive建过表,后续的数据并不是向MySQL是通过自己手写进行插入的,而是将TXT文件解析成为数据表的操作。其实是HDFS将文件映射成Hive表,然后然后通过写类SQL的语句来操作该文件,底层会被解析成为MR程序。
Hive的本质把HDFS文件映射成一张Hive表, 然后通过写类SQL的语句来操作它(HDFS文件), 底层会被解析成MR程序, 交由Yarn来调度执行.
DDL(Data Define Language)是什么?
见名知意,数据定义语言==Data Define Language。
对数据库的操作:包含创建(Create)数据库,数据表、修改数据库 (Alter table)
对数据表的操作:内部表(Managed Table)及外部表(External),分区表(Partition)和分桶表
数据库Operation1234567create database if not exists 数据库名; -- 创建数据库show databases; -- 查看系统中所有数据库use 数据库名; -- 切换数据库 ...
【Python查漏补缺(一)】闭包和装饰器
闭包的构成条件:
在函数嵌套(函数里面再定义函数)的前提下
内部函数使用了外部函数的变量(还包括外部函数的参数)
外部函数返回了内部函数
简单来说就是:有嵌套,有引用,有返回。
然后最近在敲代码的过程中发现:被装饰的函数和闭包中的内部函数都是一样的参数。
简单闭包
闭包其实是为了装饰器服务的,闭包其实本身没什么用。
关键点在于创建闭包实例,比如$f = fun_out(1)$其实$f$不是普通变量,而是一个函数对象。
12345678910111213def fun_out(num1): # 定义外部函数 def fun_inner(num2): # 内部函数使用了外部函数的变量 result = num2 + num1 print("结果是: ", result) # 外部函数返回了内部函数,这里返回的内部函数就是闭包 return fun_inner f = fun_out(1) # 创建闭包实例f(2)f(3)
当返回的内部函数使用了外部函数的变量就形成了闭包
闭包可以 ...
MySQL刷题本1(Northwind)
微软NorthWind
本文章的练习题来自Microsoft的Northwind项目,是一个开源的数据库练习项目。
经过一个上午的练习,一口气将34道练习题做完了。
对于这个练习题,我的评价是难度不大,很适合上手,另外一个45道题的刷题本可就比这难多了!
数据准备数据源是从Git上下载的, 微软的北风项目的源数据Northwind数据库在我的博客园MySQL刷题12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114 ...
初识Hadoop集群
学校之前学习过Hadoop,只是记得当时老师搭建Hadoop环境就用了很久的时间,不过实话说,集群搭建的话真的很耗时间。而且搭建这个集群是比较重要的一步操作,因为数仓的底层用的就是Hadoop。
后面会有具体搭建Hadoop集群的步骤,这里就不再啰嗦了。
Apache Hadoop是什么!
hadoop 广义上来说 hadoop整个生态,狭义来说,大数据软件
hadoop 软件分为三个组件(见名知意)
HDFS(Hadoop Distributed File System): 分布式存储系统
MapReduce: 分布式计算引擎
Yarn: 分布式资源调度平台
什么是分布式:
打个比方,做一道菜需要有切菜(多个人),洗菜(多个人),买菜(多个人),这个过程中切,洗,买就构成了分布式。而在切菜中多个人就算一个集群,集群中的人做相同的事情。
大数据的三驾马车2003, 谷歌发表GFS, 道格·卡丁(Doug Cutting)开源, 叫: HDFS(Hadoop Distributed File System)2004, 谷歌发表MapReduce, 道格·卡丁(D ...
SQL进阶(多表查询+窗口函数简单使用)
SQL基础语句之多表查询外键约束外键约束的添加方法
假设现在我们有两张表“分类表” 和“商品表”
— category —
cid VARCHAR(32) PRIMARY KEY,
cname VARCHAR(100) #分类名称
12345678- — products— - ```sql pid VARCHAR(32) PRIMARY KEY, name VARCHAR(40), price DOUBLE, category_id VARCHAR(32),
在创表语句后添加:CONSTRAINT FOREIGN KEY (外键字段) REFERENCES 主表名(主键)
category分类表,为唯一方,也就是主表,必须提供主键cid
products商品表,为多方,也就是从表,必须提供外键category_id
外键约束检测外键约束的优点
==在插入数据时,保证了数据的准确性==
1234567INSERT INTO category (cid ...
SQL基础(DDL->DML->DQL)
Sql语言基础回顾DDL语言(数据定义语言)DDL之数据库操作(DATABASE)
主要完成数据库的创建,查看,使用和删除。
1234567CREATE DATABASE test; # 创建数据库CREATE DATABASE IF NOT EXISTS mysql_db CHAR SET 'utf8'; # 创建数据库并定义字符集为utf8(同时如果数据库存在就不用创建)charset=utf8SHOW DATABASES; # 查看服务器中所有的数据库USE mysql_db; # 使用数据库SELECT database(); # 查看我们使用的是哪一个数据库DROP DATABASE test; # 删除数据库
主要目的是能够完成表的创建,查看,重命名和删除
DDL之数据表操作(TABLE)123456789CREATE TABLE student( id INT NOT NULL PRIMARY KEY , name VARCHAR(20), age INT); # 创建student表SHOW TABLES ; ...





