hive数据文件加载的区别

应用场景:开发数据采集工具,采集各种类型数据库数据为文件到服务器
数据文件命名方式:/datacollection/抽取数据业务日期/系统名称/系统名称_源系统schema_表名_业务日期_666_批次号.DAT
数据任务文件命名方式:/datacollection/抽取数据业务日期/系统名称/系统名称_源系统schema_表名_业务日期_666_批次号.CTL
当部署采集工具时,当采集工具应用所在服务器和hiveserver服务器不在同一个服务器上面的时,
会出现本地文件不存在的报错:no files matching path file ‘xxx’
hive 加载数据文件路径:load hive local inpath ‘服务器本地路径’ overwrite into table ods.xxx partition ( dt = ‘业务日期’)
为什么不用hdfs路径load(因为hdfs文件加载到hive表,hdfs上的文件就不存在了)
原因是hive load local inpath 语句只能加载和hiveserver同一台服务器的数据文件,所以采集应用程序生成的数据文件和hiveserver不在同一个服务器,导致数据文件加载失败,
解决方案:建一个采集应用程序和hiveserver服务器的共享文件夹,采集工具生成文件路径配置成为共享文件路径,这样就可以解决了,共享文件如何建自行百度

你可能感兴趣的:(大数据)