首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以使用云数据融合FTP -> GCS GCS -> BQ

是否可以使用云数据融合FTP -> GCS GCS -> BQ
EN

Stack Overflow用户
提问于 2020-10-28 16:39:55
回答 1查看 1.2K关注 0票数 0

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

我有许多sftp提供商提供不同的结构化格式的文件。csv,json,地板,和avro

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

在加载到BQ之前,我的第一站将是,这样我就有了一个数据的不变副本。

sftp站点将有多个文件表示多个表。

代码语言:javascript
复制
/root/table_1
/root/table_2
/root/table_3

我首先试图了解是否使用云数据融合管道将文件从SFTP复制到GCS。事实证明,这是具有挑战性的。

  1. 我能用融合吗?
  2. 我是否需要为每个文件提供模式,还是可以推断?
  3. 是否需要手动枚举每个表?理想情况下,我希望将所有文件从SFTP复制到GCS
  4. 在GCS中,我想为每个文件在BigQuery中创建一个外部数据源。这有可能吗?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-29 21:45:19

请考虑云数据采集是一个ETL (提取-转换-加载)工具;在这种情况下,管道将处理文件中的数据,而不是文件本身;因此,很难定义一个简单的管道来将文件上传到存储。

为了解决这个问题,我考虑使用Javascript变换来使用客户机库;但是,它不允许您导入依赖项;因此,您不能使用它们,因此对服务的身份验证步骤可能会比较复杂。

同样,由于文件有不同的格式,因此似乎必须定义一个转换来根据文件的类型来分离/处理这些文件。

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

  1. 从一个或多个SFTP服务器提取文件
  2. 这些文件有不同的格式(csv、json、parquet和avro)
  3. 文件需要上传到云存储
  4. 每个存储文件都与作为外部源的BigQuery表关联

基于此,我认为使用像云作曲家这样的编排工具是一个更好的选择。

气流使用达格 (有向无环图)作为您想要运行的所有任务的集合,其组织方式反映了它们之间的关系和依赖关系;在这种情况下,DAG将具有以下任务:

  1. 使用运算符从工作人员内的sftp服务器获取文件。
  2. 一旦文件在工作人员中,您就可以使用PythonOperator在项目中使用云存储库来实现将文件上传到桶中
  3. 一旦文件在存储中,就可以使用PythonOperator来使用BigQuery库,或者使用BashOperator来对创建以每个文件为外部源的表使用bq

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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64577407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档