小编Sye*_*que的帖子

Google 云计算引擎始终免费

我正在尝试使用始终免费层选项运行计算引擎实例。免费层的文档表明,如果它是来自某些位置的 e2-micro 计算机引擎实例,那么它应该是免费的。这是屏幕截图: 在此输入图像描述

现在,我在 us-central1 位置(这是免费层位置之一)选择了具有 10GB 标准永久磁盘(在 GCP 平台中不能低于 10GB)的 e2-micro。它仍然显示每月费用估计为 6.51 美元。这是实例配置的屏幕截图: 在此输入图像描述

我在这里做错了什么吗?我是否需要检查其他选项以确保它保持在始终免费的状态?

google-compute-engine google-cloud-platform

25
推荐指数
1
解决办法
3万
查看次数

如何计算bigquery数组字段中元素的频率

我有一张看起来像这样的表:

在此处输入图片说明

我正在寻找一个表格,它给出了字段中元素的频率计数l_0, l_1, l_2, l_3

例如,输出应如下所示:

| author_id  | year | l_o.name         | l_0.count| l1.name    | l1.count | l2.name             | l2.count| l3.name            | l3.count|
| 2164089123 | 1987 | biology          | 3        | botany     | 3        |                     |         |                    |         |
| 2595831531 | 1987 | computer science | 2        | simulation | 2        | computer simulation | 2       | mathematical model | 2       |
Run Code Online (Sandbox Code Playgroud)

编辑:

在某些情况下,数组字段可能有不止一种类型的元素。例如l_0可能是 ['biology', 'biology', 'geometry', 'geometry']. 在这种情况下,输出为字段l_0, l_1, l_2, …

google-bigquery bigquery-standard-sql

5
推荐指数
1
解决办法
4634
查看次数

使用 bq CLI 在 bigquery 中列出数据集中的所有表并将它们存储到谷歌云存储

我在一个数据集中有大约 108 个表。我正在尝试使用以下 bash 脚本提取所有这些表:

# get list of tables
tables=$(bq ls "$project:$dataset" | awk '{print $1}' | tail +3)

# extract into storage
for table in $tables
do
    bq extract --destination_format "NEWLINE_DELIMITED_JSON" --compression "GZIP" "$project:$dataset.$table" "gs://$bucket/$dataset/$table.json.gz" 
done
Run Code Online (Sandbox Code Playgroud)

但似乎bq ls一次只能显示大约 50 个表,因此我无法将它们提取到云存储中。

无论如何我可以使用该bq ls命令访问所有 108 个表吗?

google-bigquery google-cloud-platform gcloud-cli

4
推荐指数
2
解决办法
7402
查看次数

如何在bigquery中获取重复嵌套字段的长度

我在 bigquery 中有一个表,其中有一个重复的嵌套字段,称为author_names.在此处输入图片说明

如何获取重复嵌套字段的长度author_names?例如,对于article_id = 2049807276,作者姓名的长度将为 2。

我更喜欢 bigquery 中的标准 sql 语法。

google-bigquery bigquery-standard-sql

3
推荐指数
1
解决办法
2886
查看次数

Bigquery中一对数组之间的余弦相似度

我创建了一个表,其中包含一对 ID 和每个 ID 的坐标,以便我可以计算它们之间的成对余弦相似度。

桌子看起来像这样在此处输入图片说明

坐标的维度数目前为 128,但它可能会有所不同。但是在同一个表中,一对 ID 的数字维度总是相同的。

coord1coord2是具有浮点值的重复字段(数组)。

有没有办法计算它们之间的余弦相似度?

我的预期输出将包含三列id1id2cosine_similarity

google-bigquery bigquery-standard-sql

2
推荐指数
1
解决办法
667
查看次数

BigQuery 中具有不同元素的数组连接

让我们每行我有一个在说id和两个数组array_1array_2看起来像以下

SELECT 'a' id, [1,2,3,4,5] array_1, [2,2,2,3,6] array_2 UNION ALL
SELECT 'b', [2,3,4,5,6], [7,7,8,6,9] UNION ALL
SELECT 'c', [], [1,4,5]
Run Code Online (Sandbox Code Playgroud)

我想连接这两个数组,只保留新数组中的唯一元素。我想要的输出如下所示

+----+-----------+-----------+-----------------------------+
| id |  array_1  |  array_2  | concatenated_array_distinct |
+----+-----------+-----------+-----------------------------+
| a  | 1,2,3,4,5 | 2,2,2,3,6 |                 1,2,3,4,5,6 |
| b  | 2,3,4,5,6 | 7,7,8,6,9 |             2,3,4,5,6,7,8,9 |
| c  |           |     1,4,5 |                       1,4,5 |
+----+-----------+-----------+-----------------------------+
Run Code Online (Sandbox Code Playgroud)

我试图使用array_concat函数,但找不到使用该array_concat函数保留不同元素的方法。

无论如何我可以获得所需的输出?

sql google-bigquery

2
推荐指数
1
解决办法
2715
查看次数

将bigquery中的数组与空数组连接起来

我有一个看起来像这样的表:

在此输入图像描述

然后我尝试将 label1、label2、label3 聚合到每种类型标签的一个数组中,最后我想将所有非空标签放入一个组合数组中。所以我的查询看起来像这样

#standardSQL
WITH
table AS (
SELECT 'abc' id, 1 label1, 12 label2, 122 label3 UNION ALL
SELECT 'abc', 1, 12, 129 UNION ALL
SELECT 'xyz', 2, 23, NULL UNION ALL
SELECT 'xyz', 2, 24, NULL
),

each_label_agg AS (
 SELECT
 id,
 ARRAY_AGG(label1 IGNORE NULLS) AS label1_agg,
 ARRAY_AGG(label2 IGNORE NULLS) AS label2_agg,
 ARRAY_AGG(label3 IGNORE NULLS) AS label3_agg
FROM
table
GROUP BY
 id)
SELECT
 each_label_agg.*,
 ARRAY_CONCAT(each_label_agg.label1_agg, each_label_agg.label2_agg, 
 each_label_agg.label3_agg) AS combined_labels
FROM
 each_label_agg
Run Code Online (Sandbox Code Playgroud)

输出如下所示:

在此输入图像描述

但在输出中我combined_labels期望[2,2,23,24]id …

google-bigquery

1
推荐指数
1
解决办法
2624
查看次数