RedShift中没有LOB数据类型 [英] No LOB datatypes in Redshift

查看:28
本文介绍了RedShift中没有LOB数据类型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们正在进行Oracle到RedShift的迁移项目。 作为迁移的一部分,我们要求在RedShift中创建一个CLOB值支持列。 我们已经尝试了很多方法来找出类似于Oracle的CLOB的数据类型。 但不幸的是,我们没有成功。

我们在Oracle CLOB列中的最大长度为171,000个字符,需要将其移到RedShift中。

有没有人能建议一下,我们是否有办法在RedShift中创建数据类型为CLOB的列? 另外,请告诉我我们是否也有Blob的备用数据类型。

推荐答案

Documentation表示

AWS DMS将BLOB、CLOB和NCLOBS转换为目标Amazon RedShift实例上的VARCHAR。Amazon RedShift不支持大于64 KB的VARCHAR数据类型,因此您不能在Amazon RedShift上存储传统LOB

Furthermore,您最多可以在数据类型列中存储65535个字节:

名称 存储 范围
VARCHAR、CHARACTER VARING或NVARCHAR 4个字节+字符总字节,其中每个字符可以是1到4个字节 65535字节(64K-1)

因此,您似乎必须CLOB拆分为3列,例如

TEXT_1 VARCHAR(65000),
TEXT_2 VARCHAR(65000),
TEXT_3 VARCHAR(65000)

并将子字符串放入其中。

这篇关于RedShift中没有LOB数据类型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆