如何配置bulkloader.yaml以将数据从csv上传到数据存储区

时间:2012-05-16 05:51:53

标签: csv datastore bulkloader

我正在尝试使用appcfg.py将csv文件上传到数据存储区。 我正在使用的命令是:

appcfg.py upload_data --application = s~hay-fe --kind = CasillaFinal --filename = CasillaFinal.csv --url = http://hay-fe.appspot.com/remote_api --config_file = bulkloader .yaml

然后我收到下一个错误:

BadArgumentError:预期整数id或字符串名称为参数2;收到无(a NoneType)。

这是我的CasillaFinal.csv: http://pastebin.com/embed_js.php?i=7dp24Yn1

这是我的bulkloader.yaml: http://pastebin.com/embed_js.php?i=iPE8PcZQ

我认为问题在于第一列(ID),因为我没有任何导入转换,但我不知道如何进行这种转换。

这里有'table'的java定义:

private @Id Long id;
private Key<EntidadFederativa> claveEntidad;
private int seccion;
private String tipoCasilla;
private String domicilio;
private String ubicacion;
private String referencia;
private String latitud;
private String longitud;
private int distrito;
private int claveMunicipio;
private String municipio;
private String letraInicial;
private String letraFinal;
private String casillaEspecial;

我正在使用客观化来实现持久性。

顺便说一句,我想知道列的顺序是否重要,因为数据存储区admin中的顺序与csv文件中的顺序不同。以下是数据存储区中的顺序:

ID | cas​​illaEspecial | claveEntidad | claveMunicipio |分布| domicilio | latitud | letraFinal | letraInicial | longitud | MUNICIPIO | referencia | seccion | tipoCasilla | ubicacion

而在csv中是:

ID | claveEntidad | seccion | tipoCasilla | domicilio | ubicacion | referencia | latitud | longitud |分布| claveMunicipio | MUNICIPIO | letraInicial | letraFinal | cas​​illaEspecial

最后,我想知道订单索引是从0还是1开始,因为错误表明错误在参数2中(预期整数id或字符串名称作为参数2)。

1 个答案:

答案 0 :(得分:0)

我发现它丢失了csv文件中的标题,当我添加它开始工作的标题时。