2013年9月15日日曜日

オリンピックとITシステム

近年のオリンピックは、ITとも強い結びつきがあります。過去のオリンピックを振り返りながら、2020年の東京オリンピックのシステムを予想してみましょう。

●1964年東京オリンピック

1964年の東京オリンピックでは、競技データの集計システムを日本IBMが担当しました。

当時はバッチ処理全盛期、というかほとんどバッチ処理しかなかった時代、やっと米国のレーダー防衛網システムSAGEや、それを応用した航空券予約システムSABREができた頃でした。

レーダー網と航空機、一見違うものですが、SAGEがレーダー基地からの情報を集計していたのに対して、SABREは旅行代理店からの情報を集計しており、本質的には同じものです。

日本の列車予約システム「MARS」ができたのもこの頃です。ちなみにSABREは座席数の管理しかしていなかったそうですが、MARSは座席番号の予約もできたという話です。

SAGEやSABREの開発には米IBMが関与しており、日本IBMもそのノウハウが使えると考えたようです。しかし、当の米IBMもプロジェクトの成功には懐疑的だったと伝わっています。

詳しくは、Webサイト「大規模プロジェクトの開発──東京オリンピックのシステム構築──」などをご覧ください。

データベース理論もなかった時代、同じデータを2台のサーバーに同時書き込みしていたそうで、苦労が想像されます。今ならデータベースレプリケーションなんてほとんど基本機能になっていますが。

情報処理学会の学会誌「情報処理」1965年3月号に掲載された「オリンピックと情報処理」にはプロジェクト規模の概要が紹介されています。これによると、オリンピックのコンピュータ導入は東京の前、1960年のスコーバレー(カリフォルニア州)冬季五輪からだそうです。

東京オリンピックのシステムは成功し、これが日本の銀行のオンライン化を後押ししたと言われています。それまでは「コンピュータのような信頼性の低い機械に銀行業務を任せるわけにはいかない」と思われていたそうです。

ところで、このブログを書くのにいろいろ検索していたら「世界初のオンラインシステムが日本で動いた」という記事を見つけました。少々誤解を招く記述があったので、補足しておきます(この補足が役立つかどうかは分かりませんが)。

まず、「MARS」が世界初のオンラインシステムとなっています。前述の通り「座席予約」としては世界初ですが、MARSの数か月前にSABREが動作していますし、軍事用にはSAGEもありました。

次にMARSがベンディックス社のコンピュータを使っているように読み取れる箇所がありますが、少なくともMARSに関しては参考にした程度で実際のコンピュータは日立製作所が担当しています。また、レミントンランド(後のユニバック、現在のUNISYS)社の関与が示唆されていますが、MARSに関しては無関係のはずです。

当時の日本法人はコンピュータのブランドを付けた「レミントン・ユニバック」でしたが、もともとはレミントン・ランドという社名でした。本文に説明なしに登場する「RR」は「レミントン・ランド」の略称と思われます。

●1972年札幌オリンピック

すみません、見出し付けましたが札幌とITの関係はよく知りません。ちなみに、当時は冬季オリンピックと夏季オリンピックは同じ年に開催されていました。

私は、東京オリンピックでは2歳だったのでほとんど記憶にないのですが、札幌はよく覚えています。スキーの70mm級ジャンプ競技が金・銀・銅と日本が独占したこと、90m級では残念な結果に終わったこと、フィギュアスケートのジャネット・リン選手が転倒しながらも笑顔だったことが印象的です。

たぶん、50歳代以上の人なら「(失敗しても)ジャネット・リンを見習って」と言えば通じるはず。

あとはトワエモアのテーマソングでしょうか。

●1998年長野オリンピック

1998年2月に開催された長野オリンピックでは、ITが大きな役割を果たしました。詳細は「情報処理」1998年2月号の論文に詳しく紹介されています。

長野オリンピックのネットワークと情報提供システム
重近 範行 , 中村 修 , 笹川 信義 , 村井 純
情報処理,39(2), (1998-02-15)

オリンピックの情報がWebサイトで公開されるようになったのは、非公式には1994年のリレハンメル冬季五輪から、公式には1996年のアトランタからだそうです。つまり1998年の長野冬季五輪は公式サイトになってから2回目ということになります。

アトランタの実績などを基に、IBMが予測した長野オリンピックのアクセス数は1日に1億ヒット(毎秒1157ヒット)です。当時のYahoo!のアクセス数が1日500万ヒットだったことを考えると、いかに大きいかが分かるでしょう。ちなみにGoogleの創業は1998年9月なので、長野オリンピックのときは存在すらしていませんでした。また、Wikipediaによると現在のYahoo! Japanのヒット数は2009年で1日19億だそうです。

利用されたネットワークは、T3回線(45Mbps)が2本だそうで、単純に規格上の数字だけ見ると、現在の家庭用インターネット接続と同程度でしかありません。

当時、既に負荷分散技術はあったのですが、DNSラウンドロビンを使うのが一般的でした。ただし、DNSラウンドロビンによる負荷分散はIPアドレスによる経路選択ができないこと、クライアントキャッシュが有効な間は負荷分散ができないことから、最終的にはIPアドレスによるロードバランスが採用されたようです。

当時、既にIPv6のエニーキャスト規格は存在しましたが、当然のようにあきらめたそうです。現在でもIPv6は家庭にはほとんど普及していません。論文では「結局、エニーキャストを自前で実装したようなものだ」という記述がありました。

コンテンツを保管するストレージは、世界数か所に分散させ、DFS(WindowsのDFSとは違う技術です)を使って同期しています。サーバーは各拠点に数十台、拠点内では負荷を考慮した分散を行なうことで、応答時間を短縮します。

2020年東京オリンピック

2020年の東京オリンピックではどんな技術が使われるのでしょう。

基本的なインフラは、クラウドに依存するでしょう。期間限定で、急激なトラフィック増減をさばくにはクラウドが最適です。

Webサーバーやデータベースサーバーだけでなく、CDN(コンテンツデリバリネットワーク)による配信も当然使われるはずです。

そして、これを契機に日本でもクラウド利用が本格化し、基幹業務をクラウドに移行する企業も増えるでしょう。

また、1964年は2年の歳月をかけてプロジェクトを完遂したそうですが、それほどの時間をかけることはないでしょう。

IPv6のエニーキャストは使われるでしょうか。あと7年もあればIPv6はある程度普及していそうな気もしますが、よく分かりません。10年以上前から「IPv6はもうすぐ普及する」といって、全く普及していませんからね。

ちなみに1964年のプロジェクトでは、途中でプロジェクトが遅れ、人員を大量に追加したそうです。「遅れているプロジェクトに人員を大量投入するとさらに遅れる」というのはプロジェクトでよくある話ですが、この時は、プロジェクト初期から詳細なドキュメント記述を強制していたため、大きな遅れはなく、人員の追加は多大な効果を上げたそうです。

【追記】もちろん、現在のオリンピックでは既にクラウドもCDNも使われています。ソチの冬季オリンピックでは動画配信にMicrosoft Azureが使われ、CDNが活躍しました。