几千万条数据,怎么让查询效率高起来?

大数据量的优化,自己总结了下,在自己的认知范围内,整理了两个大方面
一、sql语句方面的优化
1、使用索引查询
          1、造成全表查询的(索引失效的情况) :避免null值查询。索引列的数据不要大量重复。where语句中or(union替代)、in not in(between and)、like、!=和<>符号的使用。where子查询中使用参数引入(

 select id from t where num=@num 可以改为强制查询使用索引: select id from t with(index(索引名)) where num=@num

)、

where 子句中对字段进行表达式操作(select * from user where id/2 =100 强制改为select * from user where id =100*2)、where字句中对字段进行函数操作的、在where字句等号左面使用函数、算数运算及其他运算。


    

    

2、索引勿滥用

在where及order by涉及的列上建索引。索引并不是越多越好(最好不要超过6个)
         3、数据量的优化 :尽量使用数字型字段(字符增加存储开销)、尽可能的使用vachar/nvarchar代替char/nchar(节省存储空间),避免临时表过多的创建和删除,尽量使用表变量来代替临时表、尽量避免大数据量的返回、游标操作数据超过1万行不好等。
         4、java方面:尽量少早对象、大数据和小数据的操作分开、使用jdbc操作数据库、控制好内存,让数据流动,而不是全部在内存、做好缓存。
         5 、分区表的创建      
二、数据库的优化
         1 硬件调整性能 最有可能影响性能的是磁盘和网络吞吐量,解决办法扩大虚拟内存,并保证有足够可以扩充的空间;把数据库服务器上的不必要服务关闭掉;把数据库服务器和主域服务器分开;把SQL数据库服务器的吞吐量调为最大;在具有一个以上处理器的机器上运行SQL。

2、使用存储过程

应用程序的实现过程中,能够采用存储过程实现的对数据库的操作尽量通过存储过程来实现,因为存储过程是存放在数据库服务器上的一次性被设计、编码、测试,并被再次使用,需要执行该任务的应用可以简单地执行存储过程,并且只返回结果集或者数值,这样不仅可以使程序模块化,同时提高响应速度,减少网络流量,并且通过输入参数接受输入,使得在应用中完成逻辑的一致性实现。

3、应用程序结构和算法

建立查询条件索引仅仅是提高速度的前提条件,响应速度的提高还依赖于对索引的使用。因为人们在

使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,特别是对数据量不是特别大的数据库操作时,是否建立索引和使用索引的好坏对程序的响应速度并不大,因此程序员在书写程序时就忽略了不同的实现方法之间可能存在的性能差异,这种性能差异在数据量特别大时或者大型的或是复杂的数据库环境中(如联机事务处理OLTP或决策支持系统DSS)中表现得尤为明显。在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、不充份的连接条件和不可优化的where子句。在对它们进行适当的优化后,其运行速度有了明显地提高!


  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据的力量 2012年美国大选,奥巴马终于如愿以偿击败罗姆尼。奥巴马在2008年的第一次当选, 让人们意识到了Facebook的的力量;而这一次,则更进一步,军功章当有"数据挖掘"的 一半。 数据挖掘在奥巴马竞选的方方面面都起到了重要的作用。比如投放广告:奥巴马的团 队通过对目标选民进行数据建模去找到影响她们的广告路径。比如针对迈阿密戴德郡的 35岁以下女性,奥巴马竞选团队在一些电视肥皂剧节目中购买了广告,以往,竞选广告 通常出现在本地新闻节目中。通过精准的广告投放,奥巴马竞选团队比在芝加哥的购买 效率比2008的竞选提升了14%,确保了以最低成本最高效的找到目标选民。 不仅如此,奥巴马的团队通过对各州选民投票倾向样本数据的建模,每晚模拟6.6万 次大选,并于每天上午获得结果,了解在这些州胜出的可能性,从而针对性地分配资源 。"事实上,不仅仅奥巴马的竞选团队这么干,有一个工程师用MatLab写了一个简单的程 序,通过模拟各州民调的数据,预测奥巴马会胜出。他发现奥巴马赢的路径比罗姆尼多 一倍以上。最后的大选结果显示,在51个州的预测中,这个工程师正确了50个州。 数据挖掘从来没有如此让人着迷过。实际上数据挖掘一直以来都是传统行业改善业绩 的法宝;只是今天由于云计算和社交媒体的发展,使得各类数据的打通成为可能。所以 我们有了一个新的名词,叫大数据。 在今年Garter发布的IT技术成熟度曲线中,可以明显看出大数据已经成为云计算之后 的另一个热门技术。而已去年和前年Garter所发布的IT技术成熟度曲线图,可以很明显 感觉到大数据的发展速度非常之快。 在国内,大数据也开始逐渐成为投资届关注的热点。最先受到关注的是社交网络数据 挖掘;如微博的数据。新浪微博基金,浙报集团的传媒梦工厂都在微博的数据挖掘领域 进行投资。可以说社交网络数据挖掘是大数据投资的试验田。这里简单介绍一个案例知 微。 知微,通过数据挖掘算法,可以向用户提供一微博的传播途径、关键节点、层次和 人群等信息,并以可视化的方式直观生动地展示出来。这样客户就知道一微博传播几 千次的重要节点在哪里;这样就很容易找到关键节点。很明显,一科技信息和一时 尚信息的关键传播节点是肯定大相径庭的。和知微类似的还包括独到(www.doodod.com ),都是提供可视化的微博数据分析工具。 社会化网络数据挖掘是国内大数据领域最先崛起的一个分支,因为社会化网络数据有 天然的优势,拥有用户贡献的海量数据,同时是相对结构化有信息意义的数据数据挖 掘将从这里开始孕育,接下来和传统行业相关的数据挖掘将是未来新的创业和投资方向 。 大数据的发展也一定上会侵犯着个人的隐私;比如美国的大超市Target通过分析女性 客户购买记录,"猜出"哪些是孕妇。发现女性客户会在怀孕四个月左右,大量购买无香 味乳液。由此挖掘出25项与怀孕高度相关的商品,制作"怀孕预测"指数。推算出预产期 后,就能抢先一步,将孕妇装、婴儿床等折扣券寄给客户。虽然客户可以享受方便和惊 喜,但不免也会感到个人信息被商业掌控的恐怖。想象个人的社交媒体数据,网购数据 ,消费数据,搜索数据都被整合,那你所有的行为都可以被预测。这的确让人担心,但 这也是人们在享受数据带来的好处的同时,也必须付出放弃的隐私代价。无论如何,数 据的年代已经来到。你准备好没有? ----------------------- 数据的力量--大数据全文共2页,当前为第1页。 数据的力量--大数据全文共2页,当前为第2页。
数据与云计算 刘亚文 (西北农林科技大学 信息工程学院 软件工程141) 摘 要: 云计算是当今计算机领域最热门的话题,大数据时代的发展趋势和用户需求迫使研宄者 们前赴后继地投身这一领域.这是充满挑战的时代,也是充满机遇的时代,突破了网络发展 的这一质变过程,计算机学界势必迎来一个更加辉煌的时代。对于广大用户而言,云计算 带来的服务将会大大提高工作效率和质量,提高生活品质,为人们幸福生活做出贡献. 关键词 :云计算; 大数据; 数据分析; 一、 引 言 以2011年5月麦肯锡发布《大数据的下一个前沿:创新、竞争和生产力》为起点,大 数据概念开始持续发酵。2012年,大数据从技术圈进入主流市场[1] ,得到许多国家、社会组织和企业的看好和广泛应用。2012年1月,达沃斯世界经济论坛 发布了一份题为《大数据,大影响》(Big Data, Big Impact)的报告,3月,美国政府发布《大数据开发倡议》,之后英国、日本、德国、加拿大 等国纷纷效仿,推出与大数据应用相关的战略研究,自此一场关于"大数据"的战略争夺已 经拉开战幕…… 那么,到底什么是大数据?它与云计算是什么关系? 认识大数据 1. 大数据的含义与特征 地球上的煤炭、石油、天然气等自然资源在消耗中不断减少,面临枯竭;而数据随着 应用的不断创新,在使用中生长和丰富.大数据的出现,就是数据的快速增长带来质的变 化的结果。 对于大数据还没有一个正式的定义,目前最为普遍的定义就是"用传统方法或工具不能 处理或分析的数据".大数据具有大量、速度快和多样性三大特征[2] ,这些特征是传统数据处理方法和工具所无法胜任的。 大量(Volume)是指数据量非常庞大,主要体现在数据存储量大和计算量大。根据IDC《数 字宇宙膨胀:到2010年全球信息增长预测》中统计的数据,2006年全球每年制造、复制出 的数字信息量共计16。1万PB,当年信息产生量大约是历史上图书信息总量的3000倍;至 2010年,数字信息总量达98。8万PB。专家指出,2020年年度数据将增加43倍.因此,大 数据中的数据不再以几个GB或几个TB为单位来衡量,而是以PB(1千个T)、EB(1百万个 T)或ZB(10亿个T)为计量单位。 速度(Velocity)一方面是指数据在不断更新,增长的速度快,另一方面是指数据存储、 传输等处理速度很快。短短60秒,YouTube用户会上传48小时的视频;Google会收到200 万次搜索请求并极快地返回结果; Twitter要处理100万Tweets信息;网购产生27.2万美元的交易;App Store有4。7万次下载;全球新增网页571个。数据处理的速度也要求越来越快,甚至是实 时处理,比如灾难的预测,需很快的对灾难发生的程度、影响的区域范围等进行量化。如 日本大地震发生后仅9分钟,美国国家海洋和大气管理局(NOAA)就发布了详细的海啸预 警。 多样性(Variety)指数据包含结构化的数据表和半结构化、非结构化的文本、视频、图 像等信息,而且数据之间的交互非常频繁和广泛。 大数据的作用与意义 商业智能的深入发展使得商业决策已经越来越依赖于数据。然而,传统的商业智能系 统中用以分析的数据,大都是企业内部的运营数据,它们只占到了企业所能获取的全部数 据的15%。大数据使得企业能够分析更多的数据,从而使得分析结果更真实,能够获取新 的洞察力,因此大数据能带来更大的价值。 对于国家和政府,大数据能够强化国家安全,推动政府开放,提高公共决策的预见性 和响应性[3] 。各国军队都重视掌握技术优势,最大限度提升自己的存储、挖掘和使用"海量数据"的 能力,通过海量数据挖掘高价值情报,提高快速反应能力。 对于企业,大数据将开启商业智能的新阶段。《纽约时报》撰文称,"大数据"正在对各 个领域都造成影响,在贸易、经济和其他领域中,越来越多的决策基于数据解析做出,而 不是像昔日更多凭借经验和直觉.IBM和麦肯锡的研究都表明,应用大数据的企业确实呈现 出明显竞争优势,如收入增长更快。大数据对企业竞争力的影响主要表现在客户洞察、 营销规划、产品创新、物流管理、流程优化、人力资源管理、风险控制等七个方面。 对于个人,大数据将对人们的衣、食、住、行、健康、娱乐等都将产生深刻的影响。 比如借助戴在手臂上或装在口袋里的各种传感器,你的血压、心跳、情绪等多种体征信 息被实时传送到远程健康平台,系统会根据你当天的运动量、饮食、心情、工作等情况 给你最佳的锻炼和调节建议。 总之,大数据的战略意义和对社会的重大影响已毋庸置疑,它有望开启继互联网、物联网 之后有一个新的时代——大数据时代即将到来。 三、云计算简介 正如维克托教授所说,大数据的真实价值就像漂浮在海洋中的冰山,第一眼只能看到 冰山的一角,绝大部分都隐藏在

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值