由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 数据库小白请教:如果数据库文件很大,MySQL和Python Pandas分
相关主题
怎样用Python选一部分数据出来请问PHP连接数据库问题
Perl, PHP, Pathon, 那个好?问个数据库服务器配置的问题 (转载)
技术问题探讨:数据处理坑: Python + "C++" plus SWAG as ONE big language
昨天去参加某个big data的seminar快要被Python的兼容性弄疯了
云计算时代用.net简直是笑话求python大牛指路
会用c#/python program MSSql, Excel, 从网上抓数据,合适做啥工作?python pandas reading large csv file
java很快吗?比python 能快多少?如何从另一个IP访问自己的MySQL Server数据库?
数据库能用来存储文件吗?Re: 有谁觉得做bioinformatics 的数据分析 python比R好的? (转载)
相关话题的讨论汇总
话题: mysql话题: 数据库话题: pandas话题: python话题: 内存
进入Programming版参与讨论
1 (共1页)
m****s
发帖数: 79
1
数据库小白请教(最近我在业余学习数据库,为了了解system design面试题):如果数
据库文件很大比如10GB,内存6GB,MySQL和Python Pandas分
别是怎么处理的?
看了这个链接:
http://stackoverflow.com/questions/31765123/pandas-dataframe-merge-memoryerror
感觉Pandas要加chunks处理。
而MySQL似乎内部直接处理了。文中的代码没有分批处理的大小size参数,是default的
么?
另外,在一个10GB的数据库里,搜索一个Name field里,名字叫"Mark"的一行,需要费
时多长呢?
怎么估计呢?
是不是估计软件要把这个数据文件分几部分load进memory,然后加上memory搜索的时间。
如果你没有时间解释,能否请给些链接。谢谢!
祝鸡年吉祥如意!
h**********c
发帖数: 4120
2
数据库这东西发明就是针对硬盘用的。
10年左右的数据库教科书,主要讲MYSQL,有treeindex 还有hash index,去年看mYSQL
好像有新的index 种类。
如果是hash index,应该是O(M),
MYSQL 有个monitor,你可以自己编不同 size ,然后比较一下query 开销。
然后找个地方arvxiyz 一下。
另外MYSQL是开原的,可以自己变变玩,编过一次。没什么技术意义,太泛泛代码太多
n*********u
发帖数: 1030
3
服务器加点内存会死人吗?公司服务器内存比个人笔记本电脑还小的公司怎么想的?人
工不要钱的?
10GB又不算大数据。。。
mysql用硬盘比较狠一点,内存只是cache用,小一点他也无所谓,也就慢而已。
搜索field是看index和query,如果是搜名字完全等于“Mark”的话,如果有index会很
快,O(log n)。没index比较慢,O(n),硬盘里一行一行慢慢搜。
你只说10GB,又没说有多少行,数据库设定(myiIsam还是innodb)之类的,没法估计
时间。
pandas不确定,只是一个软件,数据都是临时load的,不像mysql可以提前加上index,
所以应该只能读到内存里再用。
h**********c
发帖数: 4120
4
hard disk I/O 6Gb/s,很简单的数学题
m****s
发帖数: 79
5
谢谢回复。
最近我在业余学习数据库,为了了解system design面试题.
》》没index比较慢,O(n),硬盘里一行一行慢慢搜。
在硬盘里一行一行搜,很慢吧。
我还以为是,MySQL自己把数据文件分成几大块,按时间顺序,读一块到内存,搜索,
记下来。
然后处理下一块。

【在 n*********u 的大作中提到】
: 服务器加点内存会死人吗?公司服务器内存比个人笔记本电脑还小的公司怎么想的?人
: 工不要钱的?
: 10GB又不算大数据。。。
: mysql用硬盘比较狠一点,内存只是cache用,小一点他也无所谓,也就慢而已。
: 搜索field是看index和query,如果是搜名字完全等于“Mark”的话,如果有index会很
: 快,O(log n)。没index比较慢,O(n),硬盘里一行一行慢慢搜。
: 你只说10GB,又没说有多少行,数据库设定(myiIsam还是innodb)之类的,没法估计
: 时间。
: pandas不确定,只是一个软件,数据都是临时load的,不像mysql可以提前加上index,
: 所以应该只能读到内存里再用。

m****s
发帖数: 79
6
这么简单吗?
处理中也是要读数据到内存里处理。
那么每次要读多少大小的数据到内存呢?
一行一行地读,速度很慢吧。
比如先读进500M内存,处理,接着读下面500M内存。
这个大小有什么讲究?
衔接过程中间有没有什么overhead?

【在 h**********c 的大作中提到】
: hard disk I/O 6Gb/s,很简单的数学题
h**********c
发帖数: 4120
7
你横竖要把硬盘扫一遍。比较硬盘的开销,内存是不是可以忽略了,差一个 order 左右。
具体数据库系统的课本里讲,在这里太叫真意义不大。
cache 的功能就是缓存你追进用过的,没用过的,一下就要swap,开销就大了。
其实课本上讲得也是二三十年前的理论,MYSQL, MSSQL ORCALE什么背后的优化都是技
术秘密,开原的MYSQL比企业版少很多东西。你如果装个单机的话,开原的就够了。

【在 m****s 的大作中提到】
: 这么简单吗?
: 处理中也是要读数据到内存里处理。
: 那么每次要读多少大小的数据到内存呢?
: 一行一行地读,速度很慢吧。
: 比如先读进500M内存,处理,接着读下面500M内存。
: 这个大小有什么讲究?
: 衔接过程中间有没有什么overhead?

1 (共1页)
进入Programming版参与讨论
相关主题
Re: 有谁觉得做bioinformatics 的数据分析 python比R好的? (转载)云计算时代用.net简直是笑话
文件上传是存在硬盘上,还是存在数据库中?会用c#/python program MSSql, Excel, 从网上抓数据,合适做啥工作?
python要搞type hint了java很快吗?比python 能快多少?
Anaconda装起来会跟已有的python dist有什么冲突吗?数据库能用来存储文件吗?
怎样用Python选一部分数据出来请问PHP连接数据库问题
Perl, PHP, Pathon, 那个好?问个数据库服务器配置的问题 (转载)
技术问题探讨:数据处理坑: Python + "C++" plus SWAG as ONE big language
昨天去参加某个big data的seminar快要被Python的兼容性弄疯了
相关话题的讨论汇总
话题: mysql话题: 数据库话题: pandas话题: python话题: 内存