首页 / 浏览问题 / 云GIS / 问题详情
iServer机械学习的密度聚类分析时选择分析和结果数据源的问题
260EXP 2023年05月23日
如题。

问题1:

现在有一个UDBX形式的源数据,将这个数据源里的数据集放到了PostgreSQL上,想使用这个数据进行分析,

但iServer的机械学习功能里的密度聚类分析每次都会失败

分析数据集

--providerType=sdx --server=localhost:5432 --database=DataDemo01 --user=postgres --password=postgres --dbtype=postgresql --dataset=dataset01

结果数据集

--providerType=sdx --server=localhost:5432 --database=DataDemo02 --user=postgres --password=postgres --dbtype=postgresql --dataset=result_dataset01

这种情况下分析失败。

另一种情况,使用UDBX的数据进行分析,保存到PostgreSQL中,分析可以正常结束

分析数据集

sdx --server=D:/Test/demo.udbx --dbType=udbx --dataset=dataset01
前后两者的区别只有分析数据集是udbx还是PostgreSQL的区别,请问为什么使用PostgreSQL的数据源作为分析数据就无法分析?应该如何选择PostgreSQL的数据集作为分析数据集?

问题1的补充:我把我分析用的数据备份,换成了全英文的名字后,可以两边都是postgresql的情况下进行分析了,请问为什么无法使用文字?

问题2:

刚刚放在PostGIS中进行尝试,把--dbtype=postgresql 改成--dbtype=pggis就能正常得到结果,但得出结果的数据源放在iServer中作为data服务发布的时候,新的分析结果数据集必须停止这个服务再重启才会更新上去,请问能否在PostGIS中添加一个新的数据集后,iServer的data服务自动刷新。

问题2的补充:postgresql似乎也是一样无法刷新,在iserver-system.xml中我明明设置了

<checkDatasourceConnectionInterval>30</checkDatasourceConnectionInterval>

<refreshDatasource>true</refreshDatasource>

这两项,但分析结果数据在30秒后还是不会显示

1个回答

问题1的问题原因:是无法连接上pg数据源导致分析失败,无法连接上可能有两个原因(1、先确定数据源到底是postgis还是postgresql数据源,其写法是有区别的;2、其次数据源的连接参数是否正确)。数据源连接写法示例:

# postgis数据源连接方式
--providerType=jdbc --host=localhost --database=test1 --user=supermap --passwd=supermap --dbtype=postgis --dataset=fwsj --port=5432 --alias=test11

# postgresql数据源连接方式
--server=127.0.0.1:5432 --database=postgresqlTestDB --password=supermap --dbType=postgresql --alias=postgresqlTestDB --user=supermap --dataset=res1 --providerType=sdx

问题2:建议检查iserver版本,10.2.1版本的iserver对于数据库型数据源如果有数据新增后,刷新数据服务即可看见新增数据表
杨兵
1
1,520EXP 2023年05月23日
感谢解答

您好,我这边换成使用11.0.1版本的iServer后,密度聚类分析里多出来了新的集群相关的参数

用默认的方法去分析似乎会导致分析失败,请问这边正确的参数输入方式是什么样的?

聚类数目阈值改成4也不行
已解决,是我输入参数问题
...