Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud platform 是否可以使用云数据融合FTP->;地面军事系统->;BQ_Google Cloud Platform_Google Cloud Data Fusion - Fatal编程技术网

Google cloud platform 是否可以使用云数据融合FTP->;地面军事系统->;BQ

Google cloud platform 是否可以使用云数据融合FTP->;地面军事系统->;BQ,google-cloud-platform,google-cloud-data-fusion,Google Cloud Platform,Google Cloud Data Fusion,我是GCP和云数据融合的新手。我发现您可以使用此服务将跨数据源的数据集成到数据池中 我有许多sftp提供商提供不同结构化格式的文件,如csv、json、parquet和avro 最终,我希望这些数据可以在BQ中获得 在加载到BQ之前,我的第一站是谷歌云存储,这样我就有了一个数据的不可变副本 sftp站点将有多个代表多个表的文件 /root/table_1 /root/table_2 /root/table_3 我首先尝试看看是否使用云数据融合管道将文件从SFTP复制到GCS。事实证明,这是一个

我是GCP和云数据融合的新手。我发现您可以使用此服务将跨数据源的数据集成到数据池中

我有许多sftp提供商提供不同结构化格式的文件,如csv、json、parquet和avro

最终,我希望这些数据可以在BQ中获得

在加载到BQ之前,我的第一站是谷歌云存储,这样我就有了一个数据的不可变副本

sftp站点将有多个代表多个表的文件

/root/table_1
/root/table_2
/root/table_3
我首先尝试看看是否使用云数据融合管道将文件从SFTP复制到GCS。事实证明,这是一个挑战

  • 我可以用Fusion吗
  • 我需要为每个文件提供模式吗,还是可以推断出来
  • 是否需要手动枚举每个表?理想情况下,我希望将所有文件按原样从SFTP复制到GCS
  • 一旦进入GCS,我想在BigQuery中为每个文件创建一个外部数据源。可能吗
  • 请考虑这是一个ETL(提取转换负载)工具;在这种情况下,管道将处理文件中的数据,而不是文件本身;因此,很难定义将文件上载到存储器的简单管道

    为了解决这个问题,我想到了使用客户端库;但是,它不允许您导入依赖项;因此,您无法使用它们,因此服务的身份验证步骤可能会很复杂

    同样,由于文件具有不同的格式,因此似乎必须根据文件类型定义转换以分离/处理文件

    另一方面,我了解您的使用场景是:

  • 从一个或多个SFTP服务器提取文件
  • 这些文件有不同的格式(csv、json、拼花和avro)
  • 文件需要上传到云存储
  • 每个存储文件都与作为外部源的BigQuery表相关联
  • 基于此,我认为使用一个类似于./P>的编排工具是一个更好的选择。 气流使用(有向无环图)作为要运行的所有任务的集合,以反映其关系和依赖性的方式组织;在这种情况下,DAG将执行以下任务:

  • 使用从workers中的sftp服务器获取文件
  • 一旦文件位于workers中,您就可以使用来使用云存储库将其添加到项目中
  • 一旦文件被存储,您就可以使用PythonOperator来使用BigQuery库,或者使用bash操作符来使用bq load来

  • 另一个好处是您不再需要担心文件类型,因为您提到的所有格式都是直接从它们创建表。

    对于在GCS中接收FTP源文件,这可能是一个有用的考虑因素:您的建议实际上就是我解决问题的方法。你对Composer是一个更适合这类作品的工具的评价也与我的发现一致。当我写这个问题时,我不知道数据融合主要处理文件的内容,而不仅仅是文件。谢谢