Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.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
Php 对于实时搜索,XML还是SQL,哪个更快?_Php_Sql Server_Ajax_Xml - Fatal编程技术网

Php 对于实时搜索,XML还是SQL,哪个更快?

Php 对于实时搜索,XML还是SQL,哪个更快?,php,sql-server,ajax,xml,Php,Sql Server,Ajax,Xml,我有一个网页字段,它在您键入时显示结果。目前,我使用存储在服务器上的XML文件作为这些结果的源。如果我在输入信件时直接查询数据库会更快吗?实现这一目标的最佳方式是什么 我在MS SQL Server中使用PHP和AJAX。谢谢。XML文件只是存储在您的机器或其他机器上的文本文件;它们需要被读取、解析和写入,只有您的程序才能这样做。由于它们的文本性质,它们的效率也非常非常低:读取和解析文本文件的速度非常慢,而修改文本文件的速度更差 XML文件对于存储配置设置和在不同系统之间传递数据是很好的,但是数

我有一个网页字段,它在您键入时显示结果。目前,我使用存储在服务器上的XML文件作为这些结果的源。如果我在输入信件时直接查询数据库会更快吗?实现这一目标的最佳方式是什么


我在MS SQL Server中使用PHP和AJAX。谢谢。

XML文件只是存储在您的机器或其他机器上的文本文件;它们需要被读取、解析和写入,只有您的程序才能这样做。由于它们的文本性质,它们的效率也非常非常低:读取和解析文本文件的速度非常慢,而修改文本文件的速度更差

XML文件对于存储配置设置和在不同系统之间传递数据是很好的,但是数据存储和处理肯定应该在适当的DBMS中进行


希望这足以满足您的查询。

一个更具可扩展性的解决方案是使用非规范化的表来存储结果。如果您使用的是SQL Server 2014或更高版本,则可以为此使用内存优化表

为了加快查询速度,您还可以创建本机编译的存储过程,但这也支持SQL Server 2014或更高版本


此外,请尝试在搜索结果上建立全文搜索索引,这样if将加快查询速度并提供更多功能。

为每个字符点击数据库不是一个好主意。通过XML文件搜索不是很有效,但对于较小的网站来说可能可以。带有索引的表应该非常快,并且更具可伸缩性。您可以通过在每次按键后不发送请求来进一步优化它,直到用户停止键入为止。因此,请对其进行基准测试并确定您可以将XML数据存储在SQL Server中并进行查询。为了提高性能,您可以在XML列上创建索引,以增强对该表的搜索