- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经被这个问题困扰了一天多了,我想这里有人可能知道答案。基本上,作为一个简单的测试,我试图从表中读取数据并将结果简单地输出到日志文件中。该表相当大(约 1.67 亿行)。我不断收到以下错误
java.lang.RuntimeException: org.apache.beam.sdk.util.UserCodeException: com.google.cloud.spanner.SpannerException: DEADLINE_EXCEEDED: io.grpc.StatusRuntimeException: DEADLINE_EXCEEDED: deadline exceeded after 119997536405ns
接着是:
Workflow failed. Causes: S15:SpannerIO.ReadAll/Read from Cloud Spanner/Shuffle partitions/Reshuffle/GroupByKey/Read+SpannerIO.ReadAll/Read from Cloud Spanner/Shuffle partitions/Reshuffle/GroupByKey/GroupByWindow+SpannerIO.ReadAll/Read from Cloud Spanner/Shuffle partitions/Reshuffle/ExpandIterable+SpannerIO.ReadAll/Read from Cloud Spanner/Shuffle partitions/Values/Values/Map+SpannerIO.ReadAll/Read from Cloud Spanner/Read from Partitions+ParDo(FinishProcess) failed., The job failed because a work item has failed 4 times. Look in previous log entries for the cause of each one of the 4 failures. For more information, see https://cloud.google.com/dataflow/docs/guides/common-errors. The work item was attempted on these workers: ricardocascadejob-m0771463-12021322-cpj6-harness-4nvn Root cause: Work item failed., ricardocascadejob-m0771463-12021322-cpj6-harness-c485 Root cause: Work item failed., ricardocascadejob-m0771463-12021322-cpj6-harness-kcgb Root cause: Work item failed., ricardocascadejob-m0771463-12021322-cpj6-harness-kcgb Root cause: Work item failed.
这里是在数据流上运行的主要代码
PipelineOptionsFactory.register(RicardoPriceLoadOptions.class);
RicardoPriceLoadOptions opts = PipelineOptionsFactory.fromArgs(args)
.withValidation().as(RicardoPriceLoadOptions.class);
Pipeline pipeline = Pipeline.create(opts);
SpannerConfig spannerConfig =
SpannerConfig.create()
.withProjectId(opts.getGcpProjectId())
.withInstanceId(opts.getSpannerInstanceId())
.withDatabaseId(opts.getSpannerDatabaseId());
PCollectionView<Transaction> tx =
pipeline.apply(SpannerIO.createTransaction().withSpannerConfig(spannerConfig));
//Fetch All Price Events
PCollection<Struct> pepLIst = pipeline.apply(Create.of(ReadOperation.create()
.withColumns("DisabledFlag", "PriceEventPriceableId", "PriceableItemId",
"OutgoingType", "PriceOriginal", "PriceIntermediate", "PriceRetail", "SaleValue", "SaleValueIntermediate",
"SchedulableFlag", "SendToSiteFlag", "StartTime", "EndTime", "DisplayCode")
.withTable("ABC")))
.apply(SpannerIO.readAll().withTransaction(tx).withSpannerConfig(spannerConfig));
pepLIst.apply(ParDo.of(new FinishProcessFn()));
最后一个 DoFn 是一个简单的 DoFn,它只记录 spanner 行。
public class FinishProcessFn extends DoFn<Struct, Void> {
@ProcessElement
public void process(@Element Struct elem) {
log.debug(elem.toString());
}
我已经尝试了这里显示的谷歌建议
代码看起来很简单,但我不确定为什么我总是收到上面的错误。感谢任何输入或帮助。
谢谢!
这是表模式
CREATE TABLE ABC (
PriceEventPriceableId INT64 NOT NULL,
Created TIMESTAMP NOT NULL,
CreatedBy STRING(MAX) NOT NULL,
DisabledFlag STRING(MAX) NOT NULL,
DisplayCode STRING(MAX),
EndTime TIMESTAMP,
ErrorCode INT64,
EstablishmentOverrideFlag STRING(MAX),
LastUpdated TIMESTAMP NOT NULL,
LastUpdatedBy STRING(MAX) NOT NULL,
NotApplicableFlag STRING(MAX),
OnSaleRatioOverrideFlag STRING(MAX),
OutgoingType INT64,
OwnedValue STRING(MAX),
ParentPriceableItemId INT64,
PriceableItemId INT64 NOT NULL,
PriceEventId INT64 NOT NULL,
PriceIntermediate STRING(MAX),
PriceOriginal STRING(MAX),
PriceRetail STRING(MAX),
ReasonUnschedulable STRING(MAX),
SaleValue STRING(MAX),
SaleValueIntermediate STRING(MAX),
SavingsMaxOverrideFlag STRING(MAX),
SchedulableFlag STRING(MAX),
SendToSiteFlag STRING(MAX),
SentToSiteDate DATE,
StartTime TIMESTAMP,
StoredValue STRING(MAX),
TenPercentOverrideFlag STRING(MAX),
Timestamp TIMESTAMP NOT NULL OPTIONS (allow_commit_timestamp=true),
) PRIMARY KEY (PriceEventPriceableId)
最佳答案
DEADLINE_EXCEEDED error表示操作未在给定时间内完成。
对于更改系统状态的操作,即使操作已成功完成,也可能会返回此错误(例如,来自服务器的成功响应可能已延迟足够长的时间以达到截止日期).
我在 Google Cloud Status Dashboard 中看不到 Cloud Spanner 的任何问题| ,但是,最好联系 GCP 支持,以便他们可以检查您的项目并更深入地研究问题。
关于google-cloud-dataflow - com.google.cloud.spanner.SpannerException : DEADLINE_EXCEEDED,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59147275/
我的问题是,在幕后,对于元素级 Beam DoFn (ParDo),Cloud Dataflow 的并行工作负载如何?例如,在我的 ParDO 中,我向外部服务器发送一个 http 请求以获取一个元素
就 Google Cloud 上 Dataflow 的 HA 而言,最佳架构是什么?我的工作负载在两个区域运行。数据流从一个多区域存储桶中读取并将结果写出到另一个多区域存储桶中。 为了实现高可用性(以
如图 here数据流管道由固定的 DAG 表示。我想知道是否有可能实现一个管道,在该管道中处理继续进行,直到基于到目前为止计算的数据满足动态评估的条件。 这是一些伪代码来说明我想要实现的内容:
在旧的定价页面上,他们提到 Cloud Dataflow 工作人员使用的所有 Google Compute 实例都是根据持续使用价格规则计费的,但新的定价页面不再提及。 我假设由于它在内部使用相同的
批处理 Dataflow 作业处理完所有数据后是否可以执行操作?具体来说,我想将管道刚刚处理的文本文件移动到不同的 GCS 存储桶。我不确定将它放在我的管道中的哪个位置以确保它在数据处理完成后执行一次
我希望能够通过自定义键使用分组,但这是我目前的尝试, 我们为 KV 对象的键使用自定义类,因为我们希望 GroupBy 具有更复杂的条件,而不是使用 String 等进行简单的键匹配。 ```
当尝试在 Dataflow 服务上运行管道时,我在命令行上指定了暂存和临时存储桶(在 GCS 中)。当程序执行时,我在管道运行之前收到一个 RuntimeException,根本原因是我在路径中遗漏了
我试图找到一种优雅地结束我的工作的方法,以免丢失任何数据,从 PubSub 流式传输并写入 BigQuery。 我可以设想的一种可能方法是让作业停止提取新数据,然后运行直到它处理完所有内容,但我不知道
问题: 使用 Cloud Dataflow 时,我们会看到 2 个指标(请参阅 this page): 系统延迟 数据新鲜度 这些在 Stackdriver 中也可用以下名称(摘自 here): sy
我一直在阅读 Dataflow SDK 文档,试图找出当数据到达流作业中的水印时会发生什么。 这一页: https://cloud.google.com/dataflow/model/windowin
有没有办法(或任何类型的黑客)从压缩文件中读取输入数据? 我的输入包含数百个文件,这些文件是用 gzip 压缩生成的,解压缩它们有些乏味。 最佳答案 Dataflow 现在支持从压缩文本源中读取(从
我正在尝试在 Dataflow 中执行联合操作。是否有用于在 Dataflow 中合并两个 PCollections 的示例代码? 最佳答案 一个简单的方法是像这样将 Flatten() 与 Remo
在我的管道上运行“更新”后,我注意到有新创建的永久磁盘在 10 多分钟后未附加到任何实例。 最佳答案 这是 Dataflow 服务的一个持续已知问题,会在管道更新过程中导致孤立磁盘。可以安全地删除这些
是否可以为 Dataflow 工作人员提供自定义包? 我想从计算内部输出到 Debian 打包的二进制文件。 编辑:需要明确的是,包配置非常复杂,仅将文件捆绑在 --filesToStage 中是不可
我想使用 Google Cloud Dataflow 创建 session 窗口,如 dataflow model paper 中所述。 .我想将我的未绑定(bind)数据发送到 Pub/Sub,然后
我正在尝试运行从 pubsub 主题读取并写入 bigquery 的管道。时间戳是从主题消息中解析出来的。但是,我收到了一条关于允许的时间戳偏差的错误,并引用了下面复制的文档。 getAllowedT
我有一个大型数据文件 (1 TB) 的数据要导入 BigQuery。每行包含一个键。在导入数据并创建我的 PCollection 以导出到 BigQuery 时,我想确保我不会基于此键值导入重复记录。
我正在通过 Python API 在 Dataflow 上使用 Apache Beam 从 Bigquery 读取数据,对其进行处理,然后将其转储到 Datastore 接收器中。 不幸的是,作业经常
我一直在研究使用 spring-cloud-dataflow 中的 spring-cloud-task 构建的项目。查看示例项目和文档后,似乎表明任务是通过仪表板或 shell 手动启动的。 spri
我有以下场景: 管道 A 在 BigQuery 中查找表 A,进行一些计算并返回列名列表。 此列名称列表用作管道 B 输出的 BigQuery 架构。 您能否让我知道实现这一目标的最佳选择是什么? 管
我是一名优秀的程序员,十分优秀!