新建数据表时,支持针对标准的字段,直接设置质量检测指标,并支持针对指标设置过滤条件。在该过程中,必须保证手动设置的过滤条件(即输入的SQL条件语句)必须符合要求:
格式为T.`column` = 'XX'
参数解释:
column为字段名,当取值为数据库关键字或者含有特殊字符的时候必须添加反引号。
T:表别名。
XX为配置的值,其引号必须为英文单引号。
语句中不能出现create/truncate/delete/drop/insert/update等非法字符。
在Kafka类型数据源中新建message类型的表时,其表结构设计输入框是一个标准的Json编辑器。
编辑器中给出了示例,其中冒号左侧的key是字段名,冒号右侧的value是字段类型。需要注意:
字段可以多层嵌套。
字段类型必须是Kafka支持的字段类型。Kafka支持的基本字段类型包括:string、boolean、integer、bigint、float、double、timestamp。
此外,还支持复合类型对象和数组,其中当数组元素类型为基本类型elementType时,写法为:
"arrayName":"array[elementType]"
示例如下:
{
"key1": "valuestring",
"map1": {
"map2": {
"m2k1": "string"
},
"m1k1": "string"
},
"array1": "array[string]",
"array2": [
{
"a2k1": "string",
"a2k2": "boolean"
}
]
}
Hive和DLH数据源中存储方式为Hudi的数据表目前仅支持Parquet格式的文件。当需要写入数据时,如果直接通过insert语句插入数据或者直接上传数据文件,则该表将会从Parquet格式的文件变为一个普通的Parquet表,影响系统使用。因此,请使用对应的实时作业写入数据。
如果需要使用Spark引擎对Hudi存储方式的表执行写入或查询操作时,则在Hive或DLH数据源中创建Hudi存储格式的数据表时,表结构设计中字段类型的选择需参照如表-1中的映射关系。
表-1 涉及Spark操作Hudi表时Hudi表字段类型要求
Spark中的字段类型 |
Hudi表中的字段类型 |
boolean |
boolean |
byte |
int |
short |
int |
integer |
int |
long |
long |
date |
date |
timestamp |
timestamp(spark2.4.3及以上版本支持) |
float |
float |
double |
double |
string |
string |
decimal |
decimal |
binary |
bytes |
array |
array |
map |
map |
struct |
struct |
char |
不支持 |
varchar |
不支持 |
numeric |
不支持 |
null |
不支持 |
object |
不支持 |
对于新创建的租户而言,由于大数据集群角色赋权不支持为kerberos普通用户配置topic管理权限(创建、删除),因此该租户使用kafka类型表时,需要先使用能够正确授权的用户创建好kafka类型表,然后通过表管理授权的方式授权给新创建的租户。
使用该外部的kafka数据源操作topic,需要在当前工作空间配置的集群适配器中配置/etc/hosts信息,具体步骤如下:
查找当前工作空间配置的默认集群名称,例如bdc。
在运营平台所有部署节点的后台上,搜索该名称命名的容器:
docker ps | grep bdc
集群适配器容器全名称类似为:dataoperation-hdp-bdc-12345。
在运营平台所有部署节点后台上,进入到搜索到的容器中:
docker exec -it {容器全名称} bash
打开/etc/hosts文件,将外部kafka的节点信息加入其中。
添加完成后,保存并退出。
之后即可在表管理中正常访问该外部kafka集群。
通过SQL建表功能在Vertica数据源中创建表时,个别Vertica表偶现在表管理中展示的字段为空,实际在Vertica数据库中对应的物理表正常。此时,通过将业务库中表do_data_asset.md_table_meta的lable字段值改为1然后再次采集元数据,即可解决。
版本升级后,需要手动将不显示的主题共享,并将不显示的分层迁移至适当的分层归属下面然后共享。
在系统管理节点(执行系统服务部署操作的服务器)后台中,编辑数据资产的重启脚本(service-startup.sh),去掉“修改java.security配置文件,放开TLSv1算法,默认关闭”下面一行的注释并保存,然后执行restart_dataasset.sh脚本重启服务。
注意:打开TLSv1可能存在安全漏洞,请谨慎操作。
从E5302版本开始,HBase、Elasticsearch、Kafka、Hive、DLH、STDB类型的表已不再支持共享,E5301及之前版本中已共享的表在升级到E5302之后,如果需要继续在其他工作空间中使用,请保证其他工作空间分配的大数据集群与表所在的工作空间分配的大数据集群一致。
从E5302版本开始,HBase、Elasticsearch类型的表已不再支持注册/取消离线表操作,E5301及之前版本注册的离线表会在升级到E5302之后自动取消离线表,无需其他处理。
表管理功能中,在部分数据源下创建表时,需要选择模式。本系统对部分数据源的系统模式进行了屏蔽,不支持在新建表时选择这些系统模式:
Oracle数据源:APEX_PUBLIC_USER、ANONYMOUS、APEX_030200、APPQOSSYS、CTXSYS、DBSNMP、EXFSYS、FLOWS_FILES、MDSYS、OLAPSYS、ORDDATA、ORDSYS、OUTLN、OWBSYS、SYS、SYSMAN、SYSTEM、WMSYS、XDB
PostgreSQL数据源:information_schema、pg_catalog
Greenplum数据源:information_schema、pg_catalog
SeaSQL MPP数据源:information_schema、pg_catalog
SQL Server数据源:INFORMATION_SCHEMA、sys、db_owner、db_accessadmin、db_securityadmin、db_ddladmin、db_backupoperator、db_datareader、db_datawriter、db_denydatareader、db_denydatawriter