美文网首页
5.3sqoop对语义的导出

5.3sqoop对语义的导出

作者: NEO_X | 来源:发表于2019-06-09 11:17 被阅读0次

Apache Sqoop Cookbook 英文版-翻译学习!!
更多信息https://blue-shadow.top/

5.3对语义的导出

问题

需要确保Sqoop可以将Hadoop中的所有数据导出到数据库中, 或者不导出任何数据(也就是说, 目标表将保持为空)。

解决方案

在对实际表进行更改之前, 可以使用临时表先将数据加载到临时表中。临时表名称是通过--staging-table参数指定的,在下面的示例中, 我们将其设置为 staging_cities:

sqoop export \
--connect jdbc:mysql://mysql.example.com/sqoop \
--username sqoop \
--password sqoop \
--table cities \
--staging-table staging_cities

<h3>讨论</h3>
使用临时表时, Sqoop 将首先将所有数据导出到此临时表中, 而不是参数表中存在的主表。如果且仅当所有并行任务成功传输数据, Sqoop 将打开一个新事务, 以便
将数据从临时表移动到最终目标。一方面, 此方法保证了导出操作的全部或全部语义, 但也暴露了数据库端的其他限制。

由于 Sqoop 将将数据导出到临时表中, 然后将其移动到最后一个表中, 因此有一段时间内, 所有数据都存储在数据库中两次 (临时表中的一个副本和最后一个表中的
一个拷贝)。为了使用此方法, 系统上必须有足够的可用空间来容纳两个副本。由于数据首先加载位置, 然后移到最后一个表中, 所以使用临时表总是比直接导出到最
终表的速度慢。

Sqoop 要求临时表的结构与目标表的构造相同。列数及其类型必须相同;否则,导出操作将失败。其他特性没有强制执行, 因为Sqoop使用户能够利用高级数据库功能。
可以将临时表存储在不同的逻辑数据库 (在同一物理框中) 或其他文件组中。某些扩展属性不会对 Sqoop 产生影响: 目标表可能已分区, 而临时表可能不存在, 或者
两个表都可能使用不同的存储引擎。

临时表不是由 Sqoop 自动创建的, 必须在启动导出过程之前存在。此外, 它需要是空的, 以便以一致的数据结束。可以指定参数--清除临时表以指示 Sqoop 自动清
除临时表。如果数据库支持, Sqoop将使用截断操作尽快清理临时表

相关文章

  • 5.3sqoop对语义的导出

    Apache Sqoop Cookbook 英文版-翻译学习!!更多信息https://blue-shadow.t...

  • HTML5 语义元素

    语义学(源自古希腊)可定义为对语义意义的研究。 语义元素是拥有语义的元素。 什么是语义元素? 语义元素清楚地向浏览...

  • 1.2丨编程基础

    编程语言定义了语法和语义 语法描述了如何将合法表达式组合在一起 语义描述了我们如何从那些表达式中推导出相关含义去解...

  • 2021-02-02面试题

    你对标签语义化的理解是什么? 语义是我们说话表达的意思.多数的语义都是文字来承载的.语义类标签则是纯文字的标签.比...

  • 对语义化的理解

    语义化:在网页书写过程中,用正确的标签表达正确的意思,有利于在浏览器中显示清晰的结构 优点1、有利于SEO,与搜索...

  • 前端面试题-高频考点

    1. 说一下对HTML语义化的理解? 语义化就是选择与语义相符合的标签,使代码语义化,这样不仅便于开发者进行阅读,...

  • 语义分析汪涵杨乐乐疑被骗的文本语料

    今天ImageQ语义分析对汪涵杨乐乐疑被骗进行文本语义挖掘分析。首先确定我们要进行语义分析的文本语料。 文本语料:...

  • 面试总结:

    对html语义化的理解 HTML语义化就是根据内容的结构化(内容语义化),选择合适的标签,如(H1-H6)便于开发...

  • HTML和CSS基础

    HTML 语义化 语义化的含义就是用正确的标签做正确的事情,html 语义化就是让页面的内容结构化,便于对浏览器搜...

  • HTML标签语义化你再不看就OUT了

    持续输出内容,等你来撩~ 什么是语义元素? 语义是指对一个词或者句子含义的正确解释。很多html标签也具有语义的意...

网友评论

      本文标题:5.3sqoop对语义的导出

      本文链接:https://www.haomeiwen.com/subject/urwcxctx.html