Alink教程(Java版)
Alink教程(Python版)
该文档涉及的组件

第4章 数据库与数据表


答疑


1、追加写与覆盖写

【问题】

请问下用sink组件将数据写入数据库时,目前是追加写的,有没有办法是覆盖写的?

【答复】

Alink教程4.1节讲了这个问题,需要判断目标数据表是否存在,并执行相应的删除操作。可以调用Catalog 中相应方法实现。


2、Alink写hive可以overwrite吗?

【问题】

Alink写hive可以overwrite吗?有这个参数,但是没有生效。现在我这边测试,每次都是append。无法overwrite。

【答复】

首先要看一下是以批的方式还是流的方式进行的写操作。在数据表存在的情况下,二者的表现不一样。


3、读取ODPS上的分区表

【问题】

odps上的表是分区表,那我应该怎么读取呢?

【答复】

可以这么写。

CatalogObject catalogObject = new CatalogObject(odpsCatalog, new ObjectPath(odps_project,
  "test_catalog_source_sink3"), new Params().set(OdpsSourceParams.PARTITIONS, "ds=20190729"));



4、Hive版本必须2.3.4吗

【问题】

例子中的Hive版本是2.3.4,实际应用中必须也是2.3.4吗?

【答复】

支持多个版本的。可以查询当前支持的各种hive版本,参考教程第2.7节中“插件下载”部分,或者 https://www.yuque.com/pinshu/alink_guide/plugin_downloader