在 InfoBright ICE 中加载数据时遇到问题
ICE 版本: infobright-3.5.2-p1-win_32
我正在尝试加载大文件,但不断遇到错误问题,例如:
数据或列定义错误。行:989,字段:5。
这是第 989 行,字段 5:
“(450)568-3***”
注意:最后 3 个字符也是数字,但是不想在这里发布某人的电话号码。
该字段与该字段中的任何其他条目实际上没有什么不同。
该字段的数据类型是 VARCHAR(255) NOT NULL。
ICE Version: infobright-3.5.2-p1-win_32
I’m trying to load a large file but keep running into problems with errors such as:
Wrong data or column definition. Row: 989, field: 5.
This is row 989, field 5:
”(450)568-3***"
Note: The last 3 chars are numbers as well, but didn’t want to post somebodys phone number on here.
It’s really no different to any of the other entries in that field.
The datatype of that field is VARCHAR(255) NOT NULL
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
此外,如果您升级到当前版本 4.0.6,我们现在支持 LOAD 期间的行级错误检查并支持拒绝文件。
要启用拒绝文件功能,您必须指定 BH_REJECT_FILE_PATH 和关联参数之一(BH_ABORT_ON_COUNT 或 BH_ABORT_ON_THRESHOLD)。例如,如果您想要将文件 DATAFILE.csv 中的数据加载到表 T,但您预计该文件中的 10 行可能格式错误,则可以运行以下命令:
set @BH_REJECT_FILE_PATH = '/tmp/reject_file';
设置@BH_ABORT_ON_COUNT = 10;
将文件 DATAFILE.csv 中的数据加载到表 T 中;
如果拒绝的行数少于 10 行,将输出警告,加载将成功,所有有问题的行将输出到文件 /tmp/reject_file。如果 Infobright 加载程序发现第十个坏行,则加载将终止并出现错误,并且迄今为止找到的所有坏行都将输出到文件 /tmp/reject_file。
Also, if you upgrade to the current release 4.0.6, we now support row level error checking during LOAD and support a reject file.
To enable the reject file functionality, you must specify BH_REJECT_FILE_PATH and one of the associated parameters (BH_ABORT_ON_COUNT or BH_ABORT_ON_THRESHOLD). For example, if you want to load data from the file DATAFILE.csv to table T but you expects that 10 rows in this file might be wrongly formatted, you would run the following commands:
set @BH_REJECT_FILE_PATH = '/tmp/reject_file';
set @BH_ABORT_ON_COUNT = 10;
load data infile DATAFILE.csv into table T;
If less than 10 rows are rejected, a warning will be output, the load will succeed and all problematic rows will be output to the file /tmp/reject_file. If the Infobright Loader finds a tenth bad row, the load will terminate with an error and all bad rows found so far will be output to the file /tmp/reject_file.
当文件的最后一行不是由 --lines-termerated-by="\n" 的值终止时,我遇到了这个问题。
例如,如果我导入一个包含 9000 行数据的文件,我必须确保文件末尾有一个新行。
根据文件的大小,您可以使用文本编辑器打开它并按回车键
I've run into this issue when the last line of the file is not terminated by the value of --lines-terminated-by="\n".
For example If I am importing a file with 9000 lines of data I have to make sure there is a new line at the end of the file.
Depending on the size of the file, you can just open it with a text editor and hit the return k
我发现这与 '\r\n' 与 '\n' 的差异一致。即使在 Windows 上的加载器上运行,'\n' 也会 100% 成功(假设您的数据与列定义没有真正的问题)
I have found this to be consistent with the '\r\n' vs. '\n' difference. Even when running on the loader on Windows, '\n' succeeds 100% of times (assuming you don't have real issues with your data vs. col. definition)