google-bigquery - 如何将 CLOB 数据类型列从 Oracle 移动到 Big Query
问题描述
我们的 oracle 应用程序数据库中有某些列被定义为 CLOB 和 NCLOB。如何将 CLOB 数据类型列从 Oracle 移动到 Big Query?我们正在使用数据流从 oracle 数据库中提取数据并写入 Big Query。
解决方案
在将 Oracle DB 数据转换为 GCP Bigquery 接收器时,我无法找到有关数据类型等效性的任何相关信息,但是我在 Spanner文档中看到了这种 ETL 的推荐数据类型转换:
CLOB、NCLOB、LONG列可以转换为STRING类型,但需要注意:
小对象(少于 2,621,440 个字符)可以存储为 STRING。考虑使用替代的 Google Cloud 产品(例如 Cloud Storage)来存储更大的对象。
我知道 GCP Spanner 是一个单独的产品,并且与 GCP Bigquery 相比具有一些重要功能,但从概念上讲,这两种 GCP 产品都支持简单的数据类型,据说可以用于相同的交换[CLOB , NCLOB] > STRING GCP 大查询。
您可以在 Apache Beam SDK 中找到可以实现上述转换的方法,并在ToString()
您PCollection
的管道代码中进行调整。
在这篇文章中阅读更多内容。
推荐阅读
- python - 捕获列表标签之间的文本并从 BeautifulSoup scrape 打印
- plsql - PL/SQL 如何在存储过程中调用存储函数
- python - deduper.blocker() 函数 - 无法解压不可迭代的 int 对象
- python-3.x - 如何安装 pytesseract?
- sharepoint - AI在什么情况下会计算用户洞察力?
- python-3.x - 您能否逐步解释以下代码的工作原理(第 n 个斐波那契数的 Python 程序)
- javascript - 为什么我的对象在更新对象状态后不会重新渲染?
- ios - 如何在导航栏中的按钮上设置约束?iOS 13 Swift 5(向导航控制器添加圆形个人资料图像按钮)
- java - 如何在android中预先加载网页并将它们保存到可以提供给viewholder以在cardview中显示网页的对象中?
- java - 将 Android 设备设置为 HTTP 代理服务器?