将GCS存储桶数据导出到RDBMS(vertica)数据库

时间:2019-08-07 11:11:49

标签: google-cloud-platform airflow sqoop

如何使用sqoop将GCS存储桶数据(.csv)加载到位于另一台服务器的RDBMS(vertica)数据库中。

我在GCS存储桶中有一个数据,可以使用SQOOP通过hadoop边缘节点将此数据加载到位于另一台服务器中的Vertica(RDBMS)数据库中。

但是此边缘节点将不是运行sqoop命令并成为中间数据占位符的一致节点。

因此我们决定直接从GCS加载到Vertica。

因此,有什么方法可以将GCS中的数据加载到vertica,而无需依赖于本地hadoop集群。

我希望以下是可能的方法,但无法找到确切的方法。

  1. 创建dataproc集群,将shell脚本复制到包含sqoop命令的dataproc并在dataproc中运行以加载数据。

  2. Airflow(composer)中的SqoopOperator抛出以下错误。可能是不允许GCS存储桶作为导出目录而不是HDFS目录。

由于部分访问GCP,我陷入了中间,请您帮我解决此问题。

 sqoop_gcs_export = SqoopOperator(
    dag=dag,
    task_id='sqoop_gcs_export',
    conn_id='vertica_conn',
    cmd_type='export',
    table='MSTAGE.MCOM_ORD_SUMM',
    driver='com.vertica.jdbc.Driver',
    export_dir='gs://mtech-daas-customer-pdata-dev- 
    export/mcy_clckstream_ord_sum/2019-07-29/',
    input_fields_terminated_by='    ',
    input_lines_terminated_by='\n',
    batch='True')


    [2019-08-07 10:03:53,553] {models.py:1760} ERROR - [Errno 2] No such 
    file or directory
    Traceback (most recent call last)

0 个答案:

没有答案