任何人都知道有任何计划在Google Bigquery的表格中添加对删除部分数据的支持吗?我们现在面临的问题是我们正在使用它来分析我们收集的数据点.我们希望在过去X天的数据中运行查询,但是在最后X天的数据之后,我们不再需要将数据存储在BigQuery中.
目前我们可以想到删除数据的唯一方法是删除整个数据表,然后重新创建并加载X天数据.这虽然要求我们将数据存储在每日CSV文件中,这不是最佳的.
有关如何处理此问题或在不久的将来是否有删除行查询的任何建议?
BigQuery似乎还没有支持UNION:https: //developers.google.com/bigquery/docs/query-reference
(我的意思并不是说将源表联合起来.它就是这样.)
它即将推出吗?
根据我的查询:
SELECT SQRT((D_o_latitude - T_s_lat)^ 2 +(D_o_longitude - T_s_long)^ 2)/0.00001 FROM [datasetName.tableName]
我收到错误错误:函数SUBTRACT中的参数类型不匹配:'D_o_latitude'是类型字符串,'T_s_lat'是类型字符串
所以让我知道我们可以将查询中的字符串类型转换为浮点数,例如转换数据类型,我无法更改数据类型
什么是bigquery等同于mysql变量?
SET @fromdate = '2014-01-01 00:00:00', -- dates for after 2013
@todate='2015-01-01 00:00:00',
@bfromdate = '2005-01-01 00:00:00', -- dates for before 2013
@btodate = '2005-01-01 00:00:00',
@achfromdate = '2013-01-01 00:00:00', -- dates for ACH without submit time in 2013
@achtodate = '2013-01-01 00:00:00',
@currency="USD";
Run Code Online (Sandbox Code Playgroud) 尝试从通过GCP控制台创建的表中删除记录并使用GCP BigQuery Node.js表插入函数更新时,我收到以下错误.
UPDATE or DELETE DML statements are not supported over table stackdriver-360-150317:my_dataset.users with streaming buffer
该表创建时没有流功能.从我在文档中阅读的内容Tables that have been written to recently via BigQuery Streaming (tabledata.insertall) cannot be modified using UPDATE or DELETE statements.
这是否意味着一旦将此函数插入表中,就无法删除记录?什么?如果是这种情况,是否意味着需要删除表并从头开始重新创建?如果不是这样的话.你能否建议一个解决方法来避免这个问题?
谢谢!
应用程序:使用BigQuery API for Java Environment连接到BigQuery:Eclipse,Windows 7
我的申请一直运行到昨晚.我没有做任何更改(除了重新启动我的电脑),我的代码突然给了我这个错误:
Application name is not set. Call Builder#setApplicationName.
Run Code Online (Sandbox Code Playgroud)
值得庆幸的是,从昨晚开始,我的工作区已经有了tar版本.我运行了一个文件夹比较,发现local_db.bin文件不同.我删除了现有的local_db.bin文件,并尝试再次运行该程序.它工作正常!
知道为什么会这样吗?
希望这将有助于其他任何偶然发现此问题的人.
我在数据集中有一系列表,需要在FLATTENing其中一个重复记录时查询所有表.例如,像下面这样的查询工作正常:
SELECT
date,
customDimensions.value AS customDimension,
hits.page.pagePath AS pagePath
FROM
(FLATTEN( [<projectId>:<datasetId>.ga_sessions_20130910] ,
customDimensions))
WHERE
hits.page.pagePath CONTAINS '/helmets'
AND customDimensions.index IN (1,2,3)
Run Code Online (Sandbox Code Playgroud)
但是,我在使用表通配符时遇到了FLATTENing问题.有人可以帮我解决语法问题吗?可以在TABLE_DATE_RANGE中使用FLATTEN吗?
SELECT
date,
customDimensions.value AS customDimension,
hits.page.pagePath AS pagePath
FROM
(FLATTEN (TABLE_DATE_RANGE ([<project>:<dataset>.ga_sessions_],
TIMESTAMP('2013-09-10'),
TIMESTAMP ('2014-06-10'))),
customDimensions)
WHERE
hits.page.pagePath CONTAINS '/helmets'
AND customDimensions.index IN (1,2,3)
Run Code Online (Sandbox Code Playgroud)
谢谢,沙燕
我们发现BigQuery可以很好地处理大于100M行的数据集,其中"初始化时间"并没有真正生效(或者与查询的其余部分相比可以忽略不计).
但是,在任何情况下,性能都很慢而且很差,这使得它(1)不适合在交互式BI工具中工作; (2)不如其他产品,如Redshift甚至ElasticSearch,其数据大小在100M以下.实际上,我们组织的一名工程师正在评估一项技术,该技术用于对具有大约1000名用户的分析产品进行1M到100M行数据大小的查询,他的反馈是他无法相信BigQuery的速度有多慢.
如果没有对BigQuery产品的辩护,我想知道是否有任何改进计划:
我们通过Python API 使用Google BigQuery.如何从查询结果中创建表(新表或覆盖旧表)?我查看了查询文档,但我发现它没有用.
我们想要模拟:
ANSI SQL中的"SELEC ... INTO ...".
请在以下示例中检查我对REPEATED字段的理解:
{
"title": "History of Alphabet",
"author": [
{
"name": "Larry"
},
]
}
Run Code Online (Sandbox Code Playgroud)
这个JSON有架构:
[
{
"name": "title",
"type": "STRING"
},
{
"name": "author",
"type": "RECORD",
"fields": [
{
"name": "name",
"type": "STRING"
}
]
}
]
Run Code Online (Sandbox Code Playgroud)
但是以下JSON
{
"title": "History of Alphabet",
"author": ["Larry", "Steve", "Eric"]
}
Run Code Online (Sandbox Code Playgroud)
有架构:
[
{
"name": "title",
"type": "STRING"
},
{
"name": "author",
"type": "STRING",
"mode": "REPEATED"
}
]
Run Code Online (Sandbox Code Playgroud)
它是否正确?
nb:我试图浏览文档,但找不到任何解释.