我是Nifi的新手,所以您能帮助我了解此平台及其功能吗? 我是否可以使用Nifi进程在Hive中创建一个新表,并按照下面定义的方式每周将数据从Teradata数据库移入该表? 我将如何处理?不确定我是否正在建立明智的流程。
以下过程就足够了: QueryDatabaseTable (并为teradata配置一个池服务,并定义新的表名和调度摄取)-> PutHiveStreaming (创建已定义的表)较早) 然后如何将Teradata架构拉入新表?
答案 0 :(得分:2)
如果您要在提取过程中创建新的配置单元表,则
方法1:
使用ConvertAvroToOrc处理器将 hive.ddl(外部表)属性添加到流文件中,因为我们可以使用此属性并使用PutHiveQL处理器执行该操作,然后我们就可以在蜂巢中创建表。
如果要创建事务表,则需要更改hive.ddl属性。
有关更多详细信息,请参见this链接。 如果您只想从源中提取增量记录,则可以使用
ListDatabaseTables(列出源数据库中的所有表)+ GenerateTableFetch(存储状态)处理器
方法2:
QuerydatabaseTable处理器将生成 Avro格式的流文件,然后您可以使用 ExtractAvroMetaData 处理器通过使用我们可以创建的一些脚本来提取 avro模式具有所需架构(即托管/外部/事务表)的新属性。