MySQL没有的XML的实际目的是什么?

时间:2009-07-13 23:09:36

标签: mysql xml google-custom-search

我对XML很感兴趣。我从Google的CSE中了解到这一点。

操作3000行XML文件通常很痛苦。 这提出了一个问题。

为什么Google使用XML而不是MySQL,以至于我需要操作大型XML文件?

6 个答案:

答案 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级别的安全检查例程: