2 justjavac JustJavaC 于 2013.10.19 17:47 提问

2000万条开房数据,如何快速查询(数据库优化)

某酒店泄漏 2000 万条数据。http://kfxx.info/

如何快速查询某个姓名的全部记录。

姓名不是唯一的,有可能重名。

csv 格式数据大概 3G 大小,如果导入数据库中,大概1.5G(MySQL),而且 2000万也不是个小数目。

51个回答

ygycomon
ygycomon   Rxr 2013.10.21 09:46
已采纳

索引啊,这还有什么好想的,如果你知道表结构的话,如果没有导数据库,放在linux上用cat | grep也可以

如果你舍得花时间,你可以把数据整个重构一遍,按照姓名或者其他的查询字段做分表,这样查询起来更快,如果直接用导入的csv文件的话就没办法了,只能直接索引

avi9111
avi9111 1张图片的数据量几乎都比你2000万条数据多了,没见过1.5G的图片么?几百M该见过了吧,加载到内存那是秒秒钟的事情,1是加载内存没问题,而且索引只是快速定位用的,所以2是索引跟内存加载没什么太大关系吧
3 年多之前 回复
huiyuanzaixian
huiyuanzaixian 索引当然是很自然我们能想到的查询优化方法,,可是如果数据量非常大,无法一次 性载入全部载入内存,又该怎么办?
3 年多之前 回复
loserss
loserss   2014.12.29 10:16

索引处理,配合表分区处理

a576699534
a576699534   2015.02.03 23:46

只是查找的话就用社工库的查询工具http://www.weigongkai.com/

fredrickhu
fredrickhu   Ds   Rxr 2014.11.18 09:24

还是在姓名字段加上合适的索引 并将你所感兴趣的列用INCLUDE包含在内。

laijieyao
laijieyao   2014.11.18 09:48

求数据 ,(答案输入的字符不够10提示就好了,帮我删我输入的内容干嘛)

j754379117
j754379117   2014.11.18 16:17

在姓名字段建立索引,速度提高不是一点点,本人已经将2000w数据进行导入测试,亲测可行!

j754379117
j754379117   2014.11.18 16:17

在姓名字段建立索引,速度提高不是一点点,本人已经将2000w数据进行导入测试,亲测可行!

91program
91program   Ds   Rxr 2014.11.18 19:08

如果要支持模糊查询,简单的索引就不行了。但是无论如何,采用索引是一种解决的方法。

zhangxiangDavaid
zhangxiangDavaid   2014.11.19 10:49

最快的是全部载入内存

gbj_2010
gbj_2010   2014.11.19 11:08

可以利用redis数据库,把mysql的数据都写入到redis中,在利用reids查询,效率非常高,只不过在写入的时候费一些时间

huiyuanzaixian
huiyuanzaixian 你的意思是说把数据库中的数据全部写入到redis中?这个工作量都有点大,更何况要再上面做查询优化?
3 年多之前 回复
共51条数据 1 3 4 ... 尾页
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
2000万开房数据【多线程】写入同一文件
2000万开房数据【多线程】写入同一文件 源代码下载地址:hhttp://www.zuidaima.com/share/1665015160769536.htm
快速插入2000万数据
前提设置表主键为自动递增 #默认主键为1 :alter table user modify id integer default '1'; #默认主键:alter table user modify id integer auto_increment ; #时间主键:alter table user add createtime timestamp default curre
Mysql学习总结(35)——Mysql两千万数据优化及迁移
最近有一张2000W条记录的数据表需要优化和迁移。2000W数据对于MySQL来说很尴尬,因为合理的创建索引速度还是挺快的,再怎么优化速度也得不到多大提升。不过这些数据有大量的冗余字段和错误信息,极不方便做统计和分析。所以我需要创建一张新表,把旧表中的数据一条一条取出来优化后放回新表; 一. 清除冗余数据,优化字段结构 2000W数据中,能作为查询条件的字段我们是预知的。所以将这部分数据单
利用Powrshell 查看在2000万信息中看看自己在不在所谓的开房信息中!
最近从网上下载了所谓的2000W的开房数据,我不会告诉你从哪里下载的,因为那是犯罪滴,给大家过过眼瘾就好了。仔细分析了下数据,发现表的内容其实不像是酒店的开房流水表,而是所谓的会员数据,能够达到2000万的数据,这是很恐怖的一件事情,我怀疑这个不仅仅是某单个会员数据库泄露,你想想如果全国2000万的用户都办理了某个酒店会员,这是多恐怖的一件事情,所以这个应该是某个系统的数据,我更加认为!
怎样做一个身份查询系统(可以查当年的你的那个他/她的开房记录)
数据库的应用
Java并发指南7:JUC的核心类AQS详解
一行一行源码分析清楚AbstractQueuedSynchronizer转自https://www.javadoop.com/post/AbstractQueuedSynchronizer#toc4在分析 Java 并发包 java.util.concurrent 源码的时候,少不了需要了解 AbstractQueuedSynchronizer(以下简写AQS)这个抽象类,因为它是 Java 并发...
某酒店2000W条数据如何打开
背景:最近关于酒店开房信息泄露的新闻很火,哥也按耐不住好奇心,准备一探究竟, 在网络赶快找源,终于找到一个数据库的备份,名称是: 某酒店2000W数据.rar ;解压密码:sjisauisa是就数据8很舒适好sjjss, 解压之后文件名是shifenzheng.bak, 有7.8G左右, 猜测可能是SQL Server的数据库备份的. 但是到底用那个版本呢? 不过有一个规律是: 微软的数据库高版本向下兼容的,高版本一般肯定能打开低版本的. 所以我直接下载了,SQL Server 2008 R2的光盘镜像.
如何在1000万条记录中快速检索? 数据追踪
一些大规模的系统,如人口系统的数据甚至超过了1000万条,可谓海量。那么,如何实现快速地从这些超大容量的数据库中提取数据(查询)、分析、统计以及提取数据后进行数据分页已成为各地系统管理员和数据库管理员亟待解决的难题。 在以下的文章中,我将以“办公自动化”系统为例,探讨如何在有着1000万条数据的MS SQL SERVER数据库中实现快速的数据提取和数据分页。以下代码说明了我们实例中数据库的“红头
Spark SQL 初探: 使用大数据分析2000万数据
去年网上曾放出个2000W的开房记录的数据库, 不知真假。 最近在学习Spark, 所以特意从网上找来数据测试一下, 这是一个绝佳的大数据素材。 如果数据涉及到个人隐私,请尽快删除, 本站不提供此类数据。你可以写个随机程序生成2000W的测试数据, 以CSV格式。 Spark是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于
几千万条数据,怎么让查询效率高起来?
大数据量的优化,自己总结了下,在自己的认知范围内,整理了两个大方面 一、sql语句方面的优化 1、使用索引查询         1、造成全表查询的(索引失效的情况):避免null值查询。索引列的数据不要大量重复。where语句中or(union替代)、in not in(between and)、like、!=和  select id from t where num=@num 可