【发布时间】:2021-02-08 19:46:18
【问题描述】:
我有兴趣将 Anylogic 8.6 中的模型链接到 Redshift 数据库中的表/视图。这将使模型能够自动获取新数据来定义我们的人口并运行,从而做出更好的运营决策(即我们预计明天会发生什么,明天总是会发生变化)。
此版本具有与 Excel 电子表格或 SQL Server 数据库的本机连接。常见问题解答中是链接到 MySQL 的分步指南。我已将本指南改编为 Redshift,但我不清楚如何让连接真正触发,或者如何测试它是否真的有效。
这是我所做的:
- 从https://docs.aws.amazon.com/redshift/latest/mgmt/configure-jdbc-connection.html下载了最新的 JDBC 驱动程序
- 我已将所有驱动程序文件提取到模型的文件夹中。
- 我在 AnyLogic 中打开了模型,选择了“项目”视图并在“依赖项”选项卡上导入了驱动程序 JAR 文件(引用文件 RedshiftJDBC42-no-awssdk-1.2.50.1077.jar em>)
- 转到 Main 的“Advanced Java”属性并在 Import 部分键入以下行:
import com.amazon.redshift.jdbc42.Driver;。模型编译/构建没有错误。
我不确定下一步该做什么。
-
当我去数据库并尝试导入表时,我仍然只看到 Excel/SQL 服务器的选项
-
从“连接”面板中,我将“数据库”拖到模型的“主要”部分。那我就
-
a) 选择连接作为“其他数据库类型”
-
b) 在“JDBC 驱动程序”部分,我输入了
com.amazon.redshift.jdbc42.Driver -
c) 在连接 URL 中,我输入了以下内容:
jdbc:redshift://<Server>:<Port>/<Database>?ssl=true&tcpKeepAlive=true&sslfactory=org.postgresql.ssl.NonValidatingFactory(这是来自 workbench/dBeaver/KNIME 的标准连接字符串,适用于那些,所有这些都是 JDBC) -
d) 使用了我用于正常 SQL 工作的常用用户名/密码
-
执行此操作后,我仍然只能看到导入表格的常用选项。所以我从“连接”面板中添加了一个“查询”项,并做了一个简单的“从表中选择 *” - 但目前尚不清楚如何将其输入到我的本地数据库中......
我的下一步是什么?还是我在这里浪费时间? Redshift 连接将大大有助于我们的模型适用于更广泛的运营用途......
非常感谢。
【问题讨论】:
标签: jdbc amazon-redshift anylogic