`

大数据的存储和查询优化总结

阅读更多

最近的项目里需要对大数据量的数据进行存储和查询, 每天的基础数据大概在500w~1500w之间,  每1000w的数据大概会占用1.5GB~2GB的物理存储, 这对我们的数据库设计, 程序和服务器都是一个不小的挑战.  数据库我们用的是DB2, 下面是一些经验总结(不断更新中..):


1. 在大数据量的情况下,  如果 join的表只是为了数据过滤, 则应该考虑用子查询替换join


2. 避免在索引键上做计算, 即便这个计算很简单的, 因为如果索引键上加上计算的话, 将不能使用索引, 严重影响查询效率


3.  索引排序的选择, 主要考虑查询和插入的性能. 如果一个列在程序里是成不断增长的, 比如记录的创建时间, 则应该考虑用倒序(desc), 这样在插入数据时, 新索引的建立不会影响到之前索引的位置. 所以, 主键生成的策略也应该考虑到这一点, 如果用UUID的话, 因为字符串并不能保证顺序, 左右在插入的时候, 对索引的结构影响比较大; 而自动增长的主键则会避免这个情况, 当是尽量避免使用纯sequence, 因为这样既不方便数据的移植, 也会有seqiemce循环的问题; 时间格式加上sequence混合生成主键, 应该是一个不错的解决方案. 时间可以用yyyyMMddhh格式, 这样的主键也可以比较直观的看出记录的创建时间.


3. 把能够通过索引迅速缩小查询范围的条件放到前面


4. 使用ike: like 'x%' 将会使用索引,而like '%x'将不能使用索引,而且因为like检索时, 如果前面是固定的字符, 那么, 就可以跟索引键做对比, 如果前面是不固定的字符(比如%), 则无法利用索引. 且like的检索时间与字符串长度呈线性关系,使用VARCHAR代替CHAR可以去掉多余的空格,会加快检索


5. 如果可以, 使用 fetch first only 或 limit 限制结果集大小, 这样在大数据量的情况下, 可以更快的返回数据.


6. 在一开始做大表设计的时候, 就要充分考虑表的分区和扩展, 比如使用时间字段作为分区字段. 分区字段要尽量保证数据的均匀, 避免出现数据倾斜. 当然如果历史数据, 不经常用到的话, 还是优先考虑使用历史表来保存历史记录.


7. 如果查询和更新都比较频繁的话, 可以考虑使用数据库读写分离技术的, 不过如果查询对实时性要求比较高的话, 这种查询还是应该在主节点(复制插入)上执行. 


8. 大数据的删除. 主表上为了提高查询性能, 用了大概5-6个索引字段, 导致在删除这个表的数据时, 异常的慢, 即使删除一条也需要大概20-30秒. 而我们有时候要删除的数据是千万级的, 所以普通的delete几乎无法工作. 解决这个问题, 我们换了一种思路, 用update语句来将需要删除的数据与正常业务数据隔离, 比如将需要删除的数据的业务时间改为2000年前或者如果专门有的是否删除字段就更好了. 然后删除的任务就可以慢慢来做了. 正好我们的表分区是通过业务时间来做的, 这个时候, 将2000年前的数据通过分离表分区来独立出来, 再把这个表drop掉, 数据就删除了.


 

分享到:
评论
1 楼 ljl961890233bear 2014-07-28  
这也叫大数据?也就是SQL优化的一半方法、。。。。

相关推荐

    大数据开发的技巧总结以及入门教程知识点总结.docx

    SQL on Big Data:掌握Hive、Spark SQL、Impala等SQL-on-Hadoop工具,用于大数据查询与分析。 数据可视化:了解如何将大数据分析结果通过Tableau、PowerBI等工具呈现。 数据压缩:熟悉Snappy、Gzip等数据压缩算法...

    大数据学习总结.doc

    大数据现状、应用 通过分析和优化企业数据实现一种对未来的企业运营的精准的预测能力。采用一系列 的技术,从技术中获得洞察力,也就是BI或者分析;另外一个是分析路径,寻找关键绩 效指标,从仪表盘这样的工具进行...

    大数据存储系统I/O性能优化技术研究进展

    大数据存储系统的I/O性能是影响大数据应用整体性能的关键因素之一,总结了当前在存储系统架构、元数据I/O性能、数据I/O性能方面开展的大数据存储系统I/O性能优化工作,并指出了未来大数据存储系统I/O性能优化的一些...

    MySQL千万级大数据SQL查询优化知识点总结

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id ...

    大数据培训总结材料.doc

    大数据 简单的说,大数据(big data),是指无法在可承受的时间范围内用常规软件工具进行捕捉、管理和处理的数据 集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、 高增长率和多样化...

    3-5-美团大数据平台架构实践-谢语宸.zip

    文档的一大亮点是其对大数据平台性能优化的探讨,包括数据索引优化、查询优化、资源调度优化等方面。作者还分享了在面对高并发和数据洪流时,如何保持系统稳定性和扩展性的经验和策略。最后,文档总结了大数据平台在...

    大数据应用测试经验总结.pdf

    ⼤数据应⽤测试经验总结 ⼤数据应⽤测试经验总结 ⼤数据应⽤测试过程与传统的web系统有较⼤的不同,⼤数据应⽤测试通常会分为web侧和ETL侧测试,web侧基本就是功能测试,⽽ETL(Extracting-Transfroming- Loading)...

    大数据研究综述.docx

    大数据研究综述 摘要 :从大数据基本理论,大数据存储与分析处理技术和大数据应用研究三个角度说明当前研究热点,重点比较当前大数据处理工具的优缺点,并深入归纳总结了基于数据存储大数据处理技术,对未来研究进行...

    大数据系统基础(自主模式)-清华大学-王建民、徐葳、陈康等 视频.txt

    │ 0 2.1大数据和云计算关系概述.mp4 │ 1 2.2并行化理念.mp4 │ 10 2.11网络虚拟化:软件定义网络.mp4 │ 11 2.12软件定义网络实现.mp4 │ 12 2.13存储虚拟化:用户接口.mp4 │ 13 2.14存储虚拟化:分布式存储实现...

    邱剑-美团大数据的云之道.zip

    zip》总结了未来大数据和云计算融合的趋势,展望了技术进步将如何进一步推动大数据分析的深度和广度,为业界同仁提供了宝贵的参考和启示。这份文档不仅是对大数据和云计算技术的深刻剖析,更是对如何在现代企业中...

    大数据产业有哪几大分类,有什么特点,大数据发展到什么程度了.docx

    包括对大数据的去冗降噪技术、高效率低成本的大数据存储与有效融合技术、非结构化和半结构化数据的高效处理、适合不同行业的大数据挖掘分析工具和开发环境、大幅度降低数据处理、存储和通信能耗等技术的不断优化和...

    大数据关键技术(1).doc

    大数据处理关键技术一般包括:大数据采集、大数据预处理、大数据存储及管理、大数据 分析及挖掘、大数据展现和应用(大数据检索、大数据可视化、大数据应用、大数据安 全等)。 一、大数据采集技术 数据是指通过RFID...

    县域医共体大数据平台建设方案.docx

    县域医共体大数据平台建设方案 一、项目背景与目标 随着医疗信息化的发展,县域医共体...未来,随着技术的不断进步和应用场景的不断拓展,县域医共体大数据平台将不断完善和优化,为医疗事业的发展做出更大贡献。

    县域医共体大数据平台建设方案.pptx

    县域医共体大数据平台建设方案 一、项目背景与目标 随着医疗信息化的发展,县域医共体...未来,随着技术的不断进步和应用场景的不断拓展,县域医共体大数据平台将不断完善和优化,为医疗事业的发展做出更大贡献。

    大数据需要大分析.docx

    " 要想发现大数据中的价值, 远不是收集和存储数据那么简单。需要专门针对大数据的科学分析手段,还需要面向大数据的高效分析工具。简而言之,大数据需要大分析。"SAS 全球高级副总裁兼首席技术官Keith Collins 在...

    大数据PPT材料.docx

    大数据背后的商业机会 在实现大数据的过程中,硬件和软件供应商都可以找到合适的位置和方法来实现自身的价值,因为大数据的实现需要硬件具备足够的性能、灵活性以及可靠性和软件层面的优化支持。从目前的企业计算...

    智慧粮库大数据综合管理平台建设方案.ppt

    智慧粮库大数据综合管理平台建设方案旨在利用先进的信息和通信技术,实现...未来,随着技术的不断发展和粮库需求的不断变化,我们将持续优化智慧粮库大数据综合管理平台的功能和性能,为粮库的可持续发展提供有力支持。

    “大数据”的认识与思考.doc

    Gartner认为大数据是"需要新处理模式才能具有更强的决策力 、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产"。"大数据"的要义 是尽可能地收集众多可以相互叠加补充的信息,据以完成对"未来"的预测。...

    《大数据》读书心得.docx

    那么什么是大数据呢,正如IBM总结的那样:"大量化(Volume)、多样化(Variety)和快速化(Velocity)"就是"大数据"的显著特征。 二、管理法则:质量是数据时代的根本 数据能满足其既定的用途,它才有质量。如果不能满足...

    大数据实验报告总结体会-大数据挖掘流程及方法总结.pdf

    ⼤数据实验报告总结体会_⼤数据挖掘流程及⽅法总结 是新朋友吗?记得先点蓝字关注我哦~ 今⽇课程菜单 Java全栈开发 " Web前端+H5 ⼤数据开发" 数据分析 ⼈⼯智能+Python " ⼈⼯智能+物联⽹ 来源:⼩职(z_zhizuobiao...

Global site tag (gtag.js) - Google Analytics