我已经将消息发布到一个pub/sub主题,并尝试使用Dataflow和“Cloud pub/sub主题to BigQuery”
模板将它们流式传输到BigQuery中。(阅读更多关于流媒体模板的信息。)
pub/sub消息中的某些字段名包含破折号(-
),我无法控制破折号,而且Dataflow模板似乎希望目标BigQuery表中的字段名完全相同。BQ的一个限制是字段名中不允许使用破折号(-
),但允许使用下划线。因此,尽管我在BQ中有params.gsm_level
列,但我仍然得到如下错误:
{
"errors" : [ {
"debugInfo" : "",
"location" : "params.gsm-level",
"message" : "no such field.",
"reason" : "invalid"
} ],
"index" : 0
}
我可以做什么来将消息中的GSM-Level
映射到BQ中的GSM_Level
,但仍然使用DF模板而不编写自己的工作吗?谢了!
我能够使用带有帮助器函数的Javascript UDF来“清理”密钥名称:
function _transform(value){
var objectConstructor = {}.constructor;
var arrayConstructor = [].constructor;
if (value.constructor === objectConstructor) {
var out = {};
for (var key in value) {
if (value.hasOwnProperty(key)) {
//console.log(key + " -> " + value[key]);
var cleaned_key = key.replace(/-/g, '_');
out[cleaned_key] = _transform(value[key]);
}
}
return out;
} else if (value.constructor === arrayConstructor) {
var cleaned_arr = [];
value.forEach(function(item, index) {
cleaned_arr.push(_transform(item));
});
return cleaned_arr;
} else {
return value;
}
}
也许有一个更干净的方法,但到目前为止这是有效的。
我正在尝试使用GCP模板执行管道:https://cloud.google.com/dataflow/docs/templates/provided-templates#cloud-storage-text-to-bigquery 但我得到了错误: 任何人都可以共享一个工作的CSV文件以用作运行该管道的输入吗?
我正在PythonApacheBeamDataflow中进行一个项目,我需要根据启动数据流模板提供的运行时参数命名bigquery表。 到目前为止,我运气不好,它要么为我提供了运行时参数的定义,要么提供了一个空字符串。 所以我基本上需要这个来工作: 命名表中的写BigQuery函数是我有麻烦的地方,我也尝试使用custom_options.table_name,声明变量为全局等。 我已经创建了一个
我对C模板非常陌生。我目前正在做一个项目,我需要使用模板实现双重链接列表。以下是我目前所拥有的: 然而,在我的析构函数中,为什么我不能访问节点元素?该方法中的代码现在已编译,但不会抛出错误。但是如果我尝试使用- 此外,我如何在函数头中初始化list==NULL,而不是在类之外进行初始化?
问题内容: 我需要查询以在Bigquery中查找表(表元数据)的列名,例如SQL中的以下查询: 问题答案: 更新 :现在可以!请参阅下面的文档和答案。 回答,大约在2012年: 尽管这不是第一次请求,但当前无法通过查询检索表元数据(即列名和类型)。 您有理由将其作为查询吗?表格元数据可通过表格API获得。
我想把BigQuery表名作为运行时参数传递给我的数据流模板,就像这样简单: 这个问题有一个解决方案:https://issues.apache.org/jira/browse/beam-1440,但到目前为止我还不明白结论。
问题内容: 在(和)包中,具有以下签名: 到底是干什么用的?我已经扫描了文档(还有一些资料),但无济于事。我只是用一个空字符串实例化所有模板,这似乎没有什么不同。我为什么要打扰一个名字? 即使是命名模板,两者似乎是等效的: https://play.golang.org/p/wKzCHdLf2S 问题答案: 毫无疑问,模板的名称就是为模板 命名 。 到底有什么好处呢?只要您不想 引用 该模板,就没