API de BigQuery de Google

Solo tengo algunos problemas con el ejemplo para crear una tabla con la API de BigQuery: https://developers.google.com/bigquery/docs/developers_guide#creatingatable

Antes todo funcionaba bien, pero aquí siempre recibo una excepción de análisis... Debajo del cuerpo enviado en la solicitud (de hecho, modifiqué el ejemplo a los datos y el esquema del siguiente ejemplo en el tutorial, pero tuve el mismo problema con el original esquema + conjunto de datos autogenerado) y la respuesta de error.

Cuando subo el mismo conjunto de datos usando la interfaz web y el mismo esquema, funciona de maravilla...

¡Gracias por cualquier pista útil!

Joerg


    --xxx Tipo de contenido: aplicación/json; charset=UTF-8 { "configuración": { "cargar": { "esquema": { "campos": [ { "nombre": "Nombre", "tipo": "CADENA", "modo": "REQUERIDO" , }, { "nombre": "Edad", "tipo": "INTEGER", "modo": "REQUERIDO", }, { "nombre": "Peso", "tipo": "FLOTANTE", "modo" : "REQUERIDO", }, { "nombre": "IsMagic", "tipo": "BOOLEAN", "modo": "REQUERIDO", } ] }, "destinationTable": { "projectId": "536201353583", " datasetId": "Benchmark", "tableId": "syntest2" } "writeDisposition": "WRITE_APPEND" } } } --xxx Content-Type: application/octet-stream "Shooting Star",15,325.5,true "Magic Muffin", 12,411.5, verdadero "Blaze", 16,312.2, falso "Rojo antiguo", 22,388.2, falso --xxx--


    {'status': '400', 'content-length': '171', 'expires': 'Fri, 01 Jan 1990 00:00:00 GMT', 'server': 'HTTP Upload Server Creado el 30 de abril de 2012 12:11:36 (1335813096)', 'pragma': 'no-cache', 'cache-control': 'no-cache, no-store, must-revalidate', 'date': 'Thu, 03 May 2012 19:40:00 GMT', 'tipo de contenido': 'aplicación/json'} { "error": { "errores": [ { "dominio": "global", "razón": "parseError", "mensaje ": "Error de análisis" } ], "código": 400, "mensaje": "Error de análisis" } }

preguntado el 03 de mayo de 12 a las 20:05

Le sugiero que use la API de cliente de BigQuery proporcionada por Google en lugar de analizar la solicitud/respuesta HTTP sin procesar, esta es la de python (otros en el enlace a continuación): desarrolladores.google.com/resources/api-libraries/documentation/… Según Google, ha mejorado la seguridad y una mejor integración de idiomas: desarrolladores.google.com/bigquery/client-libraries -

2 Respuestas

El error de análisis que está viendo se refiere a su solicitud JSON, no a los datos CSV.

Además del error de análisis señalado por Jordan (falta una coma después de la tabla de destino), también tiene comas finales en los objetos que definen el esquema de la tabla, que es JSON no válido. ¡Intenta eliminarlos y ve si eso ayuda!

contestado el 04 de mayo de 12 a las 17:05

Parece que te falta una coma entre la llave final de la tabla de destino y el especificador de disposición de escritura.

contestado el 03 de mayo de 12 a las 22:05

Hola, gracias por señalar esto. Desafortunadamente, no ayudó a resolver mi problema... ¿El error de análisis se relaciona con la solicitud o con los datos reales? - js84

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.