我正在将表从Oracle迁移到包含LOB列的Vertica。 LOB列的最大实际大小为800MB。如何在Vertica中容纳这些数据?是否适合使用Flex Table?
在Vertica的文档中,它表示Flex表中加载的数据存储在 raw 列中,该列是LONG VARBINARY数据类型。默认情况下,它的最大值为32MB,根据文档可以使用参数FlexTablesRawSize更改(即增加)。
我认为这是在Vertica中存储大型对象的方法。我们只需要更新FlexTablesRawSize参数来处理800MB的数据。如果这是最佳方式或者有更好的方法,我想咨询一下。或者这会与Vertica的表行约束限制冲突,每行只允许最多32MB的数据吗?
提前谢谢。
答案 0 :(得分:1)
如果您使用Vertica构建它 - 运行大数据数据库,您可以像在任何分析数据库中一样,尝试避免表中的大对象。 BLOB和CLOB通常用于存储非结构化数据:大型文档,图像文件,音频文件,视频文件。您无法通过此类列进行过滤,无法在其上运行功能,或对其进行求和等,您无法对其进行分组。
安全且高性能的设计应该导致将文件名存储在Vertica表列中,甚至可以在Hadoop中存储文件,并让前端(通常是BI工具,所有BI工具都支持)检索文件将它带到报告屏幕......
祝你好运......马