请问在机器学习PAI使用CatalogSinkStreamOp将数据存到MySQL时,数据量比较小时不能落库 有人遇到过这个问题吗?
5000条数据以上才能落库 是不是有相关配置设置这个阈值 文档里对这部分也没找到相关的配置
在阿里云的机器学习PAI(Platform for AI Innovation)中,CatalogSinkStreamOp是用来将数据写入到ODPS Catalog中的,而不是MySQL。如果你的数据量较小,可能是因为ODPS Catalog的写入阈值设置导致的。
在ODPS中,有一个叫做"max_write_row_num"的参数,它决定了单次写入的最大行数。默认情况下,这个参数的值是1000,也就是说,每次写入的数据量不能超过1000行。如果你的数据量小于1000行,那么可能无法一次写入成功,需要多次写入。
你可以通过以下方式修改这个参数:
ALTER TABLE table_name SET TBLPROPERTIES ('odps.sql.max-write-row-num' = 'xxx');
其中,'xxx'是你想要设置的新的最大行数。
我了解到,PAI StreamSQL CatalogSinkStreamOp 插件并没有明确的阈值限制,即您可以在任何数据量下将数据发送到 MySQL 数据库。根据我的搜索结果,出现这种情况的原因可能是由于服务器连接 MySQL 数据库出现了问题。
一种可能性是数据库连接超时。PAI StreamSQL CatalogSinkStreamOp 插件可能会等待一段时间来连接数据库,如果您未设置足够长的超时时间,那么较少量数据可能无法及时发送到 MySQL 数据库中。
另一个可能性是您的 MySQL 数据库已经存在大量的空闲连接,导致新连接无法建立。此时,您需要联系数据库管理员进行调试。
还有一种可能性是您的 MySQL 数据库存储限制了最大连接数量。在这种情况下,您需要增加数据库的最大连接数以允许更多的连接。
建议您阅读 PAI StreamSQL 文档中关于 CatalogSinkStreamOp 的文档,了解其详细信息,或者尝试调高 MySQL 数据库的超时时间或最大连接数,以减少潜在问题。如果有其他问题,请查看 PAI StreamSQL 的文档,以了解更多关于配置方面的信息。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
人工智能平台 PAI(Platform for AI,原机器学习平台PAI)是面向开发者和企业的机器学习/深度学习工程平台,提供包含数据标注、模型构建、模型训练、模型部署、推理优化在内的AI开发全链路服务,内置140+种优化算法,具备丰富的行业场景插件,为用户提供低门槛、高性能的云原生AI工程化能力。