Talend - Hive
在本章中,让我们了解如何在 Talend 上使用 Hive 作业。
创建 Talend Hive 作业
作为示例,我们将 NYSE 数据加载到 hive 表并运行基本 hive 查询。右键单击作业设计并创建一个新作业 - hivejob。提及作业的详细信息,然后单击完成。
向 Hive 作业添加组件
要将组件添加到 Hive 作业,请将五个 talend 组件 − tHiveConnection、tHiveCreateTable、tHiveLoad、tHiveInput 和 tLogRow 从托盘拖放到设计器窗口。然后,右键单击 tHiveConnection 并为 tHiveCreateTable 创建 OnSubjobOk 触发器。现在,右键单击 tHiveCreateTable 并为 tHiveLoad 创建 OnSubjobOk 触发器。右键单击 tHiveLoad 并在 tHiveInput 上创建迭代触发器。最后,右键单击 tHiveInput 并为 tLogRow 创建主线。
配置组件和转换
在 tHiveConnection 中,选择 cloudera 作为发行版,并选择您正在使用的版本。请注意,连接模式将为独立模式,Hive 服务将为 Hive 2。还请检查以下参数是否已相应设置 −
- 主机:"quickstart.cloudera"
- 端口:"10000"
- 数据库:"default"
- 用户名:"hive"
请注意,密码将自动填充,您无需编辑。其他 Hadoop 属性也将预设并默认设置。
在 tHiveCreateTable 中,选择使用现有连接并将 tHiveConnection 放入组件列表中。输入要在默认数据库中创建的表名称。保留如下所示的其他参数。
在 tHiveLoad 中,选择"使用现有连接"并将 tHiveConnection 放入组件列表中。在加载操作中选择 LOAD。在文件路径中,提供 NYSE 输入文件的 HDFS 路径。在表名称中提及要在其中加载输入的表。保留如下所示的其他参数。
在 tHiveInput 中,选择使用现有连接并将 tHiveConnection 放入组件列表中。单击编辑模式,添加列及其类型,如下面的模式快照所示。现在,在 tHiveCreateTable 中输入您创建的表名。
将您想要在 Hive 表上运行的查询放入查询选项中。这里我们打印测试 Hive 表中前 10 行的所有列。
在 tLogRow 中,单击同步列并选择表格模式以显示输出。
执行 Hive 作业
单击运行以开始执行。如果所有连接和参数都设置正确,您将看到查询的输出,如下所示。