我对以下两个陈述感到很困惑。 1)确切的LOAD语句存储这个关系(学生),是在hdfs / PIG内部存储/本地机器上???
example : student = LOAD 'HDFS:/student' using PigStorage(',');
2)如果我尝试DUMP学生;然后显示结果需要将近30-40秒,其中LOAD语句需要1-2秒....如果我们试图从猪内部存储中检索数据那么为什么会出现延迟?
如果有人能清除这种疑虑(最好是执行流程),我们将不胜感激。谢谢你。我的环境:我正在使用VM进行学习。
答案 0 :(得分:1)
LOAD
不存储数据,但它只是指向文件的指针。
执行LOAD
语句时,不会执行MapReduce
任务。
仅在DUMP
或STORE
语句之后才启动MapReduce
作业。
我们在输出中看到了我们的数据,我们可以确认数据已成功加载。
DUMP
需要时间,因为它会禁用多个查询执行并减慢执行速度。 (如果在脚本中包含DUMP
语句以进行调试,则应将其删除。)
如果要存储任何数据,可以使用STORE
命令。