IllegalArgumentException Wrong FS: file://data/etl/query_sql/2-55G.txt, expected: file:///
时间: 2023-08-24 13:09:40 浏览: 33
这个错误的原因是你使用了错误的文件系统前缀。在这个例子中,你使用了 "file://data/etl/query_sql/2-55G.txt",但是正确的前缀应该是 "file:///data/etl/query_sql/2-55G.txt"。注意到在 "file://" 后面需要加上三个斜杠来指定本地文件系统路径。
相关问题
Exception in thread "main" java.lang.IllegalArgumentException: Wrong FS: hdfs://hadoop102:8020/ts_regex/output, expected: file:///
这个异常是因为你的代码中使用了错误的文件系统(FS)。根据异常信息,你在代码中使用了Hadoop分布式文件系统(HDFS)的路径(hdfs://hadoop102:8020/ts_regex/output),但实际上期望的是本地文件系统(file:///)的路径。
要解决这个问题,你可以通过以下几种方式之一:
1. 将文件路径更改为本地文件系统路径。例如,将路径改为 file:///ts_regex/output。
2. 如果你确实需要使用HDFS路径,确保你的代码能够正确连接到HDFS并操作文件。这可能涉及到配置Hadoop集群和设置正确的环境变量。
3. 确保你的代码中使用的文件路径与实际文件所在的位置相匹配。检查文件是否存在,并确认路径是否正确。
根据你的具体情况,选择适合你的解决方案。
LOAD DATA INPATH 'file://usr/local/hadoop/yu.csv' INTO TABLE yu; FAILED: IllegalArgumentException Wrong FS: file://usr/local/hadoop/yu.csv, expected: file:///
这个错误信息表明你使用了错误的文件路径格式。在本地文件系统中,正确的文件路径格式应该是 `file:///usr/local/hadoop/yu.csv`。你需要在 `file://` 前面添加一个额外的斜杠来指示本地文件系统。
所以你需要执行以下命令来加载本地文件系统中的数据到 Hadoop 分布式文件系统中。
```
LOAD DATA INPATH 'file:///usr/local/hadoop/yu.csv' INTO TABLE yu;
```
注意,`file:///` 前缀用于指示本地文件系统的根目录。如果你的文件不在根目录下,你需要相应地更改文件路径。