1)在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
2)用java怎么实现有每天有1亿条记录的DB存储?mysql上亿记录数据量的数据库如何设计?
各位大虾帮手看看,给出答案
10 个解决方案
#1
这个问题 以我的知识无法解决啊。。
#2
建索引 或者 多建几个表
#3
把这个任务交给数据库去处理,存储过程之类
#4
能具体一点么?
#5
1,对userId建立所以索引。
2.使用jdbc的批处理方式,
mysql上亿记录数据量的数据库如何设计:采用分区的方式创建表,并存储,分区后,索引文件也是分区的,每个区有自己独立的索引文件。
看看这个,里面详细的做了分区与不分区的性能比较:
http://hi.baidu.com/zhangguanshi/blog/item/9ff5a1eb303927dbd439c925.html
2.使用jdbc的批处理方式,
mysql上亿记录数据量的数据库如何设计:采用分区的方式创建表,并存储,分区后,索引文件也是分区的,每个区有自己独立的索引文件。
看看这个,里面详细的做了分区与不分区的性能比较:
http://hi.baidu.com/zhangguanshi/blog/item/9ff5a1eb303927dbd439c925.html
#6
第一个问题肯定是建立索引了, lucene 基于Java的全文索引,
第二个问题,MySql安装的时候有很多种模式,如果选择不带有事务的模式 效率会高N倍,在做个集群,加个缓冲服务器。
第二个问题,MySql安装的时候有很多种模式,如果选择不带有事务的模式 效率会高N倍,在做个集群,加个缓冲服务器。
#7
up
#8
我不知道,在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户单单加了索引估计速度也不行吧,
学习了
学习了
#9
1天1亿条,每秒钟显然超过了1100条,如果考虑高峰,每秒可能2000条。
使用批处理的缓冲(buffer)显然是必要的,其次,考虑到索引的更新,可能还要依据业务分表甚至分库
使用批处理的缓冲(buffer)显然是必要的,其次,考虑到索引的更新,可能还要依据业务分表甚至分库
#10
建一个顺序散列表就可以啦
#1
这个问题 以我的知识无法解决啊。。
#2
建索引 或者 多建几个表
#3
把这个任务交给数据库去处理,存储过程之类
#4
能具体一点么?
#5
1,对userId建立所以索引。
2.使用jdbc的批处理方式,
mysql上亿记录数据量的数据库如何设计:采用分区的方式创建表,并存储,分区后,索引文件也是分区的,每个区有自己独立的索引文件。
看看这个,里面详细的做了分区与不分区的性能比较:
http://hi.baidu.com/zhangguanshi/blog/item/9ff5a1eb303927dbd439c925.html
2.使用jdbc的批处理方式,
mysql上亿记录数据量的数据库如何设计:采用分区的方式创建表,并存储,分区后,索引文件也是分区的,每个区有自己独立的索引文件。
看看这个,里面详细的做了分区与不分区的性能比较:
http://hi.baidu.com/zhangguanshi/blog/item/9ff5a1eb303927dbd439c925.html
#6
第一个问题肯定是建立索引了, lucene 基于Java的全文索引,
第二个问题,MySql安装的时候有很多种模式,如果选择不带有事务的模式 效率会高N倍,在做个集群,加个缓冲服务器。
第二个问题,MySql安装的时候有很多种模式,如果选择不带有事务的模式 效率会高N倍,在做个集群,加个缓冲服务器。
#7
up
#8
我不知道,在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户单单加了索引估计速度也不行吧,
学习了
学习了
#9
1天1亿条,每秒钟显然超过了1100条,如果考虑高峰,每秒可能2000条。
使用批处理的缓冲(buffer)显然是必要的,其次,考虑到索引的更新,可能还要依据业务分表甚至分库
使用批处理的缓冲(buffer)显然是必要的,其次,考虑到索引的更新,可能还要依据业务分表甚至分库
#10
建一个顺序散列表就可以啦