我正在尝试使用Pig脚本中的DBStorage将数据存储到MySQL。 当我运行脚本时,我收到错误无法读取输入文件。 而当我尝试转储以存储相同的数据文件时,其工作正常。 样品猪:
%default DATABASE_HOST 'localhost';
%default DATABASE_NAME 'Test';
%default DATABASE_USER 'username';
%default DATABASE_PASS 'password';
%default DATABASE_DRIVER 'com.mysql.jdbc.Driver';
%default DATABASE_TYPE 'mysql';
A = LOAD '/tmp/TestDivya/Pig/PigSQLTest.txt' using PigStorage() as (name: chararray);
STORE A into 'test' using org.apache.pig.piggybank.storage.DBStorage('$DATABASE_DRIVER', 'jdbc:$DATABASE_TYPE://$DATABASE_HOST/$DATABASE_NAME', '$DATABASE_USER', '$DATABASE_PASS', 'INSERT INTO Test(name) VALUES (?)');
HadoopVersion PigVersion UserId StartedAt FinishedAt Features
2.7.1.2.3.4.0-3485 0.15.0.2.3.4.0-3485 hdfs 2016-01-21 01:34:552016-01-21 01:35:07 UNKNOWN
Failed!
Failed Jobs:
JobId Alias Feature Message Outputs
job_1453263223178_0042 A MAP_ONLY Message: Job failed! hdfs://ip-xxx-xx-xx-xxx.ap-southeast-1.compute.internal:8020/user/hdfs/test,
Input(s):
Failed to read data from "/tmp/TestDivya/Pig/PigSQLTest.txt"
Output(s):
Failed to produce result in "hdfs://ip-xxx-xx-xx-xxx.ap-xxxxxx-1.compute.internal:8020/user/hdfs/test"
Counters:
Total records written : 0
Total bytes written : 0
Spillable Memory Manager spill count : 0
Total bags proactively spilled: 0
Total records proactively spilled: 0
Job DAG:
job_1453263223178_0042
我的群集在具有Hortonworks HDP 2.3.4的EC2上设置,并使用HDP MYSQL数据库存储猪输出。
非常感谢指针。
谢谢,
答案 0 :(得分:0)
我找到了解决方案。 必须在pig.properties文件中添加mysql连接器作为附加jar。 它起作用了。 将它添加到猪控制台中,没有帮助。
由于