Проблема чтения BigQuery: не отображается реальный результат - PullRequest
0 голосов
/ 21 февраля 2020

Я загрузил несжатый файл CSV в BigQuery , используя Cloud Dataprep . При выполнении запроса на анализ данных он не возвращает значения должным образом.

Например, у меня есть данные в таблице tab_status , как показано здесь . Когда я делаю:

SELECT * FROM tab_status

Это показывает все значения. Однако, если я запрашиваю значения:

SELECT * FROM tab_status trim(lower(Status)) like '%active%'

, он возвращает ноль и не дает никакого результата.

Я проверил длину, превышающую строку длина ( показано здесь ):

SELECT DISTINCT trim(lower(Status)), length(trim(lower(Status))) FROM tab_status

Теперь, когда я экспортирую данные из BigQuery и открою их в Sublime * Текстовый редактор 1032 *, он показывает другой формат, как показано ниже:

6630 5f0a 0061 0063 0074 0069 0076 0065
000a 0068 0065 006c 0064 000a 0062 006f
0075 006e 0063 0065 0064 000a 0075 006e
0073 0075 0062 0073 0063 0072 0069 0062
0065 0064 000a 

Кто-нибудь может подсказать, как обращаться с этими данными в BigQuery , поскольку он правильно отображается в окне предварительного просмотра. Как я могу запросить значение? Доступны ли какие-либо преобразования / функции?

1 Ответ

0 голосов
/ 24 февраля 2020

Кажется, что ваши данные закодированы в Unicode. BigQuery ожидает UTF-8 байтов . Байты, отличные от UTF8, в основном декодируются с использованием UTF-8 и, следовательно, не передают истинного значения. Вы должны преобразовать свои данные в байты UTF-8, прежде чем загружать их в Bigquery.

Я не уверен, как вы сгенерировали ваши данные, но - это поток Stackoverflow , который объясняет, как преобразовать ваши данные в UTF-8 с помощью сценария Python.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...