问题标签 [teiid]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
teiid - Teiid Redshift Translator 不支持某些 Redshift SQL 结构
我已经使用 redshift traslator 在 teiid 中配置了一个 redshift 数据源。但是 redshift 中的一些 SQL 函数在与 teiid 一起使用时不支持。例如,我在部署 VDB 时遇到错误
其他一些 Redshift SQL 结构(如“ISNULL”)也不起作用
sql - Teiid SQL 异常 - Groupby 子句中不存在字段
我有一个使用 date_time 列生成小时聚合的查询。别名中的 date_time 列存在于 group by 但我收到以下错误:
': org.teiid.jdbc.TeiidSQLException: TEIID30492 远程 org.teiid.api.exception.query.QueryValidatorException: TEIID30492 [DB.foo.date_time] 不能在聚合函数之外使用,因为它们不存在于 GROUP BY 子句中
我似乎无法弄清楚为什么会这样,因为我没有尝试提取 date_time 列本身,只是我别名为“hr”的 Hour(date_time)
这是查询:
为什么它认为 date_time 存在而不是“hr”的任何想法
teiid - Teiid execute immediate 执行长查询时出现解析错误
我正在使用虚拟过程来使用 teiid 公开 REST API。在我的虚拟过程中,我使用立即执行来执行 SQL 查询,该查询将来自虚拟过程的输入参数作为过滤器过滤到 where 子句(动态 where cluase)。这适用于小型选择查询,但是当查询长度超过特定长度时,它会给出解析错误。这个问题有什么解决办法吗?有没有其他方法可以在我的 SQL 查询中实现动态 where 子句?
让我们假设闲置查询有大约 4000 个字符。这很好用。
但是,只要我在上面的 SQL 查询中添加更多行,它就会给解析错误登录一个任意行。我的查询语法没有问题。我所做的唯一更改是查询的长度在其中添加了更多行(例如,在我的 SELECT 语句中,如果我再选择一个额外的列,则会出现解析错误)只有当我使用立即执行来执行查询时才会发生这种情况
teiid - Teiid 查询引擎在执行时将我的查询的优化版本修改为未优化的查询
我正在使用 teiid 对 redshift 数据库执行相当大的 SQL 选择查询。通过避免在查询中使用内部查询和内部选择语句,我优化了查询以提供更好的响应时间。但是,当我执行查询时,teiid 查询引擎将我的查询更改为使用内部查询和内部选择语句的不同版本。有什么方法可以绕过这种行为并直接使用我提供的查询。
她是我执行的原始 teiid 查询
Teiid 查询引擎将上述查询转换为具有内部 SELECT 语句的波纹管版本
我想知道如何绕过这种行为并执行我的原始查询?
teiid - “响应已提交,无法处理异常”错误发送相同的 Rest API 请求两次
我正在使用 teiid Virtual Procedure 创建一个 Rest API 并公开我的数据。我已经使用缓存提示启用了结果集缓存。当我两次发送相同的 API 请求时,我在第二次尝试中没有得到任何数据,并且 teiid 控制台记录了以下异常。但是,当缓存被禁用或者我在等待缓存失效(在 ttl 时间之后)之后发送第二个请求时,请求被正确执行并且我得到了相关的响应。我所做的另一个重要观察是,当响应大小限制为小于某个大小时(例如,使用 LIMIT 子句将响应大小限制为 10 条记录),请求会在启用缓存的情况下正确处理。仅当我在特定大小(在我的情况下为 15)之后增加记录大小时才会发生这种情况。
我能否知道这背后的原因以及任何修复或解决方法,以便我可以继续使用结果集缓存而不会出现此问题。
jboss - 如何在 Jboss teiid 中配置只读数据源
我在 Jboss teiid 中配置了一个 Redshift 数据源。我想知道如何使我的数据源只读。我知道如何使用 Dataroles 制作 VDB 级别的只读资源(参考:- https://github.com/teiid/teiid-quickstarts/blob/master/vdb-dataroles/src/vdb/portfolio-vdb.xml)。但这将允许创建不是只读的新 VDB,这在我的情况下是一个漏洞。我想在 domain.xml 的数据源配置级别执行此操作。有没有关于如何做到这一点的指导。
我没有使用 teiid Designer,而是配置 Datasources 编辑 domain.xml 文件。我在 domain.xml 文件的 Datasources 子元素下添加了休闲数据源
有什么办法可以将数据源配置为只读。例如,添加类似
jboss - 如何使用 ELB URL 进行 teiid 集群
我已经配置了一个带有主从节点的 teiid 集群,其中主节点和从节点位于两个不同的主机中。到目前为止,我已经将主机的 IP 地址用于“管理 IP”、“公共 IP”、“不安全 IP”,并在从属主机控制器中用于从从属主机解析主控。这工作正常。但是我需要在我的主机前面使用负载平衡器来允许它们自动缩放。所以我在每台主机前面配置了一个负载均衡器,并将负载均衡器 8080、9990、9999 端口映射到我的主机端口,以便集群可以使用负载均衡器 URL 进行通信。然后我继续在“管理 IP”、“公共 IP”、“不安全 IP”和从属主机控制器中提供我的负载均衡器 URL,以从从属主机解析主控。但是从站无法使用主负载均衡器 URL 连接到主站。
我的从属配置如下所示
我可以使用负载均衡器 URL 成功 telnet 到负载均衡器端口。所以它们配置正确。关于如何在 teiid 中使用负载均衡器 URL 进行集群的任何想法。
jboss - 我可以将 Teiid 中的评论推送到源查询吗?
是否可以将评论推送到源数据库查询?
给定示例 Teiid 查询:
我希望看到将评论推送到源数据库,以便我可以在日志中捕获 request_id。我查看了源提示,但也没有任何运气将这些提示推送到源查询。
java - JBoss Teiid 源模型表预览和 VDB 测试均失败
对不起,我不是 Java 人。目前我正在使用 JBoss Teiid,希望该工具可以为我们提供多个数据源之间的数据虚拟化层。我设法在 Wildfly 11 上安装了 Teiid 10.2.1。我开始设置来自多种数据源的各种源模型。
首先,我创建了一个平面文件源模型。我可以很好地预览表格。接下来我创建了一个 MySQL 源模型。当我尝试预览表格时,它给了我
部署“PREVIEW-9b7b127a-cc80-4751-be77-2053c495daa8”时出错 - 请查看服务器日志了解更多详细信息
通过查看日志,问题似乎是
2018-08-19 19:38:53,878 WARN [org.teiid.RUNTIME] (Worker1_async-teiid-threads2) TEIID50036 VDB PREVIEW-9b7b127a-cc80-4751-be77-2053c495daa8.1.0.0 模型“MySQLSourceModel”元数据加载失败. 原因:TEIID31259 在第 2 行第 61 列以令牌 teiid_mysql5 结尾的语句中,ddl 无效:TEIID60017 前缀 teiid_mysql5 无效,teiid_ 保留给 Teiid 使用。:org.teiid.metadata.ParseException:TEIID31259 在以令牌 teiid_mysql5 结尾的语句中在第 2 行第 61 列,ddl 无效:TEIID60017 无效前缀 teiid_mysql5,teiid_ 保留供 Teiid 使用。
我将模型导出到 Teiid DDL,它似乎包含以下内容
设置命名空间' http://www.teiid.org/ext/relational/2012 '作为teiid_mysql5
但我找不到任何允许我更改命名空间设置的地方。然后我从模型创建一个 VDB,希望我可以通过执行 VDB 来预览表。但我仍然收到错误说明
19:53:09,906 WARN [org.teiid.SECURITY] (NIO3) TEIID40011 处理异常 'TEIID50072 用户名“user”和/或密码和/或有效负载令牌无法通过安全域 teiid-security 进行身份验证。' 对于会话空。从 org.teiid.jboss.JBossSecurityHelper.authenticate(JBossSecurityHelper.java:152) 抛出的异常类型 org.teiid.client.security.LogonException。启用更详细的日志记录以查看整个堆栈跟踪。19:53:09,945 WARN [org.teiid.SECURITY] (NIO0) TEIID40011 处理异常'TEIID50072 用户名“user”和/或密码和/或有效负载令牌无法通过安全域 teiid-security 进行身份验证。' 对于会话空。从 org.teiid.jboss.JBossSecurityHelper.authenticate(JBossSecurityHelper.java:152) 抛出的异常类型 org.teiid.client.security.LogonException。
如何将 org.teiid.jboss.JBossSecurityHelper.java 添加到 Eclipse 中?非常感谢您的任何帮助。
model - 如何找出 Teiid Designer 源模型中的字段错误
我刚刚在 Teiid Designer 中创建了一个 Mongodb 源模型。之后,我在模型中定义的表格上看到了一个小红叉符号,表示错误。当我展开表格时,我在几个字段上看到了相同的错误符号。我仔细检查和三次检查,这些字段上的数据类型与物理数据源中的数据类型匹配。我怎样才能找出它在这些字段上指示的错误?谢谢。