回答編集履歴
13
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# 考えられる原因
|
2
2
|
・Google側で、計算リソースのバランス調整により、処理速度を落とされた可能性
|
3
|
-
・既存シートへの追記
|
3
|
+
・既存シートへの追記/更新が繰り返されたことにより、データの読み書きに、なんらかのボトルネックが発生している可能性
|
4
4
|
|
5
5
|
|
6
6
|
# 解決案
|
12
test
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
# 考えられる原因
|
2
|
-
G
|
2
|
+
・Google側で、計算リソースのバランス調整により、処理速度を落とされた可能性
|
3
|
+
・既存シートへの追記。更新が繰り返されたことにより、データの読み書きに、なんらかのボトルネックが発生している可能性
|
3
4
|
|
4
5
|
|
5
6
|
# 解決案
|
11
test
CHANGED
@@ -1,17 +1,13 @@
|
|
1
1
|
# 考えられる原因
|
2
|
-
1.質問者さんの実行しているスクリプトに特定の問題がある。
|
3
|
-
|
4
|
-
|
2
|
+
GAS側の要因(Google側で、計算リソースのバランス調整により、処理速度を落とされた等)
|
5
3
|
|
6
4
|
|
7
|
-
# 解決
|
5
|
+
# 解決案
|
8
|
-
1.について:
|
9
|
-
スクリプトの具体的内容が明らかにされていないため、回答できません。
|
10
6
|
|
11
|
-
|
7
|
+
1.
|
12
8
|
・同じデータを別のファイルで新規作成し直すと、速度が改善する可能性はあります。([Issue Tracker](https://issuetracker.google.com/issues/156530211)参照)
|
13
9
|
|
14
|
-
|
10
|
+
2.[batchUpdate](https://developers.google.com/apps-script/advanced/sheets#write_values_to_multiple_ranges) を利用する。
|
15
11
|
|
16
12
|
[2018年のベンチマーク](https://tanaikech.github.io/2018/10/12/benchmark-reading-and-writing-spreadsheet-using-google-apps-script/)によると、10列・3万行を書き込むテストで、[batchUpdate](https://developers.google.com/apps-script/advanced/sheets#write_values_to_multiple_ranges) による書き込みは、setValues よりも4~5倍速いようです。
|
17
13
|
|
@@ -48,6 +44,6 @@
|
|
48
44
|
```
|
49
45
|
参考: https://stackoverflow.com/questions/64977032/google-apps-script-setvalues-issue-timing-out-intermittently
|
50
46
|
|
51
|
-
|
47
|
+
3.速度の改善はあきらめて、制限時間内におさまるよう、処理を分割する。
|
52
48
|
→これについては「GAS 時間制限 分割」等で検索するとやり方は出てきます。
|
53
49
|
|
10
test
CHANGED
@@ -48,6 +48,6 @@
|
|
48
48
|
```
|
49
49
|
参考: https://stackoverflow.com/questions/64977032/google-apps-script-setvalues-issue-timing-out-intermittently
|
50
50
|
|
51
|
-
|
51
|
+
4.速度の改善はあきらめて、制限時間内におさまるよう、処理を分割する。
|
52
52
|
→これについては「GAS 時間制限 分割」等で検索するとやり方は出てきます。
|
53
53
|
|
9
test
CHANGED
@@ -12,8 +12,11 @@
|
|
12
12
|
・同じデータを別のファイルで新規作成し直すと、速度が改善する可能性はあります。([Issue Tracker](https://issuetracker.google.com/issues/156530211)参照)
|
13
13
|
|
14
14
|
3.[batchUpdate](https://developers.google.com/apps-script/advanced/sheets#write_values_to_multiple_ranges) を利用する。
|
15
|
+
|
16
|
+
[2018年のベンチマーク](https://tanaikech.github.io/2018/10/12/benchmark-reading-and-writing-spreadsheet-using-google-apps-script/)によると、10列・3万行を書き込むテストで、[batchUpdate](https://developers.google.com/apps-script/advanced/sheets#write_values_to_multiple_ranges) による書き込みは、setValues よりも4~5倍速いようです。
|
17
|
+
|
15
18
|
下記は、コピー元シートのA1列を左上とする10000行、100列分のデータを、同じスプレッドシートの別のシートのA1列を左上とする範囲にペーストする例です。
|
16
|
-
|
19
|
+
|
17
20
|
|
18
21
|
```js
|
19
22
|
function myFunction2() {
|
8
test
CHANGED
@@ -1,16 +1,19 @@
|
|
1
|
+
# 考えられる原因
|
1
|
-
|
2
|
+
1.質問者さんの実行しているスクリプトに特定の問題がある。
|
3
|
+
|
4
|
+
2.GAS側の要因(Google側で、計算リソースのバランス調整により、処理速度を落とされた等)
|
2
5
|
|
6
|
+
|
7
|
+
# 解決策
|
8
|
+
1.について:
|
3
|
-
|
9
|
+
スクリプトの具体的内容が明らかにされていないため、回答できません。
|
4
|
-
+ そのときの計算リソースの逼迫等の事情
|
5
|
-
+ Googleの匙加減ひとつ’(直近で大量のデータを計算しているユーザーを狙い撃ちして故意にそのユーザーだけ処理速度を落とす、等)
|
6
|
-
によって、「今までぎりぎり(5分以内)の時間内に収まっていたものが、ある日以降制限時間に収まらなくなってしまう」といったことは、十分起こり得ると思います。
|
7
|
-
(確認していませんが、GASの利用規約上、任意の処理時間が永久に一定時間以内であることは保証されていないはずです)
|
8
10
|
|
11
|
+
2.
|
9
|
-
・
|
12
|
+
・同じデータを別のファイルで新規作成し直すと、速度が改善する可能性はあります。([Issue Tracker](https://issuetracker.google.com/issues/156530211)参照)
|
10
13
|
|
14
|
+
3.[batchUpdate](https://developers.google.com/apps-script/advanced/sheets#write_values_to_multiple_ranges) を利用する。
|
11
15
|
下記は、コピー元シートのA1列を左上とする10000行、100列分のデータを、同じスプレッドシートの別のシートのA1列を左上とする範囲にペーストする例です。
|
12
|
-
[2018年のベンチマーク](https://tanaikech.github.io/2018/10/12/benchmark-reading-and-writing-spreadsheet-using-google-apps-script/)によると、10列・3万行を書き込むテストで、
|
13
|
-
[batchUpdate](https://developers.google.com/apps-script/advanced/sheets#write_values_to_multiple_ranges) による書き込みは、setValues よりも4~5倍速いようです。
|
16
|
+
[2018年のベンチマーク](https://tanaikech.github.io/2018/10/12/benchmark-reading-and-writing-spreadsheet-using-google-apps-script/)によると、10列・3万行を書き込むテストで、[batchUpdate](https://developers.google.com/apps-script/advanced/sheets#write_values_to_multiple_ranges) による書き込みは、setValues よりも4~5倍速いようです。
|
14
17
|
|
15
18
|
```js
|
16
19
|
function myFunction2() {
|
@@ -42,8 +45,6 @@
|
|
42
45
|
```
|
43
46
|
参考: https://stackoverflow.com/questions/64977032/google-apps-script-setvalues-issue-timing-out-intermittently
|
44
47
|
|
45
|
-
|
48
|
+
3.速度の改善はあきらめて、制限時間内におさまるよう、処理を分割する。
|
46
|
-
|
49
|
+
→これについては「GAS 時間制限 分割」等で検索するとやり方は出てきます。
|
47
50
|
|
48
|
-
したがって、ファイルを作り直すことで改善する可能性もゼロではありません。
|
49
|
-
(もちろん、時間が経過するにつれて同様の問題が発生する可能性もゼロではありません)
|
7
test
CHANGED
@@ -46,4 +46,4 @@
|
|
46
46
|
[Issue Tracker](https://issuetracker.google.com/issues/156530211)によると、「同じデータを別のファイルで新規作成し同じスクリプトを実行すると、速度が速くなった(ただし旧来のスプレッドシートでは遅いまま)」という書き込みがありました。
|
47
47
|
|
48
48
|
したがって、ファイルを作り直すことで改善する可能性もゼロではありません。
|
49
|
-
(もちろん、時間が経過するにつれて同様の問題が発生する可能性
|
49
|
+
(もちろん、時間が経過するにつれて同様の問題が発生する可能性もゼロではありません)
|
6
test
CHANGED
@@ -42,4 +42,8 @@
|
|
42
42
|
```
|
43
43
|
参考: https://stackoverflow.com/questions/64977032/google-apps-script-setvalues-issue-timing-out-intermittently
|
44
44
|
|
45
|
+
----
|
46
|
+
[Issue Tracker](https://issuetracker.google.com/issues/156530211)によると、「同じデータを別のファイルで新規作成し同じスクリプトを実行すると、速度が速くなった(ただし旧来のスプレッドシートでは遅いまま)」という書き込みがありました。
|
45
47
|
|
48
|
+
したがって、ファイルを作り直すことで改善する可能性もゼロではありません。
|
49
|
+
(もちろん、時間が経過するにつれて同様の問題が発生する可能性はゼロではありません)
|
5
test
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
・まず、「質問者さんの実行しているスクリプトや環境に問題がある可能性」については、そのスクリプトやデータの詳細が質問文に記載されていないため、エスパーでもない限りわからないと思います。(setValuesの呼び出し回数や書き込み行数を記載するだけでは不十分です)
|
2
2
|
|
3
|
+
・また、GASはクラウドで実行されているので、
|
4
|
+
+ そのときの計算リソースの逼迫等の事情
|
5
|
+
+ Googleの匙加減ひとつ’(直近で大量のデータを計算しているユーザーを狙い撃ちして故意にそのユーザーだけ処理速度を落とす、等)
|
3
|
-
|
6
|
+
によって、「今までぎりぎり(5分以内)の時間内に収まっていたものが、ある日以降制限時間に収まらなくなってしまう」といったことは、十分起こり得ると思います。
|
4
7
|
(確認していませんが、GASの利用規約上、任意の処理時間が永久に一定時間以内であることは保証されていないはずです)
|
5
8
|
|
6
9
|
・その上で、下記のコードが、もしかしたら解決方法になるかもしれません。(ただし上述の通り、ユーザーがあずかり知らない原因、または質問者さんの環境やコード独自の要因で解決しない可能性の方が高いと思います)
|
4
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
・まず、「質問者さんの実行しているスクリプトや環境に問題がある可能性」については、そのスクリプトやデータ
|
1
|
+
・まず、「質問者さんの実行しているスクリプトや環境に問題がある可能性」については、そのスクリプトやデータの詳細が質問文に記載されていないため、エスパーでもない限りわからないと思います。(setValuesの呼び出し回数や書き込み行数を記載するだけでは不十分です)
|
2
2
|
|
3
3
|
・また、GASはクラウドで実行されているので、そのときの計算リソースの逼迫等の事情や、Googleの匙加減ひとつで、「今までぎりぎり(5分以内)の時間内に収まっていたものが、ある日以降制限時間に収まらなくなってしまう」といったことは、十分起こり得ると思います。
|
4
4
|
(確認していませんが、GASの利用規約上、任意の処理時間が永久に一定時間以内であることは保証されていないはずです)
|
3
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
・まず、「質問者さんの実行しているスクリプトや環境に問題がある可能性」については、そのスクリプトやデータ、実行回数、実行タイミング等の詳細が質問文に記載されていないため、エスパーでもない限りわからないと思います。
|
1
|
+
・まず、「質問者さんの実行しているスクリプトや環境に問題がある可能性」については、そのスクリプトやデータ、実行回数、実行タイミング等の詳細が質問文に記載されていないため、エスパーでもない限りわからないと思います。(setValuesの呼び出し回数や書き込み行数を記載するだけでは不十分です)
|
2
2
|
|
3
3
|
・また、GASはクラウドで実行されているので、そのときの計算リソースの逼迫等の事情や、Googleの匙加減ひとつで、「今までぎりぎり(5分以内)の時間内に収まっていたものが、ある日以降制限時間に収まらなくなってしまう」といったことは、十分起こり得ると思います。
|
4
4
|
(確認していませんが、GASの利用規約上、任意の処理時間が永久に一定時間以内であることは保証されていないはずです)
|
2
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
・まず、「質問者さんの実行しているスクリプトや環境に問題がある可能性」については、そのスクリプトやデータ、実行回数、実行タイミング等の詳細が
|
1
|
+
・まず、「質問者さんの実行しているスクリプトや環境に問題がある可能性」については、そのスクリプトやデータ、実行回数、実行タイミング等の詳細が質問文に記載されていないため、エスパーでもない限りわからないと思います。
|
2
2
|
|
3
3
|
・また、GASはクラウドで実行されているので、そのときの計算リソースの逼迫等の事情や、Googleの匙加減ひとつで、「今までぎりぎり(5分以内)の時間内に収まっていたものが、ある日以降制限時間に収まらなくなってしまう」といったことは、十分起こり得ると思います。
|
4
4
|
(確認していませんが、GASの利用規約上、任意の処理時間が永久に一定時間以内であることは保証されていないはずです)
|
1
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
・まず、「質問者さんの実行しているスクリプトや環境
|
1
|
+
・まず、「質問者さんの実行しているスクリプトや環境に問題がある可能性」については、そのスクリプトやデータ、実行回数、実行タイミング等の詳細が、質問文に一切記載されていないため、エスパーでもない限りわからないと思います。
|
2
2
|
|
3
3
|
・また、GASはクラウドで実行されているので、そのときの計算リソースの逼迫等の事情や、Googleの匙加減ひとつで、「今までぎりぎり(5分以内)の時間内に収まっていたものが、ある日以降制限時間に収まらなくなってしまう」といったことは、十分起こり得ると思います。
|
4
4
|
(確認していませんが、GASの利用規約上、任意の処理時間が永久に一定時間以内であることは保証されていないはずです)
|