生病很快描述我的数据流:
每个用户都可以创建多个ADS。 (1位用户,N个广告) 我想存储ADS印象,我想到了2个选项。
1-为展示创建一个表格,例如表格名称为:展示次数字段:(用户ID,adsid,日期时间,元数据字段...) 在我的所有展示的这个选项中,将存储在一个表格中。
主要优点:很容易能够进行大数据查询。 主要缺点:表会休,并且有多个查询,生病最终付出太多(:
选项2是为每个广告创建表格
例如,广告ID 1将创建 带有字段的Impression_1(日期时间,元数据字段)
专业:查询更便宜,数据表更小 缺点:todo big dataquery有时候不得不创建一个联合而且事情会很复杂
我想知道你对此有何看法?
答案 0 :(得分:2)
在BigQuery中,这样做很容易,因为您可以每天创建表格,并且您可以只查询这些表格。
你有Table wildcard functions,这是一种从一组特定表中查询数据的经济有效的方法。当您使用表通配符函数时,BigQuery仅访问并向您收取与通配符匹配的表的费用。表通配符函数在查询的FROM子句中指定。
假设你有一些表:
mydata.people20140325
mydata.people20140326
mydata.people20140327
您可以查询:
SELECT
name
FROM
(TABLE_DATE_RANGE(mydata.people,
TIMESTAMP('2014-03-25'),
TIMESTAMP('2014-03-27')))
WHERE
age >= 35
表装饰器支持相对和绝对<time>
值。相对值用负数表示,绝对值用正数表示。
要在一小时前获取该表的快照:
SELECT COUNT(*) FROM [data-sensing-lab:gartner.seattle@-3600000]
还有TABLE_QUERY,您可以将其用于更复杂的查询。