我对XML很感兴趣。我从Google的CSE中了解到这一点。
操作3000行XML文件通常很痛苦。 这提出了一个问题。
为什么Google使用XML而不是MySQL,以至于我需要操作大型XML文件?
答案 0 :(得分:9)
为了数据交换的目的,XML至少具有SQL优势:
您可以使用SQL做的最好的事情是源代码形式的发货表,即CREATE TABLE语句后面跟着很多INSERT语句。如果你有一个兼容的数据库,这很好,但由于SQL从来没有真正作为标准结晶,这个级别的互操作性非常差,谷歌必须提供多种方言(甚至可能是同一个DBMS的不兼容版本)。 p>
答案 1 :(得分:4)
XML主要是人类可读和跨平台的。 google如何从MYSql发送数据?您是否希望他们向您发送二进制blob,假设您有适当的数据库将其插入?如果没有安装MYSql,或者你的机器上安装了不同版本的MYSql而不是google,你将如何使用该blob?
答案 2 :(得分:2)
XML通常用作系统之间的传输格式。在CSE中,我猜想谷歌正在以许多系统可以使用的格式将大量数据传输给您。如果他们使用MySQL,那对我来说没用,因为我对它一无所知。但是,几乎大多数现代软件框架都可以使用XML。
其他强>
此外,CSE(自定义搜索引擎)可能希望您不需要对XML进行大量操作,只需转换为渲染到网页即可。您可以非常轻松地对XML文件执行XSLT(可扩展样式表语言转换),将其转换为要在您的网站上使用的HTML片段。
答案 3 :(得分:1)
MySQL是一个特定的SQL数据库引擎。一个不太适合为非常大的数据集提供后端,以及谷歌等搜索引擎的特殊需求。 我相信你可以挖掘谷歌基础设施的信息,例如:从here开始
在互联网上交换数据时,你不想依赖和暴露像MySQL这样的东西。
另一方面,XML作为一种通用的文本标记语言,在您需要时非常理想 在系统之间交换和交换数据。因此,它提供了一种理想的方式来连接Google CSE等服务。您不需要关心谷歌必须提供的具体实施数据,而谷歌不需要关心您用来操纵数据的具体技术
答案 4 :(得分:1)
除了@Jared之外,还有XML数据库。如果数据以XML格式存储,则可以查询,动态转换为html,或者在应用程序中使用,而无需包装数据。
答案 5 :(得分:0)
为什么Google为什么要使用XML,而不是MySQL,这样我才需要处理大型XML文件?
访问时间,因为在已访问/打开的端口/-上没有DOM级别的安全检查例程: