JR東日本の年末トラブルは日付処理が原因? 73
徹夜作業が裏目に、 部門より
あるAnonymous Coward 曰く、
朝日新聞、NHKニュース、TBSニュースの報道とJR東日本のプレスリリース(PDF)によると、昨年末12月29日にJR東日本の全新幹線を管理するシステム「COSMOS」のトラブルにより、東北や上越など5新幹線が3時間不通となり、112本が運休し、帰省客ら13万7000人が影響を受けた問題で、原因はダイヤの変更作業の遅れだったと判明したそうだ。
このシステムは列車のダイヤや乗務員の配置などを管理するもので、ダイヤなどの変更が必要な場合、それらの情報を当日の午前5時までに入力する必要があるということだった。ところが先月29日は、悪天候の影響で前日に大幅に乱れていた山形や秋田の新幹線のダイヤを元に戻したり、年末の列車を増発したりと、入力するデータが、運行するほぼ全ての新幹線(389本)の車両のやり繰りを変える「過去に例のない作業だった」(JR東日本)と膨大になった。
終電後、29日分のデータの入力を終えたのは始発直前の午前5時45分頃。しかし、午前5時を過ぎていたので更新ができなかったという。このことを同社は事実上知らず、更新に手間取ったのだそうだ。そして復旧までにさらに3時間を要した。
JRの運輸車両部長は「システムの運用の仕方に齟齬があった」と謝罪した。JR東日本では、今後、システムの入力を担当する人員を増やすなど再発防止を進めるとのこと。
また、kailas 曰く、
時事通信によると、先月29日に発生したJR東日本の新幹線運行システムのトラブルの原因は日付処理の問題だったようである(JR東日本プレスリリース[PDF])
問題なのは午前5時以降に入力されたデータ変更分の日付処理が正常にできない仕様であるにも関わらず、担当者がそれを認識していなかった事だ。また、これに対する対策として「午前5時までに入力を完了させる体制を整える」としているが、これは根本的な対策ではないような気がする。みなさまは、この対策をどのようにお考えだろうか。
日付処理? (スコア:2, 参考になる)
重箱の隅をつつくようですが、日付処理というのは表現としてどうかと、、、
少なくとも、どういう処理なのかがぱっと思い浮かぶ言葉が他にあるような。日変処理とか。
日変処理(オフトピ) (スコア:4, おもしろおかしい)
Re:日変処理(オフトピ) (スコア:1)
Re:日付処理? (スコア:2, すばらしい洞察)
堅苦しい言い方をすれば「日付更新処理」かと思うのですが、要するに
だけの事なんですよね。
Re:日付処理? (スコア:2, 興味深い)
この辺は方言(?)というか業種/企業の文化の違いかも・・・
Re:日付処理? (スコア:1, 参考になる)
# 日次処理は「毎日決まって行う処理」では? 月次・週次もあります。
Re:日付処理? (スコア:1)
#前も書いたなw
#つか、ググってみるとわかるんですが、
#「つつく」のほうが圧倒的に多いんですね~
Re:日付処理? (スコア:1)
Re:日付処理? (スコア:1)
hairsplitting の訳語
genius 重箱のすみをつつく(こと)
readers 箱の隅をほじくるような(議論[考え方])
勉強になりました。
Re:日付処理? (スコア:1)
根本的な対策なんて銀の弾丸はない。 (スコア:2, すばらしい洞察)
「5時までに全部の入力を終わらせなくちゃいけなかったの!? 知らなかった!」
ということと推測します(それらしい言辞もあるようだし)。
根本的な問題としては、システム仕様と業務ルールが分断されているという問題でしょうか。
システム仕様が、業務上の制約を生じさせることはないようにすべきだ、
という論調が見受けられますが、一般論として、それは不可能でしょう。
業務マニュアル作成者とシステム要件定義者/設計者など、各所間におけるコミュニケーションミス、
文書化されていない仕様、運用テストの不備、
そうしたことを減らしていくには、「根本的な対策」なんてなかなか打てません。
レビューの徹底とか、地道な努力しかないんじゃないですかね。
だとしたって、そこに無謬はありえないのですが、努力の質を経験から向上していくことはできるはず。
このシステムに携わった人たちが、地道な努力を怠ったとも(ことこれだけを根拠には)思いません。
上手の手から水が漏ってしまったのでしょう……。
経験上、バッチは文書化が弱くなりがちとは思うので、この事例から学ぶべきところは多いですね。
# 年末をまたいでバッチ周りのバグ対を抱えているけどID。
データ入力が始発に間に合わなかった (スコア:1, 興味深い)
とりあえず今回のCOSMOS概要 (スコア:1, 参考になる)
1995年リリースなシステムなんですね
こんだけなのでAC
Re:とりあえず今回のCOSMOS概要 (スコア:1)
シンプルな東海道と違って、東日本の新幹線は複雑。
計画作成端末というのが台数が少なそうで、ここがボトルネックになったということですかね?
テンパってきた時の「手分けして入力」なんて体制が組めれば、それでokなのかも。
おそらく5時がリミットっていうのも、プロッタでダイヤグラムを印刷する時間も必要だから?
かなり電脳化してても、人間にとってより価値ある輸送サービスを反映させるためにスジ屋さんが紙に線を引いてやりくりしていますからね。
#インターネットのポリシールーティングみたいなものか
根本的な対策って何? (スコア:0)
バッチじゃなくても出来るなら、わざわざバッチにしてないよ
Re:根本的な対策って何? (スコア:5, 参考になる)
って対策を立ててもらわないと、
「何らかの原因で5時に間に合わなかったら、また新幹線が止まる」
になっちゃうからダメじゃん。
ってことですかね?
間に合わない場合は当日ダイヤを修正 (スコア:4, 興味深い)
しています。この、翌日ダイヤを当日の実施ダイヤに落とす作業が今回失敗
したわけです。
指令員は12/29の午前1時過ぎから翌日ダイヤを修正して、5:45になって実施
ダイヤに落とそうとしたわけですが、ここまでがんばらずに、3時ぐらいの
段階で翌日ダイヤを当日ダイヤに切り替えてしまえば良いわけです。
もちろん、その当日ダイヤはまだまだ修正すべき場所を含んでいますが、始発
からの数時間を動かせるダイヤになっていれば、その後は、当日ダイヤを修正
していけば良い(普段の日中に輸送障害が起きた時と同じ)わけです。
青い新幹線の人に聞いてみたところ、やっぱり5:45まで粘るのはやりすぎで、
3時ぐらいでダイヤ切替をするのが普通でしょう、とのことでした。
Re:根本的な対策って何? (スコア:2, すばらしい洞察)
>って対策
対策も何も、始発までに間に合わなければその電車は運休になっちゃうんじゃね?
コンピュータシステムの更新が仮に24時間いつでもOKとなったとしても、入力が終わらないことには現場は動けないのなら、意地でもデッドラインまでに間に合わす体制を確保するしかないと思うんだけど。
Re:根本的な対策って何? (スコア:2, 興味深い)
たとえば貨物列車では、何かトラブルがあって運ぶべき荷物がなくなってしまった場合でも空荷で走るようです。
各方面に調整・変更を行うよりは、電力が無駄でも走らせたほうがいいということらしい。
Re:根本的な対策って何? (スコア:1, おもしろおかしい)
既に走っている列車も有るんだから。
勿論、走っている列車や乗っている乗客を無かった事にすれば・・・
Re:根本的な対策って何? (スコア:1, すばらしい洞察)
部外者でも、「もし5時に間に合わなかった場合はこうする」って対策(およびその実施)はすぐにはできないでしょうから、「当面、運用でカバーします」というアナウンスしか出てこないことくらいわかると思います。
また5時に間に合わなければこういう障害が起きると認識していれば、今回のような混乱は抑えられるはずです。
Re:根本的な対策って何? (スコア:2, すばらしい洞察)
・ひとまず5時までできるところまでやって暫定データを入力し、バッチ処理の実行を待って残りの修正を当日ダイヤの変更作業で対応する
ですかね。
どっちにしても影響は出るわけですが、変更データの元になる割付が行われなかいよりはましでしょう。
システム的な対策は、バッチ処理自体を遅らせる手段を用意するとかもありでしょうが、始発に間に合わなければやっぱり影響が出るわけで、前日の修正量が多すぎた場合に翌日ダイヤに影響が出るのを完全に防ぐ方法はないんじゃないですかね。
しもべは投稿を求める →スッポン放送局がくいつく →バンブラの新作が発売される
Re:根本的な対策って何? (スコア:2, 参考になる)
今できる対応としては妥当なところだと思います。
Re:根本的な対策って何? (スコア:1, 興味深い)
Re:根本的な対策って何? (スコア:1)
っていう対策がでてくるんじゃないかと。
新幹線の中でも影響の大きいものから最優先で。
#5時という期限が事前に分かってればたぶん今回もそうしたんじゃないかと思う。
Re:根本的な対策って何? (スコア:1)
Re: (スコア:0)
実際問題、それ以上に何かできるかな?
Re:根本的な対策って何? (スコア:1)
運用で問題を極小化して、万が一の時はいっそ止めた方が
トータルコストが少なくて済むならそっちの方が妥当な選択でしょう。
変更は随時入力可能で、発車時刻の近いものから確定していくような動的システムにするとか考えられないこともないだろうけど、
システムは根本的に作り替えだろうし、今度は乗務員が急な変更に対応できるかとか別の不安要素も出てくるし。
Re: (スコア:0)
で、全駅の時計も戻すっと
昔話の場合、 (スコア:1, おもしろおかしい)
根本的な対策 (スコア:1)
各編成について運用準備開始前までにダイヤの変更が完了すること。
各編成についてのダイヤ変更が運用準備開始後の編成すべてに影響しないこと。
等などを実現するシステムを作ることでしょうか。
バッチでも結構しんどそうです。これをバッチよりも難度の高いオンライン処理で実現するなんて、変更作業要員増とダイヤ変更作業開始時間の前倒しのコストより高くつきそうに思えてなりません。
Re:根本的な対策 (スコア:1)
遅延調整分を通常ダイヤに手で直してるように読み取れますが
この辺を登録しておいたダイヤに一瞬で戻せればかなり作業時間短縮になりそうな
通常運行(時刻改定は四半期ごとくらい?)+正月運行ダイヤ(追加は一ヶ月前?)
とかで初期状態に戻して、臨時増便のみ入力とかできれば
朝の5時まで作業しなくてもいけそうな気がするのは気のせいでしょうか?
何パターンかセーブしたデーターをロードはできんのかぁ~って感じ?
後可能なのは事前登録可能にするかってところですね
このデーターは明後日の分って形で、前々日に登録しておいて
更新処理時点でそっちから読み込むとか..
Re:根本的な対策 (スコア:1, 参考になる)
たぶん、いろいろな補助機能みたいなのはあるのかもしれませんが、鉄道ダイヤは単に何時何分にどこ行きの便があるってだけじゃなくて、具体的に「Aという車両がX車両基地にいる」ものを「n時m分にY駅着で~」と個々の車両が具体的に移動を伴うわけで、今回みたいに前日の大幅なダイヤの乱れが存在すれば、本来なら居るべき車両が車両基地にいないみたいなのが沢山発生してきますから、それら膨大なパターンを事前に想定して用意しておくのは中々難儀なことになりそうです。
X駅からY駅に移動した車両が次のダイヤに影響を与え、営業が全部終わった時には最終的に通常ダイヤの初期配置にダイヤを守りながら効率的に戻すとってのは、取った駒が持ち駒として次の局面に影響を与える将棋みたいに組み合わせが爆発しやすい問題なんですかね。AI処理的に限定された範囲での定石的なものはあるのかもしれませんが。
単純に取得した駒が落ちるだけのチェスでも探索ツリーの取捨選択に計算機リソースをバカみたいに注ぎ込んでもなかなかチェスマスターに勝てないんですから……。
Re:根本的な対策 (スコア:4, 参考になる)
ダイヤ=運行表に、臨時列車を走らせる線を新たに引いてやりくりするような作業を想像している人が多いんじゃないでしょうか。
平常時のダイヤ管理というと、車両の取り回し管理がメインでしょう。
実際には、臨時列車のために「ダイヤに新たな線を引く」ようなことはしてません。
ダイヤには平常時から、あらかじめ「臨時列車のためのスジ」が用意してあり、
普段は列車が走っていないスジに、臨時列車運行時は車両を割り当てるようにするだけです。
最近は少なくなったみたいですが、昔はこだまに乗ってると「運行していない架空のひかりを通過待ち」で駅に長時間停車するなんてことがよくありました。
基本となるダイヤ設計については、今でも主に手作業の職人的世界だとか。
コンピュータの支援によって整合性のチェックといった負荷は軽減されたけど、
最適化問題として全自動で線を引くなんていうダイヤ自動設計はまだまだ夢のようなお話。
だから、「当日ダイヤの変更作業で対応する」とか「当日運用中のにダイヤをリアルタイムに変更できるシステムの構築」ってかなり無謀ですね。
平常時のダイヤの乱れへの対応なんかは、
基本的に時計を遅らせる(列車運用の流れは変わらない)のがメインで、
あとは乱れがどうしようものなくなったら運休して車両そのものをスジから取り除くぐらいで、
臨時に列車を追加するなんてしてませんし。
Re:根本的な対策 (スコア:1)
これだけやってたら、いつまでたっても遅延状態から回復できないわけだけど、
それでも運休はどうしようもなくなった時限定の最後の手段なの?
Re:根本的な対策 (スコア:1, おもしろおかしい)
入力作業は別ですよね。
前日のダイヤの乱れが影響してしまったことについては
1)本来あるべき車庫などに戻す
2)新しいダイヤを入力する
の2つは別スレッドで動けるはずなんだがなあ。
入力がぎりぎりになってしまうなら、思い切って臨時列車は運休に
すべきでしたよね。
Re:根本的な対策 (スコア:1)
空港でどのゲートにどの便を割り当てるかは、リアルタイムに割り当てるプログラムがあるんだっけ?
JFKとかCDGとか100以上のゲートがあると思うけど。
Re:根本的な対策 (スコア:1)
夜間の間に予定の配置に戻すってのも非現実的ですしね
ほんと高度なパズル解いてるイメージだなぁ~
どうしても5時のバッチに間に合わせなければならない (スコア:0)
つまり (スコア:0)
Re:つまり (スコア:1, 参考になる)
システムを最初っから作り直すぐらいの大変更になるだろうねえ。
Re:つまり (スコア:1)
どっちかが遅れて、もう一方と衝突ってのがありそう。
Re:つまり (スコア:1)
#2本目がリニアなら更にOK?
Re:つまり (スコア:1)
やればできるじゃん!
------------
惑星ケイロンまであと何マイル?
銀行システムの場合は (スコア:2, 参考になる)
私が経験したことがある限りの話ですが。
実際のところ出来ているのは、「残高照会」ぐらいではないでしょうか。
0009は、振替が24h受付処理されますが。0010は、振替ですら〆後に関しては、翌営業日予約です。
0010に関しては、3年程前ですが翌営業日12時に処理完了メールが届いた。という実体験も報告しておきます。
さすが(銀行にとって)理想な銀行ですね。
いやアンチじゃないですよ? 頑張ってほしいだけです。 メインバンクですし。 全部有効の同一口座の本人カード3、4枚持ってますし(捨てればいいのに)。
銀行の夜間取引は、書類不備の無い申込用紙が営業時間前に山積みになっているだけです(結局バッチ……というかバッチだらけ)
それでも割とマトモに動いているのは「日付は、絶対に止めない。ずらさない」というポリシーがあるからです。
つまり「0時過ぎても日付変更しないで継続する取引」なんてものが存在しないのです。
そのために、バッチ連動処理は「翌営業日付け」があります。また必ず0時より前に、予約時間を開始します。
で、その予約時間が翌日のかなり後になってから
仮に、もしそういう処理が必要になれば「25日受付、24日起算、xxxxxxx」とデザインされるでしょう。
実際こういう取引は、ずーっと昔から存在していました。 やろうと思えばオンライン処理でも可能です。
ですが全てサマリー管理で業務が動いているのならばアリでしょうが
ヒストリを厳重管理している業務では、こういう処理が危険なのは間違いありません。
ですから起算日指定の取引だって銀行員の一部の人しか出来ません。通常そのような対応も無いものとして扱います。
==========================================
投稿処理前プレビュー確認後書込処理検証処理前反映可否確認処理後……
24時間運転は難しくない (スコア:1)
ものがあって、24時間の間のどこかに管理線区全体で列車が運転していない
時間帯が必要というものがありました。
しかし、今の殆どの運行管理システムはダイヤ切替時のまたがり列車についても
処理できるように実装されていますので、24時間運行はそんなに難しい話では
ありません
#COSMOSがそうなっているかどうかは詳しくしらない
前日ダイヤにしかなくて当日ダイヤに存在しない列車があると、GD(ダイヤ表示
画面)上には特別なマークをつけたりして、前日列車を引き続き扱えるように
しています。
このあたりの仕様は国鉄時代からずっと練られてきただけあって、かなり枯れてます。
Re:つまり (スコア:1, 参考になる)
http://oshiete1.goo.ne.jp/qa276202.html [goo.ne.jp]
Re:齟齬 (スコア:1, オフトピック)
Re:齟齬 (スコア:1, オフトピック)
Re:齟齬/そご(オフトピ:-1) (スコア:0, オフトピック)
難しい漢字の中では使用頻度は高い方かと。
「[名](スル)物事がうまくかみ合わないこと。食い違うこと。ゆきちがい。
「両者の意見に―をきたす」「計画が―する」」
#コピペしてググればでてきます