Japanese subtitles

← Reducer Code

Get Embed Code
2 Languages

Showing Revision 1 created 03/11/2014 by Fran Ontanaya.

  1. リデューサのコードを見ていきましょう
  2. まず変数を初期化します
  3. salesTotal は途中の合計で 初期値はゼロ
  4. oldKey の初期値は None です
  5. 標準入力から読み込み マッパーが処理した
  6. 出力を1行ずつ受け取ります
  7. この例では1行の内容は
  8. 店舗名、タブ、金額です
  9. 改行コードを取り除き タブで区切られた
  10. キーと値を分けます
  11. 2つの配列すなわちデータが得られます
  12. もし行にその2項目がない場合は
    その行をスキップします
  13. しかしそれは実際にはありません
  14. マッパーが必ずこの形式で出力するからです
  15. 明確にするために2つの配列を
  16. 変数に入れます thisKey は店舗名で
  17. thisSale は金額です ここで確認することは
  18. キーが前の行から変更したかどうかです
  19. oldKey を比較して一致しなければ
  20. それは新しいキーの最初の行です
  21. 一致すれば 前の行と
  22. 同じキーです この if文が真であれば
  23. その行でキーが変更しています この例では
  24. マイアミからニューヨークに変わる行です
  25. 新しいキーのある行であれば
  26. 店舗名、タブ、合計を書き出します
  27. そして salesTotal をゼロにリセットします
  28. それぞれ行の処理をする時は
  29. oldKey には常に現在の行のキーが入り
  30. その行の金額が途中集計に加算されます
  31. そしてループで戻り 次の行を処理します
  32. やがて全部のデータを処理すると
  33. ループから抜けますが そこで終わりでしょうか?