client:
version: v3
address: ...:***
user: ****
password: *****
concurrencyPerAddress: 10
retry: 3
manager:
spaceName: csap
batch: 128
readerConcurrency: 50
importerConcurrency: 512
log:
level: INFO
console: false
files:
- /home/csap_nebula/importer/nebula-importer_4.1.0_Linux_arm64/logs/nebula-importer.log
sources:
- path: node_batch_job.csv
csv:
delimiter: ‘,’
tags:
- name: batch_job
mode: UPSERT
id:
type: string
index: 0
function: null
props:
- name: job_id
type: string
index: 0
nullable: false
nullValue: “”
defaultValue: null
- name: job_code
type: string
index: 1
nullable: false
nullValue: “”
defaultValue: null
- name: job_label
type: string
index: 2
nullable: false
nullValue: “”
defaultValue: null
- name: batch_type
type: string
index: 3
nullable: false
nullValue: “”
defaultValue: null
- name: start_time
type: string
index: 4
nullable: false
nullValue: “”
defaultValue: null
- name: team_name
type: string
index: 5
nullable: false
nullValue: “”
defaultValue: null
- name: state
type: string
index: 6
nullable: false
nullValue: “”
defaultValue: null
- name: batch_no
type: string
index: 7
nullable: false
nullValue: “”
defaultValue: null
- name: member_name
type: string
index: 8
nullable: false
nullValue: “”
defaultValue: null
- name: job_priority
type: string
index: 9
nullable: false
nullValue: “”
defaultValue: null
- name: exe_msg
type: string
index: 10
nullable: false
nullValue: “”
defaultValue: null
采用impoter批量导入、更新数据,因为现在有部分点只想更新部分属性,保留一部分属性的值不变,更新时发现希望保留的属性全部更新为了NULL?update 和upsert都测试了,结果是一样,请问有什么办法解决么?附上impoter的yaml文件。
你的 default value 不应该设置为null 吧。
是应该设置成固定的值么?保留不变的属性是想通过开发程序来实现实时更新,另外的属性想通过impoter批量更新。最终希望实现的需求就是通过impoter批量更新数据时,有一部分属性值保持他当前不变,避免实时更新后的数据,impoter更新后数据变化。
保持原有值不变的那些,你在配置文件里就不应该出现,这个不知道现在是怎样的
配置文件里已经把保持不变属性删了,需批量操作的数据文件里也没有这部分数据,但是还是会把这部分属性自动更新为null
我们这个标签下是有13个属性,有三个属性希望保持不变,yaml里已经把这部分删掉了
老师,请问有解决办法么?
你的 importer 版本是多少,nebula 的版本是多少?
nebula是3.6版本,impoter是4.1.0版本
nebula是3.6.0版本,impoter是4.1.0版本