大数据接触心得 (转)

http://www.594jsh.cn/Look.asp?id=67
  • 不是经验技巧,也不是技术指导,只是根据自己目前做的一点小心得
    大数据查询最重要提速的就是索引,所以很多问题都是围绕索引来改
    主键必不可少,按主键查询和排序是最快的
    其他根据需求建立相关非聚集索引,或组合索引
    表结构设计尤为重要,不可让索引失效
    1为空字段会对索引失效
    2对字段里的值进行处理(substring(catecode,1,4)=1000)也会,只有整个字段作为查询对比条件索引才起作用
    3对索引字段里值是多个用分割符隔开的,索引也会失效
    4like %d%索引也会失效
    5注意in的效率在大数据表里查询效率超低,尽量少用
    6对于关联大数据量的表也是慢就一个字,宁愿多建几个字段,也不要进行关联.
    7还有能够用int的尽量用int类型来标识,比文本查询效率会快些
    8对于只读,尽量用只向前方式读取
    9对于大数据统计,且要分类统计慎用count(很耗CPU)
    10能用视图就用视图来替到页面上的SQL语句,这样在内存中执行,毕竟现在的服务器配置都不是很差
    11在SQL自定义函数里少用查询大数据表,大数据分页,需要哪几条,提几条,根据pagesize来读取,不要一次性的把记录提出来,如果一次性提出几万,一般很慢,超过几十万,几百万,就挂了,条件一层层筛选后查询效率快N多
    12小细节注意的,字段长度实际需要多长就设多长,不要随意设置
    13尽量少一次性输出几千或几万条text类型的字段
    14需要什么读什么
    15记录集和数据库连接对象即开即关
    16大数据里排序是最耗时的,所以排序字段建索引是最重要的
  • posted @ 2007-11-29 15:30  jambol  阅读(355)  评论(0编辑  收藏  举报