我有这种情况: -我们在Hive表上创建了Oracle Big Data External表(使用下面的脚本); -配置单元表按时间戳列进行分区; -蜂巢表存储为实木复合地板;
问题是分区列在Oracle外部表中为NULL。
您知道我们为什么以及如何从该列读取数据吗? 您知道类似的方法(oracle外部表)吗? 您认为sqoop导出更好吗?
Oracle表:
CREATE TABLE "O_DL_LDWH"."ADV_BASE_RAW_FLORIN"
(Columns,
Partitioned_column TIMESTAMP (6)
)
ORGANIZATION EXTERNAL
( TYPE ORACLE_HIVE
DEFAULT DIRECTORY "DEFAULT_DIR"
ACCESS PARAMETERS
( com.oracle.bigdata.tablename=hive_table_name)
);
配置单元表:
CREATE EXTERNAL TABLE raw.crddacia_raw(
columns)
PARTITIONED BY (t_dl_cob_dt timestamp)
STORED AS parquet
LOCATION 'hdfs://EGITINT-RO-DC1-DEV01-ns/datalake-fat01/raw/CRDDACIA'
提示:如果按字符串或其他类型进行分区,则效果很好!