にい's Blog

おばさん元SEの徒然日記

Google Classroomのいろんな制限

最近のお仕事では、Googleのサービスを使ってオンライン授業をするための
支援をしています。
Google Classroomを使ってオンデマンドの教材をアップしたり、Google Meetで
オンライン授業をするお手伝いとかですね。

で、授業の数だけGoogle Classroomでクラスを作るわけなんですが、
学校の特性で、クラスが3000以上あったりするんですよ。
もちろん中には先生がご自身でクラスを作ったりもするわけで、
クラスルームの一覧を作って管理したいんですね。

普通に考えたら簡単ですよね。
DBから必要なデータを抜いて一覧作ればいいだけ。

ネットにもいろいろ情報はあるので、はるか昔にはFortrunとかCOBOLとか、
新しめのとこでもVBくらいしか仕事ではやってないけど、JAVASCRIPT
PHPはかじってるから何とかなるだろー、と思ってGoogle App Scriptで
Google SpledSheetに吐き出すスクリプトを作ってみたのですよ。

これが、うまくいかない。
しばらくプログラム組んでないから、こんな簡単なこともできないくらい
ポンコツになってしまったのかー!と、ものすごく落ち込みました。


最初にぶつかった壁は、全件出力できない。

これは、
GASで1回に読み込めるデータが500件だけなので、
500件づつの処理を繰り返す必要がある、ということがわかり、

次の壁は、Google Spledsheetに出力すると、3000件の処理をするのに
50分くらいかかる計算なので、Scriptの実行継続時間が30分を超えると
強制終了してしまうという事実!
なんとか処理時間を速くしなくては。


それならSpledsheetじゃなくてテキストに吐き出してやる、と思ったの
ですが
数十件のテストデータはうまくいくのに、3000件を処理すると、出力された
ファイルは真っ白という。。。
これもまた、ファイルに出力できるデータのサイズ制限があり、1ファイル
500KBまでしか出力できないという・・・!
めんどくさいけど出力ファイルも分割するしかありませんね。(泣)

確かに調べればわかることだけど、Googleさん、制限多すぎ。
小中高くらいまでなら使えるかもしれないけど、大学だと使えないよ。。。(大泣)

ということで、GASで制限されてる時間とかデータ件数とかファイル容量とかの
一覧。備忘録です。

Google Classroomの制限
                 無償版     有償版
     1クラスの教師数     20人      20人
     1クラスのメンバー    250人      1000人
     1人が参加できるクラス  100       1000
     送信できるクラスの招待状 100         500
     メールアドレス表示    不可      20人
     1クラスのトピック    100      100


スクリプトの継続時間
     無償版 6分    有償版 30分

     これって、ネットで調べたら有償版でも6分て情報があったけど
     とりあえず今は30分出来てるなあ、というところです。

③その他いろいろ容量制限

     Google Document  1文書の最大サイズ 500kb
              文書とプレゼンテーションは合計5000ファイルまで

     Google Spledsheet 最大256列 200000セル 100シートまで
              最大1000ファイル・1ユーザー
              同時に開けるのは11個

     ドキュメント・スプレッドシート・プレゼンテーション以外は
     1ユーザー最大1GBまで。