在postgreSQL中使用正则表达式

PostgreSQL真的很强,查询时候还可以用正则表达式。

比如,要查询某个字段是以字母开头的纪录 {{{#!highlight sql select * from dummy where inf1 ~* '^[A-Z]' }}} 以数字开头的纪录 {{{#!highlight sql select * from dummy where inf1 ~ '^[0-9]' }}} 其他的很复杂的查询,只需修改操作符以及正则表达式。

正则表达式的操作符使用方法如下: {{{ ~ 匹配正则表达式,大小写相关。 例: 'thomas' ~ '.thomas.'
~ 匹配正则表达式,大小写无关。 例: 'thomas' ~ '.Thomas.'
!~ 不匹配正则表达式,大小写相关。例: 'thomas' !~ '.Thomas.'
!~ 不匹配正则表达式,大小写无关。例: 'thomas' !~ '.vadim.' }}} 如果不是特别复杂的条件,用LIKE(大小写相关)或者ILIKE(大小写无关)就可以实现。

more ...

python技巧

1到100中6出现了几次? {{{#!highlight python sum([str(x).count('6') for x in range(1,101) ])

list(itertools.ifilter(lambda x: str(x).count('6') > 0, range(1,101))) }}}

实现一个函数,给一个数,只能被5整除时返回字符a,只能被7整除时返回字符b,同时能被5和7整除时返回ab,要求尽量少的使用求余运算。 {{{#!highlight python lambda n: n / 7 * 7 == n def fun(n) s = [] if n / 5 * 5 == n ...

more ...

阻止Google转换搜索链接地址

Firefox 安装 Greasemonkey:http://www.greasespot.net/

Chrome 安装 Tampermonkey:http://tampermonkey.biniok.net/crx/tampermonkey_retro.crx

然后安装 http://userscripts.org/scripts/show/125473

或者 {{{#!highlight javascript // ==UserScript== // @name Google Real Link // @namespace http://userscripts.org/scripts/show/125473 // @description Disable the Google search rewrite, always showing and using the ...

more ...

I. 8日 分配工作内容,review韵达网站代码

I. 9日 review网站代码,下午开会。 I. 10日 帮王雪凯查看sap的soap不通问题 ,查出是服务器没安装soap的php模块问题 I. 11日 找相应版本php,编译安装,测试通过 I. 12日 导出soa用户数据到ldap的代码编码,中途发现webservice不标准,与程序员说明。其让我与甘洪波联系,确认好再告诉他,说甘不让改。把xml标准发给甘,同意改。 I. 15日 进行xml解析,编写代码。 I. 16日 i. 软件开发过程改进启动会。上午开会预演。下午开会。 i. 导出数据中没有用户密码,所以无法进行登录验证,和甘,江沟通,取得用户密码。但xml文件过大,程序耗费内存太多,导致无法正常工作。待优化。 i. 帮徐如山处理90服务器另一版本PHP与odbc问题。 I. 17日 i. 程序优化后xml处理时间在1秒左右,优化完成 ...

more ...

银河系漫游指南

《银河系漫游指南》简介

'''缺少33章'''

银河系漫游指南

译者: 徐百柯

作者: 道格拉斯·亚当斯

ISBN: 753645757X

页数: 191

定价: 16.00

出版社: 四川科学技术出版社

出版年: 2005

书评:

无法抗拒——《波士顿环球报》



科幻小说,却又滑稽风趣到极点……古怪、疯狂,彻底跳出此前所有科幻小说的固有套路。——《华盛顿邮报》



主角阿瑟·邓特与库尔特·冯尼格笔下的人物颇为神似,全书充满对人类社会现实的嘲讽和批判。——《芝加哥论坛报》



一句话,这是有史以来最滑稽、最古怪的科幻小说,封面和封底之间,奇思妙想随处可见。——《图书周刊》



荷马史诗《奥德赛》的疯狂古怪版,书中人物漫游银河,带给读者无限的欢乐。——《出版周刊》

=== 内容简介: ===

地球被毁灭了,因为要在它所在的地方修建一条超空间快速通道。主人公阿瑟 ...
more ...

修改Linux内核的限制连接数

很多问题因这个而起,Nginx,memcached,php等连接数不够,都可能与这有关,所以装完Linux,第一件事,就要修改它。

1.当前测试 {{{

ulimit -n

1024

cat /proc/sys/fs/file-max

755070

ulimit -n 755070

}}} 2.编辑 /etc/sysctl.conf

在文件最末尾加入下面内容

{{{ fs.file-max = 755070 }}} 3.编辑 /etc/security/limits.conf 星号代表全局, soft为软件,hard为硬件,nofile为这里指可打开文件数。 {{{ soft nofile 755070 hard nofile 755070 }}} 4.编辑 /etc ...

more ...

优化Linux的内核参数来提高服务器并发处理能力

PS:在服务器硬件资源额定有限的情况下,最大的压榨服务器的性能,提高服务器的并发处理能力,是很多运维技术人员思考的问题。要提高Linux系统下的负载能力,可以使用nginx等原生并发处理能力就很强的web服务器,如果使用Apache的可以启用其Worker模式,来提高其并发处理能力。除此之外,在考虑节省成本的情况下,可以修改Linux的内核相关TCP参数,来最大的提高服务器性能。当然,最基础的提高负载问题,还是升级服务器硬件了,这是最根本的。

Linux系统下,TCP连接断开后,会以TIME_WAIT状态保留一定的时间,然后才会释放端口。当并发请求过多的时候,就会产生大量的TIME_WAIT状态的连接,无法及时断开的话,会占用大量的端口资源和服务器资源。这个时候我们可以优化TCP的内核参数,来及时将TIME_WAIT状态的端口清理掉。

本文介绍的方法只对拥有大量TIME_WAIT状态的连接导致系统资源消耗有效,如果不是这种情况下,效果可能不明显。可以使用netstat命令去查TIME_WAIT状态的连接状态,输入下面的组合命令,查看当前TCP连接的状态和对应的连接数量:

netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’

这个命令会输出类似下面的结果: {{{ LAST_ACK ...

more ...

用Composer管理PHP包

使用环境

=== Composer帮你解决如下问题: ===

你有一个项目,而它的运行依赖于一系列的类库
这些类库依赖于别的类库
Composer发现合适的版本下载、安装

=== 安装 ===

Composer包括两大逻辑部分:存储包;命令行应用程序,用来帮助你发现、下载、更新和分享代码。 {{{ $ cd/path/to/my/project $ curl -s http://getcomposer.org/installer| php #使用下列命令看是否安装成功 $ php composer.phar #便于使用,将其放到运行环境中 $ sudo mv composer.phar /usr/bin/composer }}} === 解析composer.json文件 ===

composer.json中声明了应用的依赖文件 {{{ $ php composer.phar install }}} === 自动加载 ===

安装后 ...

more ...

数据库和数据仓库的区别

简而言之,数据库是面向事务的设计,数据仓库是面向主题设计的。

数据库一般存储在线交易数据,数据仓库存储的一般是历史数据。

数据库设计是尽量避免冗余,一般采用符合范式的规则来设计,数据仓库在设计是有意引入冗余,采用反范式的方式来设计。

数据库是为捕获数据而设计,数据仓库是为分析数据而设计,它的两个基本的元素是维表和事实表。维是看问题的角度,比如时间,部门,维表放的就是这些东西的定义,事实表里放着要查询的数据,同时有维的ID。

单从概念上讲,有些晦涩。任何技术都是为应用服务的,结合应用可以很容易地理解。以银行业务为例。数据库是事务系统的数据平台,客户在银行做的每笔交易都会写入数据库,被记录下来,这里,可以简单地理解为用数据库记帐。数据仓库是分析系统的数据平台,它从事务系统获取数据,并做汇总、加工,为决策者提供决策的依据。比如,某银行某分行一个月发生多少交易,该分行当前存款余额是多少。如果存款又多,消费交易又多,那么该地区就有必要设立ATM了。

显然,银行的交易量是巨大的,通常以百万甚至千万次来计算。事务系统是实时的,这就要求时效性,客户存一笔钱需要几十秒是无法忍受的,这就要求数据库只能存储很短一段时间的数据。而分析系统是事后的,它要提供关注时间段内所有的有效数据。这些数据是海量的,汇总计算起来也要慢一些 ...

more ...

各种不同内存情况下的mysql配置文件

  1. (2012-10-19 08:18:39, 6.3 KB) [[attachment:my.cnf_128GB.txt]]
  2. (2012-10-19 08:18:18, 6.4 KB) [[attachment:my.cnf_16GB.txt]]
  3. (2012-10-19 08:17:57, 6.4 KB) [[attachment:my.cnf_1GB.txt]]
  4. (2012-10-19 08:18:05, 6.4 KB) [[attachment:my.cnf_2GB.txt]]
  5. (2012-10-19 08:18:22, 6.4 ...
more ...