sqlserver效率高
❶ 关于winform + sqlserver 与 winform +webservice +sqlserver 效率比较
补充:看来你要做的系统真的很大呀!如果使这样的话Remoting确实是比较合适的结构。
对于比较大的系统,在有负载平衡设备的帮助下,可以显着的提高系统的性能。在C和WebService间,WebService和应用服务器间都可以加入负载平衡设备。这样可以有效的利用网络资源。
客户端通过负载平衡设备与WebService通信,分散WebService的负担。
WebService通过负载平衡设备与应用服务器通信,请求具体的处理。
应用服务器来具体的处理数据,并与DB通信。这样可以最大限度的提高系统性能。
----
你的这两种方式我理解跟C/S结构关系不大。硬要靠上来也可以。
我的理解是,一般C/S模式的程序,其中主要的处理是通过S来完成的。
C的作用一般是程序与用户交互的一个接口。
S不仅仅是一台服务器,它也是由一组程序构成。由于S的处理能里比较强,C的处理能力相对较弱,因此采用C/S结构可以提高程序的相应速度。但是随着C的增多这种,这种速度的有时也可能会下降。
建议你在设计CS结构的软件时,考虑一下服务器和客户端的情况。合理的分配处理能力。
如果你需要实现多种类型的客户端(PC,笔记本,上网本,智能手机),建议你将主要的数据处理和检索操作都放到S上。C只负责将必要的数据呈现给用户。这样有利于C的跨平台。
为了应对将来升级或更换操作系统、数据库等。最好将C和S的通信通过WebService实现。这样即使你把S的操作系统有Windows换成Linux,只要WebService的接口没有发生变化,你的C的部分就不需要做大的修改。
另外,建议你不要从C向S发送SQL。C和S之间的通信应该跟业务相关,尽量不要写SQL。把生成SQL这些工作放到S的WebService中,这样你的C和S的联系更松散,即使将来有变更,也比较易于对应。
火气不要这么大嘛,也许二楼的真想帮你,只是回答的不太准确呢。
希望我的回答能对你有些参考价值。
❷ SQLSERVER语句 in和exists哪个效率高本人测试证明
效率高低通常和需要的条件有关,比如数据量,索引的 创建与否
同等条件下,exists叫存在检测,检测到第一个存在的记录就返回了
in可以理解为在。。。中。通常会进行全表扫描。
exists比in要性能高一些
❸ sql 查询在没有where增加时间条件下查询效率高,但是加时间查询效率反而低下很多
尽量使用Join 而不是Where来列出关联条件,特别是多个表联合的时候。
原因是:
1)在效率上,Where可能具有和Inner join一样的效率。但基本可以肯定的(通过SQLServer帮助和其它资料,以及本测试)是Join的效率不比Where差。
2)使用Join可以帮助检查语句中的无效或者误写的关联条件
通常db引擎会将where解析为join on,既然这样,何不直接使用join on
:-)
❹ SQL2008或SQL2012 如何配置,使SQL的执行效率最高
提升数据插入速度,主要瓶颈在io上面。
1、采用固定内存分配,如果服务器上只有SQLSERVER在运行,使用6G给系统,42G给SQLSERVER。
2、做磁盘阵列RAID10,第一个阵列放置系统,temp数据库,第二个阵列放置数据文件,第三个阵列放置日志文件。
❺ SQLite 的读写效率很高,有哪些使用其他数据库的理由
1、sqlite定位是嵌入式数据库,只能本地嵌入其它进程来工作,无法被远程的客户端访问,需要上层应用来处理这些事情;
2、sqlite设计上就不是为大数据量考虑的,因此别指望它存海量数据;
3、sqlite适合单线程访问,对多线程高并发的场景不适用;
4、各种数据库高级特性它都不支持,比如管理工具、分析工具、维护等等;
所以还是要根据场景选择合适的数据库,嵌入式用SQLite是相当不错的,但绝大多数场景还是要用MySQL/SqlServer/MongoDB这类的数据库。
❻ sqlserver频繁的进行插入操作存储过程效率高吗
假如是一两条INSERT语句就没有必要使用存储过程,不然会给你带来很多存储过程管理的工作。
假如是进行大批量的数据写入建议你使用存储过程,因为数据库引擎在执行动态语句前都要进行编译,确定执行计划,执行的语句数量大的话,这一部分工作的耗时是可观的。
❼ sqlserver 用distinct和group by哪个效率高
sql server数据库进行查询语句时,distinct和group by的效率比较,group by的效率更高一点,因为group by通过group进行排序而distinct是全表排序资源消耗更多。所以,group by效率更高。
❽ 高频率CPU和多核CPU,哪个执行SQLSERVER效率更高
一般来说数据库更偏向于多核处理器,楼主可以看看大部分的服务器都采用了多核多路的设计,不过具体也得看具体的服务器应用方向,不能一概而论。
SQL Serve这类程序对多核优化的都很好,多核心及多路设备可以同时查询更多数据,减少出现数据排队的情况。
玩游戏方面,目前以四核处理器搭配高主频、基本都够用了(单核性能也比较重要)。
❾ 如何提高sqlserver查询效率
查询要有效率,第一关键就是数据库的结构设计,考虑到可能的数据关系设计数据冗余,根据功能需要建立不同的数据表;然后才是依靠对sql的熟练运用,写出有效率的查询。都需要多用多研究,sql的神技不是一朝一夕能成的。
❿ SQLServer数据库增删改查的效率那种比较好
数据量大就用存储过程数据量少就用sql语句直接操作。
至于读数据方面DataReader和DataSet根据你的情况
DataReader和DataSet最大的区别在于,DataReader使用时始终占用SqlConnection(俗称:非断开式连接),在线操作数据库时,任何对SqlConnection的操作都会引发DataReader的异常。因为DataReader每次只在内存中加载一条数据,所以占用的内存是很小的。由于DataReader的特殊性和高性能,所以DataReader是只进的,你读了第一条后就不能再去读取第一条了。
DataSet则是将数据一次性加载在内存中,抛弃数据库连接(俗称:断开式连接)。读取完毕即放弃数据库连接,因为DataSet将数据全部加载在内存中,所以比较消耗内存。但是确比DataReader要灵活,可以动态的添加行,列,数据,对数据库进行回传,更新操作等。