En el ejemplo que se muestra a continuación, la última línea no se carga. Me aparece un error:Datos entre comillas y el separador de campo
Data between close double quote (") and field separator:
Esto parece un error, ya que todos los datos entre el símbolo de la tubería deben tratarse como un solo campo.
esquema: uno: cuerda, dos: cuerda, tres: cuerda, cuatro: cadena
Subir archivo:
This | is | test only | to check quotes
second | line | "with quotes" | no text
third line | with | "start quote" and | a word after quotes
La primera y segunda línea se procesa anteriormente. Pero no el tercero.
Actualización:
Pueden algunos explique por qué hace lo siguiente trabajo excepto la tercera línea?
This | is | test only | to check quotes
second | line | "with quotes" | no text
third line | with | "start quote" and | a word after quotes
forth line | enclosed | {"GPRS","MCC_DETECTED":false,"MNC_DETECTED":false} | how does this work?
fifth line | with | {"start quote"} and | a word after quotes
Puede haber alguna explicación elegante para esto. Desde la perspectiva del usuario final, esto es absurdo.
he intentado su actualización, y el ejemplo que dio en realidad no funciona Al igual que la mayoría de las aplicaciones de análisis de CSV, BigQuery considera por defecto las comillas dobles (") como un carácter que delimita el campo. La tercera línea no se escapó correctamente (ver mi respuesta a continuación) y la ingestión arrojará un error. Sus opciones son: 1. Cambie el parámetro "configuration.load.quote" en sus solicitudes de ingestión a otra cosa que no sea una comilla doble (un carácter que no aparece en sus datos). 2. Escape de sus datos como se recomienda a continuación ... por ejemplo, la clase csv de Python hace esto automáticamente. –
Si bien puede ser útil considerar la posibilidad de hacer cosas como establecer "configuration.load.quote" en NULL, creo que es importante ser muy explícito con los delimitadores y los caracteres que encierran el campo cuando se trabaja con grandes cantidades de datos CSV.Ayuda a detectar errores en los datos subyacentes y a garantizar que los datos que está ingiriendo son válidos. –