实时数仓 Hologres操作报错合集之执行Flink的sink操作时出现报错,是什么原因

简介: 实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。

问题一:Hologres跑的官网的用例,然后报错了?

Hologres跑的官网的用例,然后报错了?



参考答案:

我这边测试是没有问题的 版本是 2.1.20

check 下入参的类型是不是与文档不符



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/600700



问题二:Hologres中,这是flink在sink的时候报错了?

"Hologres中,这是flink在sink的时候报错了?

error: internal error: cache lookup failed for attribute 40 of relation 359181

Caused by: com.alibaba.hologres.org.postgresql.util.PSQLException: ERROR: internal error: cache lookup failed for attribute 40 of relation 359181

at com.alibaba.hologres.org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2565) ~[?:?]

at com.alibaba.hologres.org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2297) ~[?:?]

at com.alibaba.hologres.org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:322) ~[?:?]

at com.alibaba.hologres.org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:481) ~[?:?]

at com.alibaba.hologres.org.postgresql.jdbc.PgStatement.execute(PgStatement.java:401) ~[?:?]

at com.alibaba.hologres.org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:164) ~[?:?]

at com.alibaba.hologres.org.postgresql.jdbc.PgPreparedStatement.execute(PgPreparedStatement.java:153) ~[?:?]

at com.alibaba.hologres.client.impl.handler.PutActionHandler.lambdadoHandlePutActiondoHandlePutAction0(PutActionHandler.java:178) ~[?:?]

at com.alibaba.hologres.client.impl.ConnectionHolder.doRetryExecute(ConnectionHolder.java:244) ~[?:?]

at com.alibaba.hologres.client.impl.ConnectionHolder.retryExecuteWithVersion(ConnectionHolder.java:210) ~[?:?]

at com.alibaba.hologres.client.impl.handler.PutActionHandler.doHandlePutAction(PutActionHandler.java:165) ~[?:?]

at com.alibaba.hologres.client.impl.handler.PutActionHandler.handle(PutActionHandler.java:94) ~[?:?]

at com.alibaba.hologres.client.impl.handler.PutActionHandler.handle(PutActionHandler.java:33) ~[?:?]

at com.alibaba.hologres.client.impl.Worker.handle(Worker.java:94) ~[?:?]

at com.alibaba.hologres.client.impl.Worker.run(Worker.java:123) ~[?:?]

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1147) ~[?:1.8.0_102]

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:622) ~[?:1.8.0_102]

... 1 more

"



参考答案:

Flink 任务能否使用 VVR 8.0.5 版本,WITH 参数 sdkMode=jdbc 来写入,启动运行看看



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/600691



问题三:Hologres这个是啥情况啊?

Hologres这个是啥情况啊?刚才连接holo提示 psql: FATAL: Connect to FE failed, FE-1,11.61.119.132:55041, remaining connection slots are reserved for non-replication superuser connections



参考答案:

连接数超了,找superuser处理一下,杀一下空闲链接,参考:https://help.aliyun.com/zh/hologres/user-guide/manage-connections?spm=a2c4g.11186623.0.0.516b4f91YMYDf5#section-vip-dfv-vi9 



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/599043



问题四:Hologres这种允许为空,还是提供 执行失败,失败原因是什么?

Hologres这种允许为空,还是提供 执行失败,失败原因?ERROR: internal error: Column column5 should be non-nullable but the values contain 15 nulls. Values: ColumnHandle(type=list)(table_column_id=5)

Where: [query_id:80012808222728665]



参考答案:

根据提供的错误信息,可以看出在创建外部表时遇到了问题。具体错误是"Column column5 should be non-nullable but the values contain 15 nulls",意味着在数据中存在15个空值(null),而该列被定义为非空(non-nullable)。

要解决这个问题,您可以采取以下步骤:

  1. 检查数据:首先,确保您的数据中没有包含空值(null)的记录。如果确实存在空值,您需要处理这些空值,例如将它们替换为默认值或删除包含空值的记录。
  2. 修改表结构:如果您确定数据中不应该包含空值,那么您需要修改表结构,将该列设置为非空(non-nullable)。具体的修改方法取决于您使用的数据库管理系统和编程语言。以下是一些示例代码片段,供参考:
  • 对于MySQL数据库,可以使用以下SQL语句修改表结构:
ALTER TABLE your_table_name MODIFY COLUMN column5 datatype NOT NULL;
  • 对于PostgreSQL数据库,可以使用以下SQL语句修改表结构:
ALTER TABLE your_table_name ALTER COLUMN column5 SET NOT NULL;
  • 对于Oracle数据库,可以使用以下SQL语句修改表结构:
ALTER TABLE your_table_name MODIFY (column5 datatype NOT NULL);
  1. 请将上述代码中的your_table_name替换为您实际的表名,column5替换为实际的列名,datatype替换为适当的数据类型。
  2. 重新创建外部表:完成表结构的修改后,您可以尝试重新创建外部表。确保在创建过程中遵循正确的步骤,并使用更新后的表结构。

请注意,具体的解决方法可能因您使用的数据库管理系统和编程语言而有所不同。上述示例代码仅供参考,您可能需要根据实际情况进行适当的调整。



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/599041



问题五:Hologres中,我从holo里图抽取数据 然后任务就一直卡着?

"Hologres中,我从holo里视图抽取数据 然后任务就一直卡着,连线模式 获取表结构也是失败的 然后我改成了脚本模式 就是任务一直卡着,数据的连通性没有问题,能帮忙看看嘛?https://di-cn-shanghai.data.aliyun.com/web/di/instanceLog?id=1401738555&resourceGroup=S_res_group_476002314230274_1687836552481&requestId=Node_None_T3_4973419302&projectId=327220



参考答案:

这看着还没有到holo啊,你看下holo监控,有没有运行时间很长的query



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/599040

相关实践学习
基于Hologres轻量实时的高性能OLAP分析
本教程基于GitHub Archive公开数据集,通过DataWorks将GitHub中的项⽬、行为等20多种事件类型数据实时采集至Hologres进行分析,同时使用DataV内置模板,快速搭建实时可视化数据大屏,从开发者、项⽬、编程语⾔等多个维度了解GitHub实时数据变化情况。
相关文章
|
消息中间件 关系型数据库 MySQL
大数据-117 - Flink DataStream Sink 案例:写出到MySQL、写出到Kafka
大数据-117 - Flink DataStream Sink 案例:写出到MySQL、写出到Kafka
857 0
|
SQL 监控 关系型数据库
用友畅捷通在Flink上构建实时数仓、挑战与最佳实践
本文整理自用友畅捷通数据架构师王龙强在FFA2024上的分享,介绍了公司在Flink上构建实时数仓的经验。内容涵盖业务背景、数仓建设、当前挑战、最佳实践和未来展望。随着数据量增长,公司面临数据库性能瓶颈及实时数据处理需求,通过引入Flink技术逐步解决了数据同步、链路稳定性和表结构差异等问题,并计划在未来进一步优化链路稳定性、探索湖仓一体架构以及结合AI技术推进数据资源高效利用。
858 25
用友畅捷通在Flink上构建实时数仓、挑战与最佳实践
|
存储 消息中间件 OLAP
Hologres+Flink企业级实时数仓核心能力介绍-2024实时数仓Hologres线上公开课03
本次分享由阿里云产品经理骆撷冬(观秋)主讲,主题为“Hologres+Flink企业级实时数仓核心能力”,是2024实时数仓Hologres线上公开课的第三期。课程详细介绍了Hologres与Flink结合搭建的企业级实时数仓的核心能力,包括解决实时数仓分层问题、基于Flink Catalog的Streaming Warehouse实践,并通过典型客户案例展示了其应用效果。
422 10
Hologres+Flink企业级实时数仓核心能力介绍-2024实时数仓Hologres线上公开课03
|
SQL Shell API
实时计算 Flink版操作报错合集之任务提交后出现 "cannot run program "/bin/bash": error=1, 不允许操作" ,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
实时计算 Flink版操作报错合集之任务提交后出现 "cannot run program "/bin/bash": error=1, 不允许操作" ,是什么原因
|
资源调度 监控 关系型数据库
实时计算 Flink版操作报错合集之处理大量Join时报错空指针异常,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
实时计算 Flink版操作报错合集之处理大量Join时报错空指针异常,是什么原因
|
SQL Java Apache
实时计算 Flink版操作报错合集之使用parquet时,怎么解决报错:无法访问到java.uti.Arrays$ArrayList类的私有字段
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
Oracle 关系型数据库 Java
实时计算 Flink版操作报错合集之遇到了关于MySqIValidator类缺失的错误,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
消息中间件 NoSQL Kafka
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
996 0
|
SQL 监控 大数据
Serverless 应用的监控与调试问题之Flink流式数仓对于工商银行的数据链路要如何简化
Serverless 应用的监控与调试问题之Flink流式数仓对于工商银行的数据链路要如何简化
|
SQL JSON 分布式计算
DataWorks操作报错合集之如何解决在创建Hologres开发节点时报错
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。

相关产品

  • 实时数仓 Hologres