百万数据查询问题

simplysky 2016-07-08 02:55:36
现通过存储过程从数据中取出近 一百万条数据,装载到一个DataTable中,现在要对这一百万的数据进行遍历,怎么写好
...全文
468 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
编程有钱人了 2016-07-12
  • 打赏
  • 举报
回复
一个用户取100万,10个用户取1000万就是,哈哈哈 你服务器多大内存都不够用!都是分页取的
大鱼> 2016-07-11
  • 打赏
  • 举报
回复
百万条数据,你要查询多久啊?这个数据量 有点大,查询要好久。
正怒月神 2016-07-11
  • 打赏
  • 举报
回复
引用 11 楼 simplysky 的回复:
[quote=引用 3 楼 hanjun0612 的回复:] 首先,百万数据装到datatable,我不是很看好。 其次,具体操作这些数据的逻辑,能否通过存储过程来搞定呢? 最后,如果数据不变,那么可以装到datatable中缓存起来。 如果数据不停变更,那么你装在数据到datatable然后操作。显得不太明智啊。
往来对账明细,数据很大,涉及到一些列计算,在存储过程中处理更麻烦,能在存储过程中计算的都是计算好了的[/quote] 可是百万的数据量,你是如何展示的呢?一般来说需要分页显示的。 而且如果你是要导出xls的话,百万应该也不会有人看。一般是人家根据条件查询后,来获取自己要的信息吧?
小灰狼 2016-07-11
  • 打赏
  • 举报
回复
100W条记录全部读到内存里来?? 完全可以优化的
加油馒头 2016-07-11
  • 打赏
  • 举报
回复
C#datatable 有一个search()方法,传入筛选条件,在内存中筛选
只怕不在遇上 2016-07-09
  • 打赏
  • 举报
回复
建议用多少取多少 一次取一百万条 还要遍历 极度不合理
圣殿骑士18 2016-07-08
  • 打赏
  • 举报
回复
方案极度不合理。往来账是顺序账目,你就不能取一部分处理一部分?
simplysky 2016-07-08
  • 打赏
  • 举报
回复
引用 3 楼 hanjun0612 的回复:
首先,百万数据装到datatable,我不是很看好。 其次,具体操作这些数据的逻辑,能否通过存储过程来搞定呢? 最后,如果数据不变,那么可以装到datatable中缓存起来。 如果数据不停变更,那么你装在数据到datatable然后操作。显得不太明智啊。
往来对账明细,数据很大,涉及到一些列计算,在存储过程中处理更麻烦,能在存储过程中计算的都是计算好了的
ttthank__you 2016-07-08
  • 打赏
  • 举报
回复
遍历的目的是什么,修改数据什么的可以在数据里面直接做,显示数据的话分页。
TowDemo 2016-07-08
  • 打赏
  • 举报
回复
关注这个问题
空白桑 2016-07-08
  • 打赏
  • 举报
回复
。。。 为啥要一次取一百万 光取就很费劲了 还要遍历 。。。
秋的红果实 2016-07-08
  • 打赏
  • 举报
回复
这个不现实,取出满足某些条件的数据即可
yuanshuai1233 2016-07-08
  • 打赏
  • 举报
回复
一次取100多万的数据 数据库会不会直接死在那了
我叫小菜菜 2016-07-08
  • 打赏
  • 举报
回复
引用 4 楼 shoppo0505 的回复:
我只能说很奇葩的需求
+1. 建议直接拒绝这种想法
shoppo0505 2016-07-08
  • 打赏
  • 举报
回复
我只能说很奇葩的需求
正怒月神 2016-07-08
  • 打赏
  • 举报
回复
首先,百万数据装到datatable,我不是很看好。 其次,具体操作这些数据的逻辑,能否通过存储过程来搞定呢? 最后,如果数据不变,那么可以装到datatable中缓存起来。 如果数据不停变更,那么你装在数据到datatable然后操作。显得不太明智啊。
  • 打赏
  • 举报
回复
你是30分钟进行查询一次吗?你们的系统是单用户使用吗?
转角处灬守候 2016-07-08
  • 打赏
  • 举报
回复
百万数据遍历 !!!你不能明确点查询,缩小数据量吗
版本:presto-server-0.214.tar软件版本 presto-cli-0.214-executableCentOS71、presto的起因 hadoop ---hdfs----MR(java)-----hivehive底层原理用MR,速度比较慢,公司hadoop集群主要集中于晚上到凌晨,平日工作时间负载不是很高。但在工作时间内,公司业务人员有实时查询的需求,现在主要借助于hive提供业务人员的查询。hive是基于MR类的SQL查询工具,他会输入的查询SQL解析为MapReduce,能极大的降低使用大数据门槛,让一般的业务人员可以直接准对大数据进行查询,但是有一个利弊,它的查询基于MR,会让人等待比较着急,等待的时间可能是几个小时或者一天。 spark基于内存提高改良的hive,sql,现在factbook在hive上面开发一套利器,准对hive可以通过sql语句快速查询,presto。2、Facebook为何开发Presto  Facebook的2011的数据仓库存储在少量大型hadoopfs集群,Hive是FaceBook在几年前专门为Hadoop打造的一款数据仓库工具,在以前,facebook的科学家和分析师一直靠hive进行数据分析.但hive使用MR作为底层计算框架,是专为批处理设计的,但是随着数据的不断增多,使用hive进行一个简单的数据查询可能要花费分钟或者几个小时,显然不能满足查询需求,FaceBooke也调研了其他比hive更快的工具,但是他们需要在功能有限的条件下做简单操作,以至于无法操作Facebook庞大的数据要求。2012年开始研究自己的框架--presto,每日可以超过1pb查询,而且速度比较快,faceBook声称Presto的性能比hive要好上10倍或者100倍,presto和hive都是facebook开发的 Presto是一个开源的分布式SQL查询引擎,适用于交互式查询数据量支持GB到PB字节。Presto的设计和编写完全是为了解决Facebook这样规模的商业数据仓库交互式分析和处理速度的问题Presto可以做什么 Presto支持在线数据查询,包括Hive kafka Cassandra关系数据库以及专门数据存储,一条Presto查询可以将多个数据源进行合并,可以跨越整个组织进行分析。Presto以分析师的需求作为目标,他们期望相应速度小于1秒到几分钟,Presto要么在使用速度的快的昂贵的商业方案,提高内存,要么是消耗大量的硬件进行快速查询。(128G 64G)本套课程教给如何在企业环境中使用Presto技术。

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧