我对XML感兴趣。我从Google的CSE中知道。

操纵3000行XML文件对我来说通常很痛苦。这提出了一个问题。

为什么Google使用XML,而不是MySQL,因此我需要操纵大型XML -Files?

有帮助吗?

解决方案

XML至少具有与SQL有关数据互换目的的这些优势:

  • 它是 自我描述, ,您无需提供任何其他信息即可解析。
  • 这是一个真正的标准 普遍可互操作.
  • 您不仅限于面向表格的数据:例如,您也可以将其用于建模层次结构。

您可以使用SQL可以做的最好的是源代码表格,即创建表语句,然后是许多插入语句。如果您有一个兼容的数据库,这很好,但是由于SQL从未真正结晶为标准,因此在此级别上的互操作性非常差,Google必须提供多个方言(甚至对于同一DBMS的不兼容版本)。

其他提示

XML主要是人类可读和跨平台。 Google如何仅从MySQL向您发送数据?您是否希望他们向您发送一个二进制BLOB,假设您有适当的数据库将其插入?如果未安装MySQL,您将如何使用该斑点,或者在计算机上安装了与Google上安装的MySQL不同的版本?

XML通常用作系统之间的运输格式。在CSE中,我猜想Google以许多系统可以使用的格式将大量数据从它们传输给您。如果他们使用mysql,那对我来说是没有用的,因为我对此一无所知。但是,几乎大多数现代的软件框架都可以使用XML。

额外的

另外,CSE(自定义搜索引擎)可能期望您不需要对XML进行很多操作,只需转换渲染到网页即可。您可以非常轻松地执行XSLT(可扩展样式语言转换)为XML文件,以将其转换为网站上使用的HTML片段。

MySQL是特定的SQL数据库引擎。一个不太适合为像Google这样的搜索引擎提供的非常大的数据集和特殊需求提供后端。我确定您可以挖掘有关Google的基础架构的信息,例如开始 这里

在通过Internet交换数据时,依靠和暴露特定的内容(例如MySQL)并不是您想做的事情。

XML 另一方面,当您需要在系统之间互动和交换数据时,成为一般和文本标记语言是理想的选择。因此,它提供了一种与Google CSE这样的接口服务的理想方法。您不需要关心Google必须提供数据的特定实现,Google不需要关心您使用的特定技术来操纵数据

除@Jared外,还有XML数据库。如果数据存储在XML中,则可以将其查询,即即时转换为HTML,或在应用程序中使用,而无需包装数据。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top