簡體   English   中英

CLI“ bq load”-如何使用不可打印字符作為分隔符?

[英]CLI “bq load” - how to use non-printable character as delimiter?

我在將數據作為單列行加載到BigQuery時遇到了麻煩。 我希望BigQuery能夠提供“沒有定界符”作為選項,但是與此同時,我需要選擇我能找到的最模糊的ASCII定界符,這樣我的單列行就不會分成幾列。

這樣做時,CLI不允許我輸入奇怪的字符,因此我需要通過Python或其他渠道使用API​​。

如何使用帶有不可打印字符的CLI?

BigQuery延遲數據加載的 Python示例:DDL,DML,分區和六十億億個Wikipedia頁面瀏覽量

#!/bin/python
from google.cloud import bigquery
bq_client = bigquery.Client(project='fh-bigquery')
table_ref = bq_client.dataset('views').table('wikipedia_views_gcs')
table = bigquery.Table(table_ref, schema=SCHEMA)
extconfig = bigquery.ExternalConfig('CSV')
extconfig.schema = [bigquery.SchemaField('line', 'STRING')]
extconfig.options.field_delimiter = u'\u00ff'
extconfig.options.quote_character = ''

要在BQ加載中使用不可打印的字符,可以在bash中使用echo

bq load \
 --source_format=CSV \
 --field_delimiter=$(echo -en "\x01") \
 --noreplace --max_bad_records=100 \
 <bq_dataset>.<bq_table> gs://<bucket_name>/<file_name>.csv

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM