Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

关于SCQLEngine切换到csvdb数据源遇到的问题 #443

Open
llsydn opened this issue Jan 24, 2025 · 14 comments
Open

关于SCQLEngine切换到csvdb数据源遇到的问题 #443

llsydn opened this issue Jan 24, 2025 · 14 comments

Comments

@llsydn
Copy link

llsydn commented Jan 24, 2025

Issue Type

CCL

Have you searched for existing issues?

Yes

Link to Relevant Documentation

No response

Question Details

现在在原来两个engine的基础上,将mysql切换到csvdb数据源后,基础的环境都搭建好了,但是在最终的sql查询报错了。

[fetch]err: Code: 320, message:RunExecutionPlan run jobs(5d83212a-d9fb-11ef-bd89-9ebbc6a32678) failed, catch std::exception=[engine/datasource/csvdb_adaptor.cc:177] unknown column type=8 of column=id in table=guest
@llsydn
Copy link
Author

llsydn commented Jan 24, 2025

engine1
Image

Image

engine2
Image

Image

ccl,查询等命令:

Image

最终结果

Image

@jingshi-ant
Copy link
Collaborator

报错是在engine的配置文件里,这里指定了column的name和type,但是type不能直接填数字,合法的type示例:INT、FLOAT32、STRING
参考:

enum DataType {

或者直接不填column的name和type:
--embed_router_conf={"datasources":[{"id":"ds001","name":"csv db","kind":"CSVDB","connection_str":"{\"dbName\":\"bob\",\"tables\":[{\"tableName\":\"tbl_0\",\"dataPath\":\"/data/bob_tbl_0.csv\",\"columns\":[]},{\"tableName\":\"tbl_1\",\"dataPath\":\"/data/bob_tbl_1.csv\",\"columns\":[]},{\"tableName\":\"tbl_2\",\"dataPath\":\"/data/bob_tbl_2.csv\",\"columns\":[]},{\"tableName\":\"UPPER_table\",\"dataPath\":\"/data/bob_UPPER_table.csv\",\"columns\":[]}]}"}],"rules":[{"db":"*","table":"*","datasource_id":"ds001"}]}

@llsydn
Copy link
Author

llsydn commented Jan 24, 2025

报错是在engine的配置文件里,这里指定了column的name和type,但是type不能直接填数字,合法的type示例:INT、FLOAT32、STRING 参考:

scql/api/v1/column.proto

Line 25 in 8ed4e6a

enum DataType {

或者直接不填column的name和type:
scql/.ci/broker-docker-compose/engine/bob/conf/gflags.conf.template

Line 8 in 8ed4e6a

--embed_router_conf={"datasources":[{"id":"ds001","name":"csv db","kind":"CSVDB","connection_str":"{"dbName":"bob","tables":[{"tableName":"tbl_0","dataPath":"/data/bob_tbl_0.csv","columns":[]},{"tableName":"tbl_1","dataPath":"/data/bob_tbl_1.csv","columns":[]},{"tableName":"tbl_2","dataPath":"/data/bob_tbl_2.csv","columns":[]},{"tableName":"UPPER_table","dataPath":"/data/bob_UPPER_table.csv","columns":[]}]}"}],"rules":[{"db":"","table":"","datasource_id":"ds001"}]}

嗯嗯,好的,明白了。可能文档需要改一下。

Image

@jingshi-ant
Copy link
Collaborator

感谢反馈~ 如果感兴趣,也欢迎提pr修复,参与共建~
下次发版会修复文档问题。

@jingshi-ant
Copy link
Collaborator

代码位置:docs/reference/engine-config.rst

@llsydn
Copy link
Author

llsydn commented Jan 24, 2025

代码位置:docs/reference/engine-config.rst

嗯嗯,好的。

@llsydn
Copy link
Author

llsydn commented Jan 24, 2025

感谢反馈~ 如果感兴趣,也欢迎提pr修复,参与共建~ 下次发版会修复文档问题。

你好,想问下scqlengine,有计划适配dm达梦数据源嘛?

@jingshi-ant
Copy link
Collaborator

DM数据库看介绍兼容MYSQL协议(scqlengine配置成mysql数据源即可),如果你们有测试环境的话,建议你们直接试一下。

我们目前无达梦的相关数据源,因此没有暂无进一步的测试及验证计划。(scql本身欢迎社区贡献扩展数据源的支持)

@llsydn
Copy link
Author

llsydn commented Jan 24, 2025

DM数据库看介绍兼容MYSQL协议(scqlengine配置成mysql数据源即可),如果你们有测试环境的话,建议你们直接试一下。

我们目前无达梦的相关数据源,因此没有暂无进一步的测试及验证计划。(scql本身欢迎社区贡献扩展数据源的支持)

嗯嗯,好的。我测试一下。

还有这里问下,基于scdb中心化部署:
1.创建数据库、用户和数据表
2.注册 SCQLEngine Endpoints
3.授权 CCL

这三块对应的功能,我看文档是提供scdbclient 方式发送命令,这里有提供对应的api调用嘛?

@jingshi-ant
Copy link
Collaborator

达梦数据库也有其他用户试用,可以参考下其他issue:#412 (comment)

scdb也有api,这三步,可以当做常规sql发起请求即可(注意设置用户),参考我们官网文档:https://www.secretflow.org.cn/zh-CN/docs/scql/0.9.2b1/reference/scdb-api

@llsydn
Copy link
Author

llsydn commented Jan 24, 2025

达梦数据库也有其他用户试用,可以参考下其他issue:#412 (comment)

scdb也有api,这三步,可以当做常规sql发起请求即可(注意设置用户),参考我们官网文档:https://www.secretflow.org.cn/zh-CN/docs/scql/0.9.2b1/reference/scdb-api

嗯嗯,好的,我试试

@llsydn
Copy link
Author

llsydn commented Jan 24, 2025

达梦数据库也有其他用户试用,可以参考下其他issue:#412 (comment)

scdb也有api,这三步,可以当做常规sql发起请求即可(注意设置用户),参考我们官网文档:https://www.secretflow.org.cn/zh-CN/docs/scql/0.9.2b1/reference/scdb-api

不是很懂connection_str应该要怎么配置dm数据源的,按照下面配置,是报连接不上数据源

Image

@jingshi-ant
Copy link
Collaborator

初步看配置没什么问题:
先check下账密、db是否正确:使用mysqlclient使用相同配置去连DM数据库即可。
然后可以检查下DM是否有网关之类的配置(只允许特定网络访问)

@llsydn
Copy link
Author

llsydn commented Jan 24, 2025

初步看配置没什么问题: 先check下账密、db是否正确:使用mysqlclient使用相同配置去连DM数据库即可。 然后可以检查下DM是否有网关之类的配置(只允许特定网络访问)

账号密码应该都是正确的,网络也是通的。但执行查询sql报下面错

Image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants