Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 一个大问题还是许多小问题?_Database_Optimization_Bandwidth_Database Optimization - Fatal编程技术网

Database 一个大问题还是许多小问题?

Database 一个大问题还是许多小问题?,database,optimization,bandwidth,database-optimization,Database,Optimization,Bandwidth,Database Optimization,我想知道,就带宽和总体效率而言,哪个选项最昂贵 假设我的应用程序中有一个classClient,数据库中有一个表Client 最好使用一个静态函数Client.getById来检索整个客户端记录,还是使用多个函数(Client.getNameById,Client.getMobileNumberById等)来检索单个字段 如果一条记录有很多字段,而我最终在当前脚本中使用了一个或两个字段,那么检索所有内容并在应用程序内部决定如何处理所有数据是否更好 顺便说一下,我正在使用 使用一个静态函数Clie

我想知道,就带宽和总体效率而言,哪个选项最昂贵

假设我的应用程序中有一个class
Client
,数据库中有一个表
Client

最好使用一个静态函数
Client.getById
来检索整个客户端记录,还是使用多个函数(
Client.getNameById
Client.getMobileNumberById
等)来检索单个字段

如果一条记录有很多字段,而我最终在当前脚本中使用了一个或两个字段,那么检索所有内容并在应用程序内部决定如何处理所有数据是否更好

顺便说一下,我正在使用

使用一个静态函数Client.getById检索整个客户端记录,还是使用多个(Client.getNameById、Client.getMobileNumberById等)检索单个字段更好

是的

网络延迟和延迟以及建立连接的开销意味着尽可能少的数据库调用是防止数据库饱和的最佳方法


如果数据的大小真的很大,你可以看到一个效果,你可以考虑在一个查询中检索你需要的特定字段(裁剪查询到数据)。你所说的一切都是指你所需要的一切,对吗?你的带宽是多少?你有多少用户?这些都在同一个服务器机房吗?下行光纤?通过移动互联网?你的延迟是多少?你的用户在哪里?你的服务器在哪里?他们有多强大?它们是如何组织的?多少字节是“很多”?…@Ben你有抽象思维的能力吗?我在问一般情况下哪种选择更好。应用程序尚未发布,所以我不知道是:-)@oded是正确的对数据库的调用越少越好,传输的字节越少越好,但所有问题仍然有效;它们会产生影响…@Ben You是对的,我们能做的最好的优化就是使用现实生活中的信息检查应用程序中的瓶颈到底是什么,但作为一个一般情况,我想Oded的答案是正确的如果你没有遇到ORM,我强烈建议你看一下。它会自动将您的类链接到您的表,并生成getter/setter,所以您甚至不必考虑这一步。为什么要重新发明轮子?这句话有两种不同的观点,用“或”隔开。“是的,它是”不是很清楚。