自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

bitcarmanlee的博客

https://github.com/bitcarmanlee/easy-algorithm-interview-and-practice 同步更新,欢迎star

  • 博客(51)
  • 收藏
  • 关注

原创 python 正则匹配电话与ip

有一段时间没写正则表达式,略有点生疏,赶紧写两个练练手#!/usr/bin/env python#coding:utf-8import re#匹配电话号码def match_phone_num(): phone_num = re.compile("0\d{2}-\d{8}|0\d{3}-\d{7}") search = phone_num.search("010-12345678

2016-03-31 17:29:15 1957

原创 python解析json串与正则匹配对比

现在有如下格式的json串: “detail_time”:”2016-03-30 16:00:00”,”device_id”:”123456”,”os”:”Html5Wap”,”session_flow_id”:”1d1819f3-8e19-4597-b50d-ba379adcd8e5”,”user_longitude”:0.0000,”user_latitude”:0.0000,”search_

2016-03-31 14:55:46 8887

原创 协方差与皮尔逊系数详解

标准差和方差一般是用来描述一维数据的,但现实生活中我们常常会遇到含有多维数据的数据集,最简单的是大家上学时免不了要统计多个学科的考试成绩。面对这 样的数据集,我们当然可以按照每一维独立的计算其方差,但是通常我们还想了解更多,比如,一个男孩子的猥琐程度跟他受女孩子的欢迎程度是否存在一些联系。 协方差就是这样一种用来度量两个随机变量关系的统计量,我们可以仿照方差的定义: 来度量各个维度偏离其均值的

2016-03-30 21:31:03 5998 1

原创 centos安装pip

要安装或升级pip,需要下载 get-pip.py然后运行以下命令 (需要管理员权限):$ sudo python get-pip.py[sudo] password for lei.wang:lei.wang 不在 sudoers 文件中。此事将被报告。将账号加入sudoers文件中,重复上诉命令,即可

2016-03-30 18:30:11 896

原创 ODS与EDW的区别

根据自己的理解与实际项目经验,说说ODS与EDW的异同。如果有不对的地方,欢迎大家批评指正。维基百科对于ODS的定义为”An operational data store (or “ODS”) is a database designed to integrate data from multiple sources for additional operations on the data. Un

2016-03-30 13:00:09 27190 2

原创 OLTP与OLAP的区别

OLTP和OLAP的区别联机事务处理OLTP(on-line transaction processing) 主要是执行基本日常的事务处理,比如数据库记录的增删查改。比如在银行的一笔交易记录,就是一个典型的事务。 OLTP的特点一般有: 1.实时性要求高。我记得之前上大学的时候,银行异地汇款,要隔天才能到账,而现在是分分钟到账的节奏,说明现在银行的实时处理能力大大增强。 2.数据量不是很大,生

2016-03-30 10:00:05 62917 2

原创 grep 常用参数

grep的基本使用方式: grep ‘xxx’ file grep ‘xxx1 xxx2’ file cat file | grep ‘xxx’ pip | grep ‘xxx’

2016-03-29 17:43:24 1367

转载 sql语句查询执行顺序

sql查询语句的处理步骤如下:--查询组合字段(5)select (5-2) distinct(5-3) top(<top_specification>)(5-1)<select_list>--连表(1)from (1-J)<left_table><join_type> join <right_table> on <on_predicate> (1-A)<left_table>

2016-03-29 12:12:19 35803 5

原创 二分查找 python实现

二分查找的python查找,经典的面试题,啥也不多,直接上代码def binSearch(list,num): low = 0 high = len(list) - 1 middle = (high + low) / 2 while(low <= high): if list[middle] > num: high

2016-03-28 22:02:51 3832 4

转载 PipeMapRed.waitOutputThreads(): subprocess failed with code N

经常遇到的exception是:PipeMapRed.waitOutputThreads(): subprocess failed with code N"OS error code 1: Operation not permitted""OS error code 2: No such file or directory""OS error code 3: No such p

2016-03-28 21:57:28 2931

原创 hive like与rlike的区别

like与rlike的区别:like不是正则,而是通配符。这个通配符可以看一下SQL的标准,例如%代表任意多个字符。rlike是正则,正则的写法与java一样。'\'需要使用'\\',例如'\w'需要使用'\\w'hive> select "aaaaa" like "%aaa%" from test_struct limit 10;Total jobs = 1...OK

2016-03-28 14:55:31 83736

转载 hbase shell 入门

下面我们将以“一个学生成绩表”的例子来详细介绍常用的 HBase 命令及其使用方法。这里 grad 对于表来说是一个列,course 对于表来说是一个列族,这个列族由三个列组成 china、math 和 english,当然我们可以根据我们的需要在 course 中建立更多的列族,如computer,physics 等相应的列添加入 course 列族。(备注:列族下面的列也是可以没有名字

2016-03-25 22:35:32 892

原创 数据库事务ACID

ACID,是指数据库管理系统(DBMS)在写入/更新资料的过程中,为保证事务(transaction)是正确可靠的,所必须具备的四个特性:原子性(atomicity,或称不可分割性)、一致性(consistency)、隔离性(isolation,又称独立性)、持久性(durability)。在数据库系统中,一个事务是指:由一系列数据库操作组成的一个完整的逻辑过程。例如银行转帐,从原账户扣除

2016-03-25 16:54:24 659

转载 MongoDB最佳实践

将MongoDB加入到我们的服务支持列表中,是整个团队年初工作计划中的首要任务。但我们感觉如果先添加一项对NoSQL存储的支持,而不是先升级已支持的关系型数据库,可能对用户不太好,毕竟目前的用户都使用关系型数据库。所以我们决定将引入MongoDB这项工作放到升级MySQL和PostgreSQL之后来做。到目前为止,MySQL 5.5的Beta版已在进行中,而PostgreSQL的9.1 Bet

2016-03-25 14:38:46 584

原创 shell 逐行读取文件

很常见的需求,话不多说,直接上代码#!/bin/bash#cat出来,for循环function f1(){ IFS="" for line in `cat test.txt` do echo $line done echo '------------------'}#文章重定向给read处理function f2()

2016-03-25 10:57:34 1489

原创 shell判断字符串为空

shell中判断字符串为空的几种方式,一一列举#!/bin/bashtest_str=""if [ "$test_str" = "" ];then echo "NULL!"fiif [ x"$test_str" = x ];then echo "NULL!"fiif [ -z "$test_str" ]; then echo "NULL!"

2016-03-25 10:45:12 2242

转载 RSA 数字签名 免密码登录

其实公钥和私钥都可以用来加密或解密---只要能保证用A加密,就用B解密就行。至于A是公钥还是私钥,其实可以根据不同的用途而定。例如说,如果你想把某个消息秘密的发给某人,那你就可以用他的公钥加密。因为只有他知道他的私钥,所以这消息也就只有他本人能解开,于是你就达到了你的目的。但是如果你想发布一个公告,需要一个手段来证明这确实是你本人发的,而不是其他人冒名顶替的。那你可以在你的公告开头

2016-03-24 22:46:57 1123

转载 ssh 免密码登录

为了更好的理解SSH免密码登录原理,我们先来说说SSH的安全验证,SSH采用的是”非对称密钥系统”,即耳熟能详的公钥私钥加密系统,其安全验证又分为两种级别。1. 基于口令的安全验证这种方式使用用户名密码进行联机登录,一般情况下我们使用的都是这种方式。整个过程大致如下:(1)客户端发起连接请求。(2)远程主机收到用户的登录请求,把自己的公钥发给客户端。

2016-03-24 22:44:04 1906

原创 sed 替换

sed 's/^/添加的头部&/g' //在所有行首添加sed 's/$/&添加的尾部/g' //在所有行末添加sed '2s/原字符串/替换字符串/g' //替换第2行sed '$s/原字符串/替换字符串/g' //替换最后一行sed '2,5s/原字符串/替换字符串/g' //替换2到5行sed '2,$s/原字符串/替换字符串/g' //替换2到最后一行

2016-03-24 22:36:26 969

原创 awk 字符串替换 gsub

gsub(r,s)在整个$0中用s替代rgsub(r,s,t)在整个t中用s替代rawk-F","'{str=gsub(/\t*|*$/,"",$3);ret=$1","$2","$3","NR;printret}'去除第三个字段的空格与制表符awk-F"\t"'{if($3=="吉林"){gsub($3,"吉林省",$3);pr

2016-03-24 22:29:39 21958

原创 linux shell将字符串分割数组

经常用将字符串分割为数组的需求。在shell中常用的方式为以下两种#!/bin/bashfunction split_1(){ x="a,b,c,d" OLD_IFS="$IFS" IFS="," array=($x) IFS="$OLD_IFS" for each in ${array[*]} do echo

2016-03-24 18:33:21 28696

原创 shell 字符串操作

求字符串长度:$ x="a:b:c:"方法一:$ echo ${#x}6方法二:用expr命令$ expr length $x6PS:expr属于外部命令,一般来说外部命令比内部命令要慢很多$ time for i in $(seq 1 10000);do len=${#x};donereal    0m0.087suser    0m0.0

2016-03-24 17:04:09 434

原创 org.apache.hadoop.fs.ChecksumException: Checksum error

想put文件到hdfs上,遇到org.apache.hadoop.fs.ChecksumException: Checksum error的为本土hadoop fs -put cheap_all /tmp/wanglei/cheap16/03/24 09:27:52 INFO fs.FSInputChecker: Found checksum error: b[0, 4096]=313

2016-03-24 09:48:08 7013 1

原创 shell 计算代码运行时间

做性能测试的时候,经常需要得到程序运行时间。写了个简答的shell脚本,供同学们参考。#!/bin/bashfunction handle(){ start=$(date +%s%N) start_ms=${start:0:16} awk '{a[$1]++} END{print length(a)}' breakfast_all receptions_all

2016-03-23 18:07:49 10302 3

原创 python解析配置文件

最近有个python小项目,有一堆文件需要处理。所以将文件位置写入配置文件中,顺便写了一个解析配置文件的类,仅供大家参考,需要的同学请拿走#!/usr/bin/env python#coding:utf-8#-----------------------------------------------------# author: wanglei# date : 20160

2016-03-23 16:02:35 1174 1

转载 ctr预估之特征工程

互联网广告综述之点击率特征工程一.互联网广告特征工程博文《互联网广告综述之点击率系统》论述了互联网广告的点击率系统,可以看到,其中的logistic regression模型是比较简单而且实用的,其训练方法虽然有多种,但目标是一致的,训练结果对效果的影响是比较大,但是训练方法本身,对效果的影响却不是决定性的,因为训练的是每个特征的权重,权重细微的差别不会引起ctr的巨大变化。在训练方法

2016-03-23 15:47:50 8860

原创 hive 复合结构Map、Struct详解

Map详解hive里支持map的结构如下:(key1, value1, key2, value2, ...) Creates a map with the given key/value pairs建表语句:create table test_map(name string, score map)ROW FORMAT DELIMITEDFIELDS TERMINAT

2016-03-22 19:33:51 12531 4

原创 hive基本命令

建表语句,表中有map结构:hive> create table test_score(name string, score map)ROW FORMAT DELIMITEDFIELDS TERMINATED BY '\t'COLLECTION ITEMS TERMINATED BY ','MAP KEYS TERMINATED BY ':'建分区表:hive>

2016-03-22 19:30:13 911

原创 python处理文件效率对比awk

有如下三文件:wc -l breakfast_all cheap_all receptions_all 3345271 breakfast_all 955890 cheap_all 505504 receptions_all 4806665 总用量head -3 cheap_alla trueb truec true三个文件的

2016-03-22 18:44:06 5597

原创 python基本文件操作

获取当前路径>>> import os>>> os.getcwd()'/home/lei.wang/merge_user_labels'>>> os.path.abspath('.')'/home/lei.wang/merge_user_labels'>>> os.path.abspath(os.curdir)'/home/lei.wang/merge_user_lab

2016-03-22 12:49:48 602

转载 Web安全之SQL注入攻击技巧与防范

在Web1.0时代,人们更多是关注服务器端动态脚本语言的安全问题,比如将一个可执行脚本(俗称Webshell)通过脚本语言的漏洞上传到服务器上,从而获得服务器权限。在Web发展初期,随着动态脚本语言的发展和普及,以及早期工程师对安全问题认知不足导致很多”安全血案”的发生,至今仍然遗留下许多历史问题,比如PHP语言至今仍然无法从语言本身杜绝「文件包含漏洞」(参见这里),只能依靠工程师良好的代码规范和

2016-03-21 12:33:41 2433

转载 血腥!实况转播SQL注入全过程,让你知道危害有多大。

前阵子发现公司的网站有SQL注入漏洞,向项目经理提了以后,得到的答复异常的冷淡:“早就知道,这种asp的网站肯定有漏洞,要是Asp.net的网站就没问题”,先暂不评价此说法对错,如此冷淡的反应只能说明了对SQL注入的无知,今天就实况转播,来告诉大家SQL注入究竟有多大的危害。初步注入--绕过验证,直接登录公司网站登陆框如下:可以看到除了账号密码之外,还有一个公司名的输入框,根据

2016-03-21 12:30:37 1343

转载 Linux服务器沦陷为肉鸡的全过程实录

Linux服务器沦陷为肉鸡的全过程实录Linux服务器沦陷为肉鸡的全过程实录从防火墙瘫痪说起查找黑客行踪的方法沦陷过程分析1 oracle用户密码被破解2 黑客动作推演3 攻击工具一览深刻教训1 从防火墙瘫痪说起2015年3月10日,还没到公司就被电话告知办公室无法正常连接互联网了,网速非常慢,无法正常浏览网页。急急忙忙感到公司,开始查找问题

2016-03-21 10:43:09 1283

原创 数学公式排版测试

2016-03-20 22:28:03 486

转载 列存储中常用的数据压缩算法

列存储,作为一种针对数据查询和数据分析设计的数据存储策略,在“大数据”越来越普及的今天可以说是相当地火热。相较于行存储,列存储的最大优势有二,其一就是查询涉及到数据库的哪几个列就读哪几个列,不读一点与查询不相关的列,大大减少了数据的读取,其二就是数据库数据分为多个独立的列来存储,相同数据类型的数据连续存储在一起,易于数据压缩,而这再次减少了数据的读取。以上正是列存储在处理数据查询和数据分析方面的天

2016-03-20 21:35:25 6298

转载 NoSQL 数据库的使用场景

摘要:对比传统关系型数据库,NoSQL有着更为复杂的分类——键值、面向文档、列存储、图数据库。这里就带你一览NoSQL各种类型的适用场景及一些知名公司的方案选择。在过去几年,关系型数据库一直是数据持久化的唯一选择,数据工作者考虑的也只是在这些传统数据库中做筛选,比如SQL Server、Oracle、MySQL。甚至是做一些默认的选择,比如使用.NET的一般会选择SQL Serve

2016-03-20 21:27:01 1484

原创 hive partition 分区详解二

hive建分区表create external table if not exists cheap_hotel_user(device string, booking_freq int, book_price string)partitioned by (day string)row format delimited fields terminated by '\t'locatio

2016-03-19 23:24:44 6978

原创 hive partition 分区详解一

一.查看分区命令1.show partitions xxxhive> show partitions xxx;OKday=20150908day=20151020day=20151021day=20151022...day=20160318Time taken: 0.139 seconds, Fetched: 144 row(s)由此可见上述命令显示了基

2016-03-19 22:42:40 31614

转载 storm流式处理框架

Hadoop的高吞吐,海量数据处理的能力使得人们可以方便地处理海量数据。但是,Hadoop的缺点也和它的优点同样鲜明——延迟大,响应缓慢,运维复杂。      有需求也就有创造,在Hadoop基本奠定了大数据霸主地位的时候,很多的开源项目都是以弥补Hadoop的实时性为目标而被创造出来。而在这个节骨眼上Storm横空出世了。      Storm带着流式计算的标签华丽丽滴出场了,看

2016-03-18 23:39:41 903

原创 oracle instr函数 判断字段中是否有换行符

在oracle中:chr(9) 表示水平制表符chr(10)表示换行键chr(13)表示回车键判断字段中是否有换行符写法selecthotel_namefromDW_HOTELORDER_FWHEREinstr(HOTEL_NAME,chr(10))>0andROWNUMtips:1.注意网上不少文章写的是chr(13),经过实测chr(

2016-03-18 17:31:10 6321

空空如也

空空如也

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

TA关注的人

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