在Mac OS 10.11编译64位hadoop

折腾缘由

Mac编译hadoop网上资料很多,但实际上还需根据自己的环境一步一步来,升级mac后编译过程莫名其妙出错,后来在stackoverflow上有人遇到类似的问题,但不完全一样,折腾了一天,记录下来,以备后查。

阅读更多

RVM安装Ruby

RVM Install

rvm:Ruby Version Manager,是ruby的版本管理器,包括ruby的版本管理和gem库管理(gemset),它允许多个ruby版本存在。
rvm安装

1
curl -L https://get.rvm.io | bash -s stable

阅读更多

Explain查看select执行计划

EXPLAIN

EXPLAIN可以查询SQL的执行计划(QEP),根据执行计划可以查看是否存在全表扫描,是否有无效的索引等,我们可以针对性的优化SQL,写出较高性能的查询。

阅读更多

PROCEDURE ANALYSE分析表结构

procedure analyse

在项目初期,设计数据表时,可能无法根据需求准确的设计出符合实际情况的字段,可以根据需求先选择较为合适的字段类型,在项目上线一段时间,有了一定数据量后,可以用procedure analyse( )来分析表结构,此时可以根据数据的实际情况来修改字段的数据类型。

阅读更多

索引杂谈

前缀索引和索引选择性

有时候为存储较长数据的列增加完整长度索引,会浪费不少空间,不是一个很好的方式,从索引的选择性考虑(索引选择性指不重复的索引值和数据的总数比值),索引的选择性越高则查询效率越高,所以可以考虑选择列的前缀作为索引,以满足查询性能。
TEXTBLOB类型列如果要设置索引,必须使用前缀索引,MySQL不允许索引这些类型列的完整长度。

阅读更多