Q:为什么嬴图Transporter无法连接嬴图服务器?服务器实例在嬴图Cloud上
A:如果服务器实例是通过嬴图Cloud部署的,需要在嬴图Cloud页面上该服务器实例的网络设置(Network Settings)中将客户端(运行嬴图Transporter的机器)的IP添加至允许接入站点列表(InBound Allowed IPs)。
Q:导入/导出时报错rpc error: code = ResourceExhausted desc = Received/Sent message larger than max (31324123 vs. 4194304)是什么意思?怎么解决?
A:该报错是指在导入/导出某一个数据分批时,批的数据量31324123 byte超过了限值4194304 byte,原因可能是导入/导出的属性过多、属性数据量过大(用text类型存储的超长文本)、或者批大小batchSize设置过大,导致批的数据量超过了服务器的max_rpc_msgsize(默认4M)或Go SDK的MaxPacketSize(默认40M)。
解决方案1:降低配置文件中的batchSize
解决方案2:提高配置文件中的MaxPacketSize
,和/或提高服务器配置max_rpc_msgsize
(后者须重启服务器)。
Q:导入时间类型的格式有什么要求?
A:请按以下格式书写:
- [YY]YY-MM-DD HH:MM:SS
- [YY]YY-MM-DD HH:MM:SSZ
- [YY]YY-MM-DDTHH:MM:SSZ
- [YY]YY-MM-DDTHH:MM:SS[+/-]0x00
- [YY]YYMMDDHH:MM:SS[+/-]0x00
支持4位/2位的年份(2位年份≥70的解析为19xx,<70的解析为20xx),支持2位/1位的月和日,横杠(-)可用斜杠(/)代替,[+/-]0x00
根据实际情况写为+0700
、-0300
等,Z表示UTC 0时区。
Q:导出的时间类型是什么时区?
A:datetime无时区概念,导出时无时区信息。timestamp导出时转化为timezone
设置的时区,未设置该参数则为本地时区。
Q:导入的字段_id
、_uuid
、_from
、_to
、_from_uuid
、_to_uuid
可以声明为string、uint64么?
A:不可以。导入的字段代表系统属性时,需将其类型配置为相应的系统属性名。导入的字段名与系统属性重名但不代表系统属性的,要么配置为_ignore(忽略不导入),要么通过new_name
修改名称。
Q:导入CSV时警告bare " in non-quoted-field或extraneous or missing " in quoted-field是什么意思?怎么解决?
A:这两个警告均与字段中的英文双引号有关。
当quotes
为false时,字段中的双引号被解析为包裹字段内容的边界(不作为字段内容,且必须出现在字段的开头和结尾),两个双引号才被解析为双引号字符(作为字段内容)。例如,导入的字段内容为“I like when Jack said "If you jump I jump".” 时,quotes
为false则会报警,需要将字段内容清洗为“I like when Jack said ""If you jump I jump"".”才能正确导入。
当quotes
为true时,字段中的双引号被解析为双引号字符本身(作为字段内容),上面列举的字段的原始内容即可成功导入,无需在首尾添加双引号,也无需将原始字段内的双引号用两个双引号进行转义。
Q:导入CSV时字段中含有英文双引号、英文逗号、换行符要怎么处理?
A:以下为三种符号单独出现时的处理原则,如果这些符号同,则需选择其中保守的方案。
含有英文双引号时,见上一个问题。
含有英文逗号时,如果separator
也为英文逗号,为了防止字段中的逗号被解析为分隔符,必须用双引号将字段内容包裹,此时quotes
必须为false;否则,无需专门处理。
含有换行符是,必须用双引号将字段内容包裹,并保证quotes
为false。
Q:CSV文件中字段值为null时,为什么不能成功导入为null类型?
A:CSV中字段中的null会被解析为值为null的字符串。只有空字段才会解析为null值,即两个相连的分隔符。