- 博客(165)
- 收藏
- 关注
转载 Oracle 10g PSU/CPU安装
1. 什么是PSU/CPU?CPU: Critical Patch UpdateOracle对于其产品每个季度发行一次的安全补丁包,通常是为了修复产品中的安全隐患。PSU: Patch Set UpdatesOracle对于其产品每个季度发行一次的补丁包,包含了bug的修复。Oracle选取被用户下载数量多的,并且被验证过具有较低风险的补丁放入到每个季度的PSU中。在每个PSU中不但包含Bug的修复而且还包含了最新的CPU。2. 如何查找最新的PSU?每个数据库版本都有自己的PSU,PSU版本号
2021-05-13 00:49:31
277
原创 hive 中的虚拟列(伪列)
One is INPUT__FILE__NAME, which is the input file’s name for a mapper task.INPUT__FILE__NAME 在map任务对应输入文件the other is BLOCK__OFFSET__INSIDE__FILE, which is the current global file position.BLOCK__OFFSET__INSIDE__FILE 块在全局文件中的地址For block compressed file
2021-05-13 00:05:41
1352
原创 Mysql8在windows上安装错误集合
[client]port=3306[mysql]default-character-set=utf8[mysqld]# 设置3306端口port = 3306# 设置mysql的安装目录basedir="D:\Program Files\MySQL\mysql-8.0.24-winx64"# 允许最大连接数max_connections=20# 服务端使用的字符集默认为8比特编码的latin1字符集character-set-server=utf8# 创建新表时将使用的默认存储引.
2021-05-10 18:08:34
2047
原创 Python gzip/bzip2/zlib/lz4/snappy压缩对比
最近折腾压缩,想要将单个大文件进行压缩,对比了多种压缩算法,考虑到性价比,最后还是决定放弃压缩。测试的时候写了一个简单的 Python脚本去测试。from functools import wrapsimport timeimport osimport gzipimport bz2import zipfileimport zlibimport snappyimport osdef print_run_time(fun): @wraps(fun) def run_tim
2021-05-08 17:14:06
1159
原创 Python 拆分数据数据导入hive
创建weekday_mapper.py:import sysimport datetimefor line in sys.stdin: line = line.strip() userid, movieid, rating, unixtime = line.split('\t') weekday = datetime.datetime.fromtimestamp(float(unixtime)).isoweekday() print '\t'.join([userid, moviei
2021-05-08 04:13:18
117
翻译 MATLAB转换为Python
SMOP 是小型Matlab和八度到Python编译器。SMOP将matlab翻译成python。尽管matlab和数字python之间有明显的相似之处,但在现实生活中有足够的差异使手工翻译不可行。 SMOP生成人类可读的蟒蛇,这似乎也比八度快。速度有多快?表1显示了“移动家具”的计时结果。似乎对于该程序,转换为python导致加速大约两倍,并且 使用cython 将SMOP运行时库编译runtime.py为C 实现了额外的两倍加速。这个伪基准测量标量性能,而我的解释是标量计算对八度组不太感兴趣。源代码W
2021-05-08 03:11:02
1533
原创 Hive配置管理总结
hive_site.xml配置<property> <name>hive.metastore.warehouse.dir</name> <value>/home/local/hive-metastore-dir/warehouse</value></property><property> <name>javax.jdo.option.ConnectionURL</name>
2021-05-06 22:11:08
217
原创 Introduction to Machine Learning课后习题答案
Introduction to Machine LearningSolutions to Exercise by Ethem Alpaydn
2021-05-06 20:31:27
744
1
原创 Mysql 最终解决only_full_group_by问题
检查你的语法,没有像 select A,B group by A的group by 基本语法是select A,sum(),min() from t group by Aselect A,B,sum() from t group by A,B真要获得B字段,自关联子查询select tt.A,t.B from (select A,sum(),min() from t group by A) tt, t where t.A=tt.A改写你的语句,别把sqlmode 关了 极其不负责任...
2021-05-06 16:08:21
269
原创 Python eval()函数
eval(source[, globals[, locals]]) -> value 功能:将字符串str当成有效的表达式来求值并返回计算结果。 参数: source:一个Python表达式或函数compile()返回的代码对象 globals:可选。必须是dictionary locals:可选。任意map对象 说白了就是他可以让把字符串转化成真正python支持操作,打比方eval(“import(‘os’).system(‘ls’)”)eval(“i
2021-05-04 22:18:32
620
原创 Utraledit替换正则表达式
效果具体操作引擎平台删除空行替换 %[ ^t]++^p为 空串UtralEditWindows删除空行替换 ^(\s*)\r\n 为 空串unixWindows删除空行替换 ^(\s*)\n 为 空串unixLinux删除行尾空格替换 [ ^t]+$ 为 空串UtralEditWindows删除行首空格替换 %[ ^t]+ 为 空串UtralEditWindows每行设置为固定的4个空格开头替换 %[ ^t]++^([~ ...
2021-05-04 01:05:52
292
原创 剑破冰山之十一章 层次查询
层次查询的函数的两种方式:SYS_CONNECT_BY_PATHWMSYS.WM_CONCAT()语法:SELECT…START WITH…CONNECT BY PRIOR X1=X2练习数据,中国省份部分城市和区号(没有台湾省)insert into prov_cw_area (ID,GOV_CODE,LEVEL1_ID,AREA_CODE,DEP_CODE,SORT,LEVEL2_ID, NAME,CLASSID) values (366, 'KIZ', 6, '0908', null,
2021-05-03 23:34:07
400
原创 剑破冰山之第十六章 管道函数
管道函数是表函数的一种,语法类似select * from table() 所有的数据都加载到内存,然后输出,举例:CREATE OR REPLACE TYPE num_list IS TABLE OF NUMBER;CREATE OR REPLACE FUNCTION pipe_num(p_max NUMBER) RETURN num_list PIPELINED ISBEGIN FOR i IN 1..p_max LOOP PIPE ROW(i); END LOO
2021-05-03 22:46:31
104
原创 剑破冰山笔记之第七章 where in list的问题
where in list的问题一般有三种方法一、使用PL/SQL集合和TABLE函数TABLE函数解决问题常走nested loop+索引主要的hint有 first_rows 、index、 cardinality(有时候不起作用)接下来会讲不起作用的原因技巧使用rownum使用rownum>=0二、使用INSTR和SUBSTR三、使用正则表达式...
2021-05-02 22:44:20
95
原创 剑破冰山笔记之第六章 自动类型转换
DATE格式转换问题SQL> SELECT TO_DATE(SYSDATE,'yyyymm')From dual; SELECT TO_DATE(SYSDATE,'yyyymm')From dual ORA-01843: 无效的月份此时sysdate 自动转换为to_char类型 SQL> alter session set nls_date_format='yyyymm'; Session altered SQL> SELECT TO_DATE(SYSDATE,'
2021-05-02 22:40:55
87
原创 剑破冰山笔记之第四章 NULL和CHAR
''和null''是与null是有区别的,但是case里是一样的select dump(null),dump('') from dual;select case when '' is null then null else not null end from dual;任何和null的操作都是nullselect null+10 from dual; NULL+10----------select null||'abc' from dual;select concat(null
2021-05-02 22:27:19
151
原创 剑破冰山笔记之第二章 常用工具和使用方法
求1…10的质素DECLAREk NUMBER:=0.0;flag BOOLEAN:=TRUE;BEGINFOR i IN 1..10 LOOP SELECT sqrt(i) INTO k FROM dual; FOR j IN 2..k LOOP IF mod(i,j)=0 THEN flag:=FALSE; EXIT; END IF; END LOOP; .
2021-05-02 22:17:50
126
原创 剑破冰山笔记之第三章 探索Merge方法
merge的使用业务上用t1表去更新t2表,匹配的更新,不匹配的插入 drop table t1; create table t1(name varchar2(20),money number); insert into t1 values('A',10); insert into t1 values('B',10); drop table t2; create table t2 (name varchar2(20),money number); insert into t2 value
2021-05-02 22:12:55
149
翻译 sparkstreaming对接kafka数据,在idea程序上出现警告信息并卡住不动的解决办法
spark jira 用中文的同学看了我笑了,牛啊Unexpected delay before fetch response transmissionDetailsType:BugStatus:OpenPriority: MajorResolution: UnresolvedAffects Version/s:0.9.0.0, 0.9.0.1, 0.10.0.0, (3)0.10.0.1, 0.10.1.0, 0.10.1.1Fix Version/s:NoneComponent
2021-05-02 17:21:51
888
转载 Mysql 基于GTID的主从复制
目录1. GTID的格式和存储1.1 GTID 集1.2 mysql.gtid_executed 表1.3 mysql.gtid_executed 表压缩2. GTID 生命周期2.1 生命周期步骤:2.2 gtid_purged3. 使用GTID搭建主从3.1 环境准备3.2 配置GTID主从的参数3.3 在master上操作3.4 在slave上操作3.5 过滤掉已执行过的gtid3.6 配置主从4. 使用gtid进行复制的限制4.1 非事务性存储引擎的更新4.2 CREATE TABLE … SELE
2021-05-02 14:34:18
408
转载 Mysql 性能优化limit
MySQL的limit给分页带来了极大的方便,但数据量一大的时候,limit的性能就急剧下降。同样是取10条数据两种方式: select * from test limit 10000,10 select * from test limit 0,10 就不是一个数量级别的。 网上也很多关于limit的五条优化准则,都是翻译自MySQL手册,虽然正确但不实用。今天发现一篇文章写了些关于limit优化的,很不错。 文中不是直接使用limit,而是首先获取到offset的id然后直接使用li
2021-05-02 03:03:00
360
原创 Python lambda问题
在lambda中想简单无别名参数好像不行,只能全局变量和局部变量显示声明:a={‘a’:1}func(lambda key:a[key],a)没有别名,lambda无法支持:func(lambda key:?[key],{‘a’:1})>>> dir()['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__']>>>
2021-05-02 02:10:20
115
原创 mysql mysqldump命令
备份所有数据库:mysqldump -uroot -p --all-databases > /backup/mysqldump/all.db备份指定数据库:mysqldump -uroot -p test > /backup/mysqldump/test.db备份指定数据库指定表(多个表以空格间隔)mysqldump -uroot -p test t1 t2 > /backup/mysqldump/2table.db备份指定数据库排除某些表mysqldump -uroot -
2021-05-01 14:48:00
107
原创 lombok val
With Lombokimport java.util.ArrayList;import java.util.HashMap;import lombok.val;public class ValExample { public String example() { val example = new ArrayList<String>(); example.add("Hello, World!"); val foo = example.get(0);
2021-04-28 20:52:34
125
转载 mysql 通过两种方式增加从库——不停止mysql服务
通过两种方式增加从库——不停止mysql服务一般在线增加从库有两种方式,一种是通过mysqldump备份主库,恢复到从库,mysqldump是逻辑备份,数据量大时,备份速度会很慢,锁表的时间也会很长。另一种是通过xtrabackup工具备份主库,恢复到从库,xtrabackup是物理备份,备份速度快,不锁表。为什么不锁表?因为自身会监控主库日志,如果有更新的数据,就会先写到一个文件中,然后再回归到备份文件中,从而保持数据一致性。现在生产环境MySQL数据库是一主一从,由于业务量访问不断增大,故再增加
2021-04-28 18:52:17
3024
原创 Python filter函数的基本用法
filter函数用来过滤数据,可以通过指定函数对数据处理后过滤,是fun(x) for x in inter(x) if x.value >0 的加强版。1.基本示例:def is_odd(n): return n % 2 == 1newlist = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])print(f'odd:{newlist}')print(f'odd:{list(newlist)}')输出:odd:<fil
2021-04-27 10:43:03
599
原创 Python 迷惑行为
看下如下代码,1是如何消失的: n1=1e18 n2=-1e18 print(f'result={ n1+1+n2 }')结果:result=0.0
2021-04-26 14:42:57
111
原创 parquet增量支持增删改方案
痛点:parquet文件在离线数仓能提升几十倍的读性能,但是只支持只读,一般做法是定时任务全量刷新。同时离线需求复杂,依赖表多且数据量都很大,时间窗口T+1,要在窗口期内把所有依赖表每次都全量刷不太现实delta lake是在2019 spark conf上,databricks开源的产品,大概看了下感觉其他都次要的,主要还是支持增删改:https://blog.youkuaiyun.com/wypblog/article/details/102889946https://blog.youkuaiyun.com/dafei
2021-04-25 08:06:39
1580
转载 sed命令使用方法
1. Sed简介sed是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。以下介绍的是Gnu版本的Sed 3.02。2. 定址可以通过定址来定位你所希望编辑的行,该地址用数字构成,用逗
2021-04-25 01:46:01
1026
原创 mysqldump 整库恢复指定表
mysqldump备份指定数据库,如ivy[mysql@zhddx01]$ mysqldump -udbivy -p123456 -F -R --events --databases ivy |gzip >ivy_$(date +%F).sql.gz恢复被删除表的表结构[mysql@zhddx01]$ gunzip -c ivy_2018-07-25.sql.gz |sed -e ‘/./{H;$!d;}’ -e ‘x;/CREATE TABLE acjbill/!d;q’ |mysql -ud
2021-04-25 01:29:36
685
转载 mysql 行格式压缩效果及性能影响测试
MySQL InnoDB表支持行格式压缩,压缩后的表能够显著减少磁盘空间占用,但是压缩功能也会造成一定的性能损耗,比如加重CPU的负载,降低数据库吞吐量。本文通过测试案例,来具体了解MySQL InnoDB行格式压缩的效果以及对性能的影响。MySQL版本:5.7.19 测试工具:sysbench,10张表,单张表1000w数据,32线程并发 测试场景:read_only,write_only,read_write行格式压缩语法:ALTER TABLE sbtest1 ROW_FORMAT=COM
2021-04-24 21:09:55
1526
转载 mysql表压缩
一、表压缩概述:表压缩可以在创建表时开启,压缩表能够使表中的数据以压缩格式存储,压缩能够显著提高原生性能和可伸缩性。压缩意味着在硬盘和内存之间传输的数据更小且占用相对少的内存及硬盘,对于辅助索引,这种压缩带来更加明显的好处,因为索引数据也被压缩了。压缩对于硬盘是SSD的存储设备尤为重要,因为它们相对普通的HDD硬盘比较贵且容量有限。我们都知道,CPU和内存的速度远远大于磁盘,因为对于数据库服务器,磁盘IO可能会成为紧要资源或者瓶颈。数据压缩能够让数据库变得更小,从而减少磁盘的I/O,还能提高系统吞吐
2021-04-24 21:03:06
401
转载 mysql长事务
# 查询所有正在运行的事务及运行时间select t.*, TO_SECONDS(NOW())-TO_SECONDS(t.trx_started) idle_time from INFORMATION_SCHEMA.INNODB_TRX t \G # 查询事务详细信息及执行的SQLselect now(),(UNIX_TIMESTAMP(now()) - UNIX_TIMESTAMP(a.trx_started)) diff_sec,b.id,b.user,b.host,b.db,d.SQL_TEX
2021-04-24 19:48:38
132
原创 mysql MyISAM和InnoDB表的区别
表类型功能对比MyISAM表InnoDB表默认引擎时间5.1及之前的版本5.1之后版本事务处理不支持支持锁最小粒度全表锁行锁外键约束不支持支持存储结构文件类型:.frm存储表定义 .MYD数据 .MYI索引数据和索引存储在一个.ibdata数据文件中表空间大小可以被压缩,理论支持65536TB,通常是由操作系统对文件大小的限制决定理论最大64T,通常是由操作系统对文件大小的限制决定全文索引支持不支持COUNT问题准...
2021-04-24 19:10:58
90
原创 英语学习笔记
方法小时候学英语太教科式,不是教科式学习不好,只是有缺点。因为教科书内英式英语和美式英语混着用,搞到后面就比较刻意分一下,但正常人说话谁没事觉得自己说话不地道呢。还有经典的WC,一点用都没有还不如restroom或者bathroom。平时书本对话看看就得了,不用背,谁说话按谱呢。音标要学,语气重要,傻子背课文才注重快。学习英语最好是课程学习和随机学习结合,也适用于其他语言。课程学习就假定你是英国或者美国小孩,生活在纽约或者加州一个区,不管世界经济,联合国新闻什么的,只管吃喝拉撒,高兴生气都表
2021-04-21 15:14:42
255
原创 mermaid画流程图的局限性
缺点:子图文本说明的位置只能置顶居中,不能置底输入框文本不能环绕和外嵌同子图内(框内)流程图不能对齐#mermaid-svg-2GLyWbJIV5prJuMG .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-2GLyWbJIV5prJuMG .label text{fill:#333}#mermaid-sv
2021-04-20 14:32:59
810
转载 阿里SQL编写规范
看了下阿里的SQL编写规范,可以拿来当模板,其中有一个地方个人不怎么喜欢编码原则SQL代码的编码原则如下:代码功能完善。代码行清晰、整齐,代码行的整体层次分明、结构化强。代码编写充分考虑执行速度最优的原则。代码中需要添加必要的注释,以增强代码的可读性。规范要求并非强制性约束开发人员的代码编写行为。实际应用中,在不违反常规要求的前提下,允许存在可以理解的偏差。SQL代码中应用到的所有SQL关键字、保留字都需使用全大写或小写,例如select/SELECT、from/FROM、where/WH
2021-04-19 23:48:50
1191
转载 甲骨文确认关闭中国研发中心
2019年3月,就有消息称,甲骨文中国研发中心或将面临整体裁撤。5月7日上午9点,甲骨文公司正式通知关闭中国研发中心,首批裁员900余人。甲骨文在中国研发中心员工总数约为1600人,据媒体报道,包括北京等地方,首批裁员900余人,近六成员工被裁,其中超500人来自北京研发中心。据了解,CDC将被整个关闭成为内部共识,第二批或许将在7月进行。甲骨文官方称,中国研发中心的调整是全球研发团队调整的一部分,目的是为了在全球范围内优化研发团队的配置,探索云技术模式下最好的客户体验,也不断扩展甲骨文的运营业务。
2021-04-19 22:46:18
1988
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人