我正在使用bigquery.go库。
在调查某些性能时,我发现我的导出(从.csv到html" target="_blank">GCS)作业(仅导出作业)从客户端启动平均需要60秒,而从WebGUI启动的同一作业大约需要20秒。这可能是什么原因?
代码如下:
time1 := time.Now()
job_extract, err := extractor.Run(ctx)
if err != nil {
return err
}
status, err = job_extract.Wait(ctx)
if err != nil {
return err
}
if status.Err() != nil {
log.Fatalf("Job failed with error %v", status.Err())
return status.Err()
}
time2 := time.Since(time1)
WEB UI通常具有轮询机制来检查作业何时完成,因此您可能会看到更长的时间。通常,导出到GCS的文件在WebUI中显示的时间早于作业实际完成的时间。
为了确保并查看确切的时间安排,请使用cli tool
获取最新的工作:
bq ls -j -a --max_results=15
运行此命令将显示一个包含作业ID和相应时间的表格。
jobId Job Type State Start Time Duration
--------------------------------- ---------- --------- ----------------- ----------
bquijob_1864e679_15a84d8878a query SUCCESS 28 Feb 07:11:06 0:00:04
bquijob_770b512_15a84d8122c query FAILURE 28 Feb 07:10:35 0:00:00
bquijob_de0df03_15a84d6a4fa query FAILURE 28 Feb 07:09:02 0:00:00
bquijob_52c4f7d7_15a84d660e6 query FAILURE 28 Feb 07:08:44 0:00:00
bquijob_76a2c1be_15a84d5e769 query FAILURE 28 Feb 07:08:13 0:00:00
bquijob_7f51dde5_15a84d55afb query SUCCESS 28 Feb 07:07:41 0:00:08
bquijob_34f25864_15a84d50503 query SUCCESS 28 Feb 07:07:18 0:00:08
job_Ca0cuRTAjY7MEHAs7vTJMxtVYTs query SUCCESS 28 Feb 07:00:47 0:00:09
job_hHfmcdwyBsPsYF5dDvvOdR1Rmd0 load SUCCESS 28 Feb 07:00:26 0:00:20
job_mkiLf_mFHLKSplGJOtg-XDKzvv4 load SUCCESS 28 Feb 02:52:50 0:00:02
job_3RsPvttxWwv3SzVoOI9Cv_2yWtA query SUCCESS 27 Feb 21:18:40 0:00:08
job_JLsqJO0NEIlKNac6jkDWbwneGMg extract SUCCESS 27 Feb 11:35:04 0:00:17
job_KOS7vKX4aX0FNbK6dibE7cxzcQA query SUCCESS 27 Feb 11:33:44 0:00:37
bquijob_44046bec_15a802f703a query SUCCESS 27 Feb 09:27:48 0:00:07
job_2qQ6YSWeXaP2y2doONQJsIoga3c query SUCCESS 27 Feb 08:53:20 0:00:06
您将可以通过这种方式检查提取作业DURATION。万一您确认确实存在问题,请尽快将此类表格发回您的问题中,Google工程师会尽快对其进行检查。但是,如果没有适当的细节,我们只能假设您的测量是错误的。
我正在使用mongoose来计算匹配某个查询的文档数量。此查询的索引为: Mongo版本为3.2,收藏文档数量约为175万。 需要2分多钟。但如果我这么做了: 然后大约需要2.5秒。 我做错什么了吗?我能做些什么来加快速度吗? 编辑:解释日志。 计数: 为了找到。
问题内容: 我有一段旧代码,用于在字符串中执行查找和替换标记。 它接收地图的和对,遍历它们并为每个对,遍历目标字符串,将查找使用,并取代它的价值。它完成对的所有工作,并最终返回。 我用以下代码替换了该代码: 并且运行了一些比较性能测试。 比较迭代时,我得到以下信息: 旧代码:1287ms 新代码:4605ms 长3倍! 然后,我尝试用3个调用替换它: 结果如下: 旧代码:1295 新代码:3524
我刚刚实现了基本的opengl渲染到我的pyplay应用程序中,认为硬件加速会使程序运行得更快。相反,它要慢得多。 看起来问题是绘图功能。 这是我的opengl绘图功能 我的分析器为draw函数提供了什么 我的分析器文本的其余部分:(1个月后到期) http://pastebin.com/ApfiCQzw 我的源代码 https://bitbucket.org/claysmithr/warbots
问题内容: 我正在重写我的一个Android应用程序以利用NDK,并且它每次要做的第一件事之一是打开一个1.5MB的文本文件(大约15万行),并将每一行放入数据中结构体。当我使用Java的BufferedReader.readLine()进行此操作时,从SD卡读取文件大约需要2.5秒。这是我用于此的代码: 将C 与ifstream一起使用需要更长的时间…对于同一文件大约需要3分钟。这是我在C 中使
WebGUI是网站公开源码的管理系统之一。WebGUI具有标准组件,独立平台,能在线地使用,管理等。 能让用户建立和维护比较复杂的网站。 WebGUI主要功能介绍 开放源代码促进会(OSI)认证的开放源码软件 内嵌所见即所得的内容编辑器 可定制的模板引擎 可定制网站界面布局 其组件构架扩充
问题内容: 我有一个简单的任务:计算每个字母在一个字符串中出现的次数。我已经使用了它,但是在一个论坛上我看到了使用/比每个字母都要慢得多的信息。我认为它只能在字符串中进行一次遍历,而解决方案则必须遍历该字符串四次(在这种情况下)。为什么这么慢? 问题答案: 允许您计算任何可哈希对象,而不仅仅是子字符串。两种解决方案都是-time。您的测量结果表明,迭代和散列单个字符的开销大于运行4倍。 可以 使用