【问题标题】:What is the practical purpose of XML, that MySQL does not have?MySQL 没有的 XML 的实际用途是什么?
【发布时间】:2009-07-13 23:09:36
【问题描述】:

我对 XML 很感兴趣。我从 Google 的 CSE 知道这一点。

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

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

【问题讨论】:

  • xml 是一种数据编码格式,mysql 不是。也许您想问为什么 Google 不使用 CSV 格式?

标签: mysql xml google-custom-search


【解决方案1】:

在数据交换方面,XML 至少比 SQL 具有以下优势:

  • 它是自我描述的,您不需要任何额外的信息来解析它。
  • 这是一个真正的标准,普遍可互操作
  • 您不仅限于面向表格的数据:例如,您还可以使用它来建模层次结构。

您可以使用 SQL 做的最好的事情可能是以源代码形式发布表,即,作为 CREATE TABLE 语句,然后是大量的 INSERT 语句。如果您有一个兼容的数据库,这很好,但由于 SQL 从未真正作为标准具体化,因此此级别的互操作性非常差,而且 Google 必须提供多种方言(甚至可能针对同一 DBMS 的不兼容版本)。

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

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

      附加

      此外,CSE(定制搜索引擎)可能希望您不需要对 XML 进行大量操作,只需转换即可呈现到网页。您可以非常轻松地对 XML 文件执行 XSLT(可扩展样式表语言转换),以将其转换为 HTML 片段以在您的网站上使用。

      【讨论】:

        【解决方案4】:

        MySQL 是一个特定的 SQL 数据库引擎。一个不太适合为像谷歌这样的搜索引擎所具有的非常大的数据集和特殊的特殊需求提供后端。 我相信你可以挖掘关于谷歌基础设施的信息,例如开始here

        在通过 Internet 交换数据时,您不希望依赖和公开诸如 MySQL 之类的特定内容。

        XML 另一方面,当您需要时,作为一种通用的文本标记语言是理想的 在系统之间进行接口和交换数据。因此,它提供了一种理想的方式来连接诸如 Google CSE 之类的服务。你不需要关心谷歌必须提供数据的具体实现,谷歌也不需要关心你用来操作数据的具体技术

        【讨论】:

          【解决方案5】:

          除了@Jared,还有 XML 数据库。如果数据存储在 XML 中,则可以对其进行查询、动态转换为 html 或在应用程序中使用,而无需包装数据。

          【讨论】:

            【解决方案6】:

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

            访问时间,因为在访问/打开端口/-的DOM级别没有安全检查例程:

            【讨论】:

              猜你喜欢
              • 2011-04-02
              • 2019-05-17
              • 2015-04-22
              • 2021-07-22
              • 1970-01-01
              • 2011-09-20
              • 2015-06-07
              • 1970-01-01
              相关资源
              最近更新 更多