$30 off During Our Annual Pro Sale. View Details »

SREはサイバネティクスの夢をみるか? / Do SREs Dream of Cybernet...

SREはサイバネティクスの夢をみるか? / Do SREs Dream of Cybernetics?

SREはサイバネティクスの夢を
みるか?
ークラウドにおけるテレメトリー技術の
博士論文とその後

情報処理学会 第18回 インターネットと運用技術シンポジウム 招待講演
坪内 佑樹 (@yuuk1t) さくらインターネット研究所

1948年初版のウィーナー著『サイバネティックス』には,制御できない変量と調節できる変量があるとき,制御できない変量の過去から現在までの値に基づいて調節可能な変量を適切に定め,われわれにとって最も都合のよい状況をもたらしたいという望みを実現する方法がCyberneticsであると記されています.現代のクラウドにおけるシステム運用の最先端であるSRE(Site Reliability Engineering)の深化を通じて,私はこの望みの実現を今も探究し続けています.本講演では,その探究の中核である「テレメトリー」,すなわちシステムの状態に関する変量を計測する技術を基軸とした私の博士論文とその後の研究を紹介します.具体的には,テレメトリーデータ量の増大がもたらす副作用,AIによる運用自動化,そしてAIスーパーコンピュータそのものを支えるテレメトリー技術について論じます.加えて,9年前のIOTS2016で招待講演を務めさせていただいた後,エンジニアから研究者へと転向し,博士号を取得するまでの道中での思索についても交えたいと思います.

Avatar for Yuuki Tsubouchi (yuuk1)

Yuuki Tsubouchi (yuuk1)

December 12, 2025
Tweet

More Decks by Yuuki Tsubouchi (yuuk1)

Other Decks in Research

Transcript

  1. 坪内 佑樹 (@yuuk1t)   さくらインターネット研究所 SREはサイバネティクスの夢を みるか? ークラウドにおけるテレメトリー技術の 博 士

    論 文 とその後 情報処理学会 第18回 インターネットと運 用 技術シンポジウム 招待講演 
  2. 2013 2019 2020 2025 ݱࡏ Monitoring SaaS SRE さくら インターネット

    研究所 はてな 京都 大 学 大 学院 情報学研究科 博 士 後期課程 博 士 (情報学) 取得 AIOps AI Supercomputer eBPF 坪内 佑樹 大 阪 大 学 大 学院 情報科学 研究科 (中途退学) 2
  3. IOT研究会との関わり ʔ೥ ӡӦҕһ ೥ *054ট଴ߨԋ ೥ ೥ *14+0/&*05ݚڀձਪન *054࿦จൃද ೥

    *054༏ल࿦จ৆ɺ༏लϓϨθϯςʔγϣϯ৆ɺاۀף৆ ೥ *054༏ल࿦จ৆ ಉ೥ ࢁԼه೦ݚڀ৆ ೥ͿΓͷট଴ߨԋ ೥ *054࿦จൃද 3
  4. ソフトウェアエンジニアコミュニティでの活動 2020 基調講演 2022 2023 AIOps 研究録 SRE論 文 への招待

    2024 工 学として のSRE再訪 Best Speaker SREの技術 トレンド 2025 とあるSRE の博 士 「過 程」 4 IUUQTTSFOFYUPSH
  5.  5 アジェンダ    はじめに 工 学 としての

    SRE 博 士 論 文  まとめ  SREのため のBlack box as a Black box 2" 2" 2"
  6.  7    はじめに 工 学 としての SRE

    博 士 論 文  まとめ  1. はじめに  SREのため のBlack box as a Black box
  7. サイバネティクスの 目 的 ΘΕΘΕͷঢ়گʹؔ͢Δೋͭͷมྔ͕͋Δ΋ͷͱ͠ ͯɺͦͷҰํ͸ΘΕΘΕʹ͸੍ޚͰ͖ͳ͍΋ͷɺଞ ͷҰํ͸ΘΕΘΕʹௐઅͰ͖Δ΋ͷͰ͋Δͱ͠· ͠ΐ͏ɻͦͷͱ੍͖ޚͰ͖ͳ͍มྔͷաڈ͔Βݱࡏ ʹ͍ͨΔ·Ͱͷ஋ʹ΋ͱ͍ͮͯɺௐઅͰ͖Δมྔͷ ஋Λద౰ʹఆΊɺΘΕΘΕʹ࠷΋ͭ͝͏ͷΑ͍ঢ় گΛ΋ͨΒ͍ͤͨͱ͍͏๬Έ͕΋ͨΕ·͢ɻͦΕΛ

    ୡ੒͢Δํ๏͕$ZCFSOFUJDTʹ΄͔ͳΒͳ͍ͷͰ͢ɻ ϊʔόʔτɾ΢Οʔφʔஶɼ”αΠόωςΟοΫε ――ಈ෺ͱػցʹ͓͚Δ੍ޚͱ௨৴”ɼୈ̎൛ ؠ೾จݿ 2011೥ ೔ຊޠ൛ લॻ͖ΑΓҾ༻ ͜ͷߟ͑ํ͕ඇৗʹ໘നͯ͘ɺ࣮͸͜Ε͸ΤϯδχΞϦϯάͷ໨తɺ͋Δ ͍͸ςΫϊϩδʔͷ໨తΛޠ͍ͬͯΔͱ΋ݴ͑Δ͔΋͠Ε·ͤΜɻ ※ ౻Ҫ ௚ܟɼ”ݱ࣮ͱ͸ʁɹ೴ͱҙࣝͱςΫϊϩδʔͷະདྷ”, ϋϠΧϫ৽ॻ, 2023೥ 11
  8. サイバネティクスのフィードバックループ ੍ޚର৅ ૢ࡞ྔ  ʢௐઅͰ͖Δ มྔʣ u(t) ʢ࠷΋ͭ͝͏ ͷΑ͍ঢ়گʣ ໨ඪ஋r(t)

    P(s) − ʢγεςϜʣ ग़ྗy(t) ηϯαܭଌ H(s) ʢݱࡏͷঢ়گʣ ੍ޚث C(s) ؀ڥɾ֎ཚω(t) ภࠩ e(t) ʢ੍ޚͰ͖ͳ͍ มྔʣ ைͷྲྀΕ ଩ͷ֯౓ ߤ࿏ʹԊ͏ ધ௕  $ZCFSOFUJDTͷޠݯͰ͋Δ଩औΓͷྫ ଩ 
  9. サイバネティクスのフィードバックループ ੍ޚର৅ ૢ࡞ྔ  ʢௐઅͰ͖Δ มྔʣ u(t) ʢ࠷΋ͭ͝͏ ͷΑ͍ঢ়گʣ ໨ඪ஋r(t)

    P(s) − ʢγεςϜʣ ग़ྗy(t) ηϯαܭଌ H(s) ʢݱࡏͷঢ়گʣ ੍ޚث C(s) ؀ڥɾ֎ཚd(t) ภࠩ e(t) ʢ੍ޚͰ͖ͳ͍ มྔʣ ைͷྲྀΕ ଩ͷ֯౓ ߤ࿏ʹԊ͏ ધ௕ ௨৴ͱ੍ޚͷཧ࿦Λੜ෺΍ࣾձγεςϜʹ·Ͱ ֦ு͢ΔࢼΈ͕αΠόωςΟΫεͷߩݙʢͱཧղ͍ͯ͠Δʣ 
  10. サイバネティクスの魅 力 ۙ୅Պֶɾ޻ֶ #MBDLCPY 8IJUFCPY ղੳ [1] ౻Ҫ ௚ܟɼ”ݱ࣮ͱ͸ʁɹ೴ͱҙࣝͱςΫϊϩδʔͷະདྷ”, ϋϠΧϫ৽ॻ,

    2023೥ ΢Οʔφʔ͸ɺ੍ޚͰ͖Δੈքͱ੍ޚͰ͖ͳ͍ੈքʹ෼͚ ΒΕΔͱߟ͍͑ͯͨ͜ͱ͕࢕͑Δ ʢͦͷڥքΛ΢Οʔφʔք໘ͱҴݟઌੜ͸໊෇͚ΒΕͨʣ αΠόωςΟΫε #MBDLCPY #MBDLCPY [1] #MBDLCPYBT B#MBDLCPY 14
  11. サイバネティクスの魅 力 ΢Οʔφʔ͸ɺ੍ޚͰ͖Δੈքͱ੍ޚͰ͖ͳ͍ੈքʹ෼͚ ΒΕΔͱߟ͍͑ͯͨ͜ͱ͕࢕͑Δ ʢͦͷڥքΛ΢Οʔφʔք໘ͱҴݟઌੜ͸໊෇͚ΒΕͨʣ ۙ୅Պֶɾ޻ֶ #MBDLCPY 8IJUFCPY ղੳ αΠόωςΟΫε

    #MBDLCPY #MBDLCPY [1] ౻Ҫ ௚ܟɼ”ݱ࣮ͱ͸ʁɹ೴ͱҙࣝͱςΫϊϩδʔͷະདྷ”, ϋϠΧϫ৽ॻ, 2023೥ [1] #MBDLCPYBT B#MBDLCPY ݱ୅ͷෳࡶੑ΁ཱͪ޲͔͏ͨΊͷώϯτʹͳΔͷͰ͸ͳ͍͔ʁ 15
  12. 本講演のテーマ:Black box as a Black box 43&͸αΠόωςΟΫεͷ ເΛΈΔ͔ʁ ͱ͍͏Α͏ͳɺത࢜࿦จʹॻ͚ͳ͍಺༰Λओʹ͓࿩͠·͢ɻ 43&͸ະ஌Λະ஌ͷ··ѻ͑Δ͔ʁ

    ᶃ 43&Λٞ࿦ͷ౔୆ʹ ͋͛Δ ӡ༻ٕज़Λ ٕ͔ܳΒ޻ֶ΁ #MBDLCPYBTB#MBDL CPYͷ୳ڀ ಓ۩ཱͯͱͯ͠ͷ αΠόωςΟΫε ᶄ ത࢜࿦จ ͱͷ઀ଓ ࣗ਎ͰखΛಈ͔ͨ͠ ͜ͱͱͷؔ܎ੑ ᶅ 16
  13.  17    はじめに 工 学 としての SRE

    博 士 論 文  まとめ  2. 工 学としてのSRE  SREのため のBlack box as a Black box
  14. l΢Σ ブ Φ ペ Ϩʔγϣϯ͸ٕܳ で ͋ΓɺՊֶ で ͸ͳ͍z [1]

    John AllspawɺJesse Robbinsฤɺ֯ ੐య༁,΢ΣϒΦϖϨʔγϣϯʔʔαΠτӡ༻؅ཧͷ࣮ફς ΫχοΫ,ΦϥΠϦʔδϟύϯ [1]ΑΓҾ༻ 
  15. SREBook (原著 2016年発刊) l<#VS>ͷಋೖ෦ で ɺγεςϜ؅ཧ͸ώϡʔϚϯίϯ ピ ϡʔλΤϯ ジ χΞϦϯ

    グ ͷܗͷҰͭ だ ͱࢲ͸ओு͠· ͨ͠ɻϨ ビ ϡʔΞͷதʹ͸ʮ· だ ͦΕ͸Τϯ ジ χΞϦϯ グ ͱݺ べ Δ΄ ど ͷஈ֊ʹ͸དྷ͍ͯͳ͍ʯͱڧ͘൱ఆ͢Δ ਓ΋͍·ͨ͠ɻ͜ͷ࣌఺ で ͸ɺࢲ͸͜ͷ෼໺͸ݟࣦΘΕ ͯɺಠࣗͷຐज़ࢣతͳจԽʹͱΒΘΕɺਐΉ べ ͖ํ޲ が ݟ͑ͳ͘ͳ͍ͬͯΔͱײ じ ͍ͯ·ͨ͠ɻl Mark Burgess ཧ࿦෺ཧֶͷPh.D.ɺChef/PuppetͳͲͷલ਎ ͷCFEngine࡞ऀɻ ίϯϐϡʔλ໔Ӹֶ΍ϓϩϛεཧ࿦ͷఏএऀɻ Network and system administration is a branch of *engineering* that concerns the operational management of human–computer systems. [Bur99]: “Principles of Network and System Administration”, 1999 ΑΓҾ༻ ※1 Betsy Beyer [΄͔] ฤ ; ۄ઒ཽ࢘༁, "SREαΠτϦϥΠΞϏϦςΟΤϯδχΞϦϯά : Googleͷ৴པੑΛࢧ͑ΔΤϯδχΞϦϯάνʔϜ”, ΦϥΠϦʔɾδϟύϯ, 2016೥. ※1 
  16. ɾ1987೥͔Β͸͡·ͬͨγεςϜ؅ཧʹؔ͢Δࠃࡍձٞ ɾ2022೥ʹUSENIX SREcon΁౷߹͞ΕΔ USENIX LISA “γεςϜ؅ཧ͸ίϯϐϡʔςΟϯάͷଞͷଟ͘ͷ෼໺ͱॏෳ͍ͯ͠Δ ͨΊɺֶज़քͰ͸Ұൠతʹ࿬໾ͱͯ͠๨ΕΒΕ͍ͯΔɻ”ʢ༁ʣ ※2 Mark Burgess,

    Computer Immunology, USENIX LISA 1998. USENIX board: “͍΍ɺզʑ͸ֶऀͩ͠ɺγεςϜ؅ཧʹ͸Պֶతͳ͜ͱ ΋ݚڀతͳ͜ͱ΋໘ന͍͜ͱ΋Կ΋ͳ͍ɻ”ʢ༁ʣ ※1 Thomas Limoncelli, “LISA made LISA obsolete (That's a compliment!)”, 2022. https://www.usenix.org/publications/loginonline/ lisa-made-lisa-obsolete-thats-compliment 
  17. 信頼性 工 学の歴史 ೥୅ʙ [Saleh+, 2006] Highlights from the early

    (and pre-) history of reliability engineering [ࢁຊ+ 2021] ֬཰ɾ౷ܭ͔Β࢝ΊΔ ΤϯδχΞͷͨΊͷ৴པੑ޻ֶ- ਎ۙͳނো͔ΒӉ஦։ൃ·Ͱ -,ίϩφࣾ ೥୅ʙ ϋʔυ΢ΣΞ ιϑτ΢ΣΞ ೥୅ʙ Πϯλʔωοτ ೥୅ʙ Ϋϥ΢υʹؔ࿈͢Δߏ଄෺ͷΈΛબ୒ Ϋϥ΢υ ػثΛ෺ཧతʹೲ඼ ނোͤͣ͞ʹ௕࣋ͪͤ͞Δ ιʔείʔυɾ࣮ߦϑΝΠϧɺ ·ͨ͸ɺΠϯετʔϧ͞Εͨί ϯϐϡʔλ͝ͱೲ඼ ୯ҰͷڊେωοτϫʔΫΛڞ༗ ஗Ԇɺ఻ૹޡΓɺϊʔυނো ͳͲΛલఏͱ͢Δϓϩτίϧ ࣄۀऀʹΑΓγεςϜΛूத ؅ཧɾৗ࣌Քಇɻར༻ऀ͸Π ϯλʔωοτܦ༝Ͱར༻ ৴པੑͷ௿͍ίϯϙʔωϯτ܈Λ ౔୆ʹ৴པੑͷߴ͍γεςϜઃܭ ఏڙܗଶ ৴པੑͷߟ͑ํ ίϯϙʔωϯτͱͦͷ૊Έ߹Θ ͤͷग़ྗͷͦΕͧΕΛࣄલ֬ೝ 
  18. ίϯϙʔωϯτͱͦͷ૊Έ߹Θ ͤͷग़ྗͷͦΕͧΕΛࣄલ֬ೝ 信頼性 工 学の歴史 ೥୅ʙ [Saleh+, 2006] Highlights from

    the early (and pre-) history of reliability engineering [ࢁຊ+ 2021] ֬཰ɾ౷ܭ͔Β࢝ΊΔ ΤϯδχΞͷͨΊͷ৴པੑ޻ֶ- ਎ۙͳނো͔ΒӉ஦։ൃ·Ͱ -,ίϩφࣾ ೥୅ʙ ϋʔυ΢ΣΞ ιϑτ΢ΣΞ ೥୅ʙ Πϯλʔωοτ ೥୅ʙ Ϋϥ΢υʹؔ࿈͢Δߏ଄෺ͷΈΛબ୒ Ϋϥ΢υ ػثΛ෺ཧతʹೲ඼ ނোͤͣ͞ʹ௕࣋ͪͤ͞Δ ιʔείʔυɾ࣮ߦϑΝΠϧɺ ·ͨ͸ɺΠϯετʔϧ͞Εͨί ϯϐϡʔλ͝ͱೲ඼ ୯ҰͷڊେωοτϫʔΫΛڞ༗ ஗Ԇɺ఻ૹޡΓɺϊʔυނো ͳͲΛલఏͱ͢Δϓϩτίϧ ࣄۀऀʹΑΓγεςϜΛूத ؅ཧɾৗ࣌Քಇɻར༻ऀ͸Π ϯλʔωοτܦ༝Ͱར༻ ৴པੑͷ௿͍ίϯϙʔωϯτ܈Λ ౔୆ʹ৴པੑͷߴ͍γεςϜઃܭ ఏڙܗଶ ৴པੑͷߟ͑ํ ෳ੡඼͔Β ৗ࣌ՔಇͷҰ఺΋ͷ αʔϏεࢦ޲΁ 
  19. 信頼性 工 学の歴史 ೥୅ʙ [Saleh+, 2006] Highlights from the early

    (and pre-) history of reliability engineering [ࢁຊ+ 2021] ֬཰ɾ౷ܭ͔Β࢝ΊΔ ΤϯδχΞͷͨΊͷ৴པੑ޻ֶ- ਎ۙͳނো͔ΒӉ஦։ൃ·Ͱ -,ίϩφࣾ ೥୅ʙ ϋʔυ΢ΣΞ ιϑτ΢ΣΞ ೥୅ʙ Πϯλʔωοτ ೥୅ʙ Ϋϥ΢υʹؔ࿈͢Δߏ଄෺ͷΈΛબ୒ Ϋϥ΢υ ػثΛ෺ཧతʹೲ඼ ނোͤͣ͞ʹ௕࣋ͪͤ͞Δ ιʔείʔυɾ࣮ߦϑΝΠϧɺ ·ͨ͸ɺΠϯετʔϧ͞Εͨί ϯϐϡʔλ͝ͱೲ඼ ίϯϙʔωϯτͱͦͷ૊Έ߹Θ ͤͷग़ྗͷͦΕͧΕΛࣄલ֬ೝ ୯ҰͷڊେωοτϫʔΫΛڞ༗ ஗Ԇɺ఻ૹޡΓɺϊʔυނো ͳͲΛલఏͱ͢Δϓϩτίϧ ࣄۀऀʹΑΓγεςϜΛूத ؅ཧɾৗ࣌Քಇɻར༻ऀ͸Π ϯλʔωοτܦ༝Ͱར༻ ৴པੑͷ௿͍ίϯϙʔωϯτ܈Λ ౔୆ʹ৴པੑͷߴ͍γεςϜઃܭ ఏڙܗଶ ৴པੑͷߟ͑ํ ɾ෦඼͕ؒ૬ޓ࡞༻͢ ΔγεςϜ΁ ɾ෦඼ͷނোΛલఏͱ ͨ͠ઃܭͱอक΁ 
  20. 運 用 のライフサイクルの変遷 [1] 10+ Deploys Per Day: Dev and

    Ops Cooperation at Flickr https://www.slideshare.net/jallspaw/10-deploys- per-day-dev-and-ops-cooperation-at-flickr ։ൃ ӡ༻ɾอक ೲ඼ Dev → Ops αʔϏεࢦ޲ ΁Ҡߦ [1] ։ൃ ӡ༻ DevOps ϑΣʔζΛ෼ ཭ͤͣɺৗʹ ϦϦʔε ೲ඼લޙͰ ϑΣʔζΛ෼཭ 26
  21. 運 用 のライフサイクルの変遷 αʔϏεࢦ޲ ΁Ҡߦ [1] ։ൃ ӡ༻ɾอक ೲ඼ ։ൃ

    ӡ༻ Dev → Ops DevOps ϑΣʔζΛ෼ ཭ͤͣɺৗʹ ϦϦʔε ೲ඼લޙͰ ϑΣʔζΛ෼཭ [Beyer+, 2018] The Site Reliability Workbook: Practical Ways to Implement SRE ҰํͰɺมߋස౓͕ߴ͍͜ͱ͔Βɺมߋ͕ো֐ͷҾ͖ۚͱͳΔ (PPHMFͰ͸ো֐ͷҾ͖ۚͷ͏ͪ͸มߋʹΑΔ΋ͷ [Beyer+, 2018] 27
  22. 変更による障害発 生 を前提にしたい ཱ྆͢Δʹ͸ ߴස౓ͷมߋ ߴ৴པੑ [Beyer+, 2016] Site Reliability

    Engineering: How Google Runs Production Systems ɾ׬શͳ৴པੑ͸໨ࢦ͞ͳ͍ ɾ৴པੑͷࢦඪͱͦͷ໨ඪ஋Λઃఆ ɾ໨ඪ஋ΛԼݶͱͯ͠ɺ։ൃऀ͸ੵۃతʹมߋՄೳͱ͢Δ ɾʮ৴པੑʯΛ੍ޚ͠ɺมߋ଎౓Λ࠷େԽ͢Δ Site Reliability Engineering (SRE) [Beyer+, 2016] 28
  23. SREにおける信頼性の定義 γεςϜ͕ٻΊΒΕΔػೳΛɼఆΊΒΕͨ৚݅ͷԼͰఆΊΒΕͨظؒ ʹΘͨΓো֐Λى͜͢͜ͱͳ࣮͘ߦ͢Δ֬཰ <>10`$POOPS ",MFZOFS l1SBDUJDBM3FMJBCJMJUZ&OHJOFFSJOHz 8JMFZ1VCMJTIJOH  <> ৴པੑ޻ֶʹ͓͚Δఆٛͱಉ͡

    4-*ʢ4FSWJDF-FWFM*OEJDBUPSʣ 4-0ʢ4FSWJDF-FWFM0CKFDUJWFʣ αʔϏεͷৼΔ෣͍ͷ͋Δଆ໘ʢՄ༻ੑɺϨΠ ςϯγɺεϧʔϓοτͳͲʣΛఆྔԽͨ͠ई౓ "HH t∈W (SLI(t)) ≥ Target SLI = |Egood | |Eall | × 100[ % ] 4-*ʹର͢Δᮢ஋ͱɺͦΕΛܭଌ͢Δ࣌ؒ΢Ο ϯυ΢ͷ૊Έ߹Θͤ 29
  24. 2,3)信頼性制御 4ZTUFN %ZOBNJDT · R(t) = −k ⋅ ω(t) ֎ཚʹΑΔྼԽ

    + g(u(t)) ΦϖϨʔγϣϯհೖ ঢ়ଶํఔࣜ ֎ཚ ૢ࡞ 4VCKFDU UP ∫ R(t)dt ≥ Rtarget (4-0੍໿) 0CKFDUJWF .BYJNJ[Fu(t) ∫ X(t)dt ग़ྗ ํఔࣜ 4-0ᮢ஋ ։ൃ଎౓΍ίετ 4-* 35
  25. なにが変わったのか? ͋Δ΂͖ঢ়ଶ ࠓͷঢ়ଶ ࠩ෼ ԿΛ͢΂͖͔ ɾaction 1 ɾaction 2 ɾ…

    ࠓͷঢ়ଶ खஈࢦ޲ ໨తࢦ޲ ओ؍త શମ၆ᛌ ٬؍త ہॴࢹ఺ ٕܳత ޻ֶత [1] ”։ൃऀͷͨΊͷγεςϜζΤϯδχΞϦϯάಋೖͷનΊ”, ୈ1.1൛, IPA, 2017೥. [1] [1] 40
  26. 技術と 工 学 [1] ଜ্ ཅҰ࿠, ”޻ֶͷྺ࢙ͱٕज़ͷྙཧ”, ؠ೾ॻళ, 2006೥. lٕज़ͱ͸ɼਓ͕ؒͦͷੜΛશ͏͢ΔͨΊʹɼࣗΒͷ໨తҙࣝʹج

    ͍ͮͯɼ໨ඪͷୡ੒Λ໨ࢦͯ͠Ҋग़͠ɼ·ͨ࢖༻͢ΔʮΘ͟ʯͷ૯ ମͱͰ΋ఆٛ͢Ε͹Α͍ͩΖ͏z l޻ֶͱ͍͏ݴ༿͸ɼͦ͏ٕͨ͠ज़Λֶ໰Խͨ͠΋ͷͱఆٛͰ͖Δz  ݴޠͳͲʹΑΓ޿͘఻ୡՄೳͳܗʹ੔උ͞Ε͍ͯΔ  ઐ໳ྖҬʹΑͬͯମܥԽ͞Εͨʮ஌ࣝʯͱ͍͏ܗଶΛͱΔ [1] ΑΓҾ༻ 41
  27.  43 3. SREのためのBlack box as a Black box 

      はじめに 工 学 としての SRE 博 士 論 文  まとめ  SREのため のBlack box as a Black box 
  28. SREモデルの3つのブラックボックス ਅͷར༻ऀମݧ ୅ཧࢦඪ4-*ɹ ࣸ૾ؔ਺f γεςϜ  ͷෳࡶܥ S u(t) 𝒮

    ,ω R(t + 1) ೚ҙͷʮมߋʯΛՃ͑ͨ࣌ʹɺγες Ϝͷ৴པੑ͕௿Լ͢Δ͔Ͳ͏͔ɻ f ֎ཚ  ͷ෼෍ ω(t) ͍ͭɺͲͷΑ͏ͳछྨͷো֐΍ෛՙมಈ ͕ൃੜ͢Δ͔ͱ͍͏֬཰෼෍ɻ ᶃ ᶄ ᶅ Quser (t) R(t) 47
  29. ブラックボックス (1/3)   写像関数 f ৘ใγεςϜ ։ൃӡ༻ऀ ར༻ऀମݧ Quser (t)

    ͸ར༻ऀͷߦಈ૝ఆ΍ɺϏδωε্ͷଛࣦɺ աڈͷΠϯγσϯτͳͲΛ౿·͑ͯ ։ൃӡ༻ऀͷ௚؍Ͱௐઅ͞Εଓ͚Δ f ࣸ૾ؔ਺f ར༻ऀ 4-*R(t) S 48
  30. ブラックボックス (3/3)   外乱 の分布 w(t) ৘ใγεςϜ ֎ཚw(t) S ։ൃӡ༻ऀ

    ར༻ऀ ͍ͭɺͲͷΑ͏ͳछྨͷো֐΍ෛՙมಈ ͕ൃੜ͢Δ͔͸ະ஌ɻ 50
  31. 写像 の掘り下げ: 利 用 者の主観性 f ݱঢ়ͷ43&͸ར༻ऀͷίϯςΩετΛѻ͍͑ͯͳ͍ ۈଵγεςϜͷྫ ࢝ۀͰɺʹग़ۈϘλϯΛԡͦ͏ͱͨ͠ΒγεςϜ͕μ΢ϯ͍ͯͨ͠ ˞࣮຿త޻෉ͱͯ͠ɺ$VTUPNFS6TFS+PVSOFZʢ$6+ʣͳͲ͸͋Δ

    ͦͷϢʔβʔʹͱͬͯ͸ɺαʔϏε΁ͷओ؍త৴པ͕େ͖͘௿Լ͢Δ ʹ΋͔͔ΘΒͣݱঢ়ͷ4-0ͷ࿮૊ΈͰ͸ɺԿ࣌ͷΞΫηεͰ͋ͬͯ΋౳Ձʹ ѻ͏܏޲͕͋Δɻ ˞(PPHMFͷݚڀʹɺϔϏʔϢʔβʔʹΑΔόΠΞεΛߟྀͨ͠.FBOJOHGVM"WBJMBCJMJUZ ͳͲ͸͋Δ ˞ ˞ 52
  32. 利 用 者は利 用 にとどまらなくなる ར༻ऀ ։ൃӡ༻ऀ ৘ใγεςϜ ੡࡞ऀ ར༻ऀ͸ࣗ෼͕ٻΊΔ΋ͷΛ"*ΤʔδΣϯτΛհͯ͠ର࿩

    తɾମݧతʹࣗΒ੡࡞͢Δɻʢ఻౷తͳຽ͔ܳΒ৮ൃʣ %*$0.0*05ηογϣϯͷߨԋͰʮηϧϑΫϥϑτʯͱ͍͏ੈք؍Λఏࣔ <>௶಺༎थ ௽ాതจ l"*࣌୅ʹ޲͚ͨΫϥ΢υʹ͓͚Δ৴པੑΤϯδχΞϦϯάͷະདྷߏ૝z %*$0.0 <> <>܀ྛ݈ଠ࿠ ࡾ୐༔հ দຊ྄հ ͳΊΒ͔ͳγεςϜΛ໨ࢦͯ͠ %*$0.0 <>ͷਤΛ վมͯ͠࡞੒ 54
  33. 現在のアプリケーション開発 Ϋϥ΢υ Πϯλʔωοτ ඪ४Խ͞Εͨ ػೳͱ ΠϯλʔϑΣΠε ඪ४Խࢦ޲ͷੈք ඪ४Խ͞Εͨ ௨৴ϓϩτίϧͱAPI ։ൃӡ༻ऀ

    ཁૉٕज़ ΞϓϦέʔγϣϯ։ൃऀ͸Ϋϥ΢υ্ͷσʔλߏ଄΍ ܭࢉϢχοτ΋ඪ४Խ͞Εͨ΋ͷΛར༻ ΞϓϦέʔγϣϯ ͷܧଓߋ৽ αʔϏε ଟ਺ͷར༻ऀʹڞ௨ʹΈΒΕΔજࡏతͳχʔζΛൃݟ ͠ɺඪ४Խ͞ΕͨػೳͱΠϯλʔϑΣΠεΛఏڙ ඪ४Խ͞Εͨ σʔλߏ଄ ඪ४Խ͞Εͨ ܭࢉϢχοτ 55
  34. 20XX年代のソフトウェア開発クラフト ݸผԽࢦ޲ͷੈք ۭؒͱͷΠϯλϥΫγϣϯ ʢXRʣ Πϯλʔωοτ Ϋϥ΢υ ֶशܕ௨৴ ϓϩτίϧ [Kraska+, SIGMOD2018]

    The Case for Learned Index Structures ֶशܕ σʔλߏ଄ AI AI AI ηϧϑ Ϋϥϑτ αʔϏε ར༻ऀͷજࡏతͳχʔζʹࢸΔ· ͰɺAIͱར༻ऀ͕ػೳͱΠϯλʔ ϑΣΠεΛର࿩తɾମݧతʹ࣮૷ ཁૉٕज़ ΞϓϦέʔγϣϯͷཁٻ ʹ͋Θֶͤͨशܕͷݸผ ࠷దԽ ૬ޓ࡞༻ʹ ΑΔਐԽ [Ma+, EuroSys2022] Multi-Objective Congestion Control [Kraska+, SIGMOD2018] [Ma+, EuroSys2022] e2eͰར༻ऀͷཁٻʹԠͯ͡ ࠷దͳϓϩάϥϜͱϓϩτί ϧ͕ಈత͔ͭదԠతʹมԽ 56
  35. 再魔術化の世界からの 工 学への要求 ୤ຐज़Խʢۙ୅Պֶʣ ຐज़తੈքʢલۙ୅ʣ ࠶ຐज़Խ ࣄલੑ ݸผԽࢤ޲ ඪ४Խࢤ޲ ࣄޙੑ

    ओ؍ੑ ٬؍ੑ ૑ൃੑ ཁૉؐݩ #MBDLCPY BTB#MBDLCPY ੈք͸όϥόϥͷ෦඼Ͱ͸ͳ͘ɺ ޓ͍ʹ৘ใʢϑΟʔυόοΫʣΛ ΍ΓऔΓ͢Δ૬ޓґଘͷωοτ ϫʔΫͰ͋ΔͱΈͳ͢ &OE UP &OE 60
  36. Ironies of Automation [Bainbridge, Pergamon1983] Ironies of Automation. Analysis, Design

    and Evaluation of Man–machine Systems [Bainbridge, Pergamon1983] ੍ޚγεςϜ͕ߴ౓ʹͳΕ͹ͳ Δ΄ͲɺਓؒͷΦϖϨʔλʔͷ ߩݙ͕ΑΓॏཁʹͳΔɻ ͔͠͠ਓ͕ؒͦͷ໾ׂΛՌͨ ͢ೳྗ͸௿Լ͍ͯ͘͠ɻ δϨϯϚ ௒஌ೳ͕શͯͷӡ༻ΛࣗಈԽ͢Δ͜ͱΛ҆௚ʹ͸ظ଴͕ͪ͠ Ͱ͋Δɻ͔͠͠ɺݱߦͷAIͷԆ௕ઢ্ͷൣғͰ͸ͱɺʮࣗಈ Խͷൽ೑ʯ͔Β͸ಀΕΒΕͳ͍Մೳੑ͕͋Δɻ 61
  37. なめらかなシステム 64  ར༻ऀͱ৘ใγεςϜɺ։ൃӡ༻ऀ͔ΒͳΔ૯ମͱͯ͠ͷγεςϜͰ͋Δ  ར༻ऀ͸ɺ৘ใγεςϜͱͷܧଓతͳίϛϡχέʔγϣϯΛ௨ͯ͡ɺίϯςΩετ ʢબ޷΍໨తʣ͕ࣄޙతʹܗ੒͞ΕΔ͜ͱ ଟ༷ੑͱ ओ؍ੑΛ ߟྀ

    ӡ༻ۀ຿ͷ ଟ༷ੑ Ϣʔβʔ ։ൃӡ༻ऀ ৘ใγεςϜ <>܀ྛ݈ଠ࿠ ࡾ୐༔հ দຊ྄հ ͳΊΒ͔ͳγεςϜΛ໨ࢦͯ͠ %*$0.0 <>ͷਤΛվมͯ͠࡞੒
  38. AIエージェントネットワーク <>ࡾ୐༔հ zͳΊΒ͔ͳγεςϜͱӡ༻ҡ࣋ͷऴΘΒ͵ະདྷz %*$0.0IUUQT TQFBLFSEFDLDPNNPOPDISPNFHBOFEJDPNPDPIFSFOUMZ fi UUBCMFTZTUFN TMJEF User Community

    Information System Developer User Community Information System Developer <> ଟ਺ͷΤʔδΣϯτΛഔհͱͯ͠ɺωοτϫʔΫΛுΓ८ΒͤΔ ӡ༻ऀͷܦݧʹ༝ དྷ͢Δ௚؍Λྲྀ௨ ར༻ऀͷະදݱͷ ओ؍΍ײ৘Λྲྀ௨ ςϨϝτϦʔ৴߸ͷม ԽͳͲͷҙຯ͕ྲྀ௨ ΤʔδΣϯτͱͷίϛϡχέʔγϣϯʹΑͬͯੜ͡ΔίϯςΩετΛྲྀ௨ͤ͞Δ ৘ใγεςϜ ར༻ऀɾ ੡࡞ऀ ։ൃӡ༻ऀ 65
  39. フィードバックの相互流通 User Community Information System Developer User Community Developer ৘ใγεςϜ

    ར༻ऀɾ ੡࡞ऀ ։ൃӡ༻ऀ ӈํ޲ͷϑΟʔυόοΫ ࠨํ޲ͷϑΟʔυόοΫ ݱࡏ͸ɺར༻ऀͱ։ൃӡ༻ऀؒʹ͸ɺΧελϚʔαϙʔτରԠఔ౓ͷ كͳݴޠతίϛϡχέʔγϣϯ͔͠ͳ͍ɻ ͦΕʹରͯ͠ɺར༻ऀͱ։ൃӡ༻ऀؒͷඍࡉͳओ؍৘ใΛϑΟʔυ όοΫͱͯ͠૬ޓྲྀ௨Ͱ͖Δͷ͕ྑ͞Ͱ͋Δɻ 66
  40. SRE視点でなにがうれしいか? User Community Developer User Community Developer ৘ใγεςϜ ར༻ऀɾ ੡࡞ऀ

    ։ൃӡ༻ऀ 4-*4-0͸୭͔͕໌ܾࣔͯ͠ΊΔΘ͚Ͱ͸ͳ͘ɺϑΟʔυόοΫͷ॥؀͔Β ࣗಈతʹௐ੔͞Εଓ͚Δ ᶃมߋ ᶄ֎ཚ ᶅ୭͔͕ෆຬʹײ͡Δ ᶃʙᶅͷ৘ใΛҼՌؔ܎ͷ͋ΔίϯςΩετͱͯ͠ѻ͑Δɻ 68
  41. 巫 女 的運 用 者がやること ؍ଌʢ0CTFSWBCJMJUZʣ ຖ೔࣌ؒΛ͔͚࣮ͯՔಇதͷίʔυΛ୳ࡧ͠ɺϢʔβʔ͕ίʔυΛ࢖༻͢Δ ༷ࢠΛ஫ࢹ͠ɺͦͯ͠ɺҟৗ஋΍޷ح৺ΛͦͦΔΑ͏ͳي੻Λ୳͠ճΔɻ ࣮ݧʢ$IBPT&OHJOFFSJOHʣ <>$BTFZ3PTFOUIBMBOE/PSB+POFT

    $IBPT&OHJOFFSJOH4ZTUFN3FTJMJFODZJO1SBDUJDF 0SFJMMZ  <>$.BKPSTɺ-'POH+POFTɺ(.JSBOEBʮΦϒβʔόϏϦςΟɾΤϯδχΞϦϯάʯ0`3FJMMZ +BQBO <>ΑΓҾ༻ zγεςϜͷऑ఺Λ໌Β͔ʹ͢ΔͨΊͷ࣮ݧͷଅਐ ૝ఆ֎ͷ֎ཚʹΑΔෆՄࢥٞͳ૬ޓ࡞༻ʹରॲ͢Δɻ <>ΑΓҾ༻ ΤʔδΣϯτΛഔհͱͯ͠ɺ޷ح৺͕ܹࢗ͞ΕɺΤϥʔόδΣοτͷൣ ғͰɺ؍ଌͱ࣮ݧΛ܁Γฦͯ͠ɺϝϯλϧϞσϧΛߋ৽͍ͯ͘͠ɻ 70
  42. ࣮ݧͷࣗಈԽ --.ʹΑΔ$IBPT&OHJOFFSJOHͷ࣮ݧϫʔΫϑϩʔࣗಈԽ ར༻ऀߦಈ ϕʔε4-0 ར༻ऀ୯ҐͷΞΫηεස౓Λجʹͨ͠ܭଌ <,JLVUB BS9JW>l$IBPT&BUFS'VMMZ"VUPNBUJOH$IBPT&OHJOFFSJOHXJUI-BSHF-BOHVBHF.PEFMTz <)BVFS /4%*>.FBOJOHGVMBWBJMBCJMJUZ <)BVFS

    /4%*> <,JLVUB BS9JW> ఉࢣɾቭঁͷϝϯλϧϞσϧߋ৽ͷࢧԉ ߴ࣍ͷՄ؍ଌੑ どのように研究につなげていくか? ͜ͷߏ૝͕ະདྷ༧ଌͱͯ͠౰ͨΔ͔౰ͨΒͳ͍͸Ͳ͏Ͱ΋Α͘ɺݚڀ ͷண૝ʹͭͳ͕Ε͹Α͍ɻ ݶఆతʹߏ૝Λ࣮ݱͯ͠ੵΈ্͍͛ͯ͘ 71
  43.  73    はじめに 工 学 としての SRE

    博 士 論 文  まとめ  SREのため のBlack box as a Black box 4. 博 士 論 文 
  44. SREの再魔術化モデルにおける博論の位置づけ ৘ใ γεςϜ ར༻ऀɾ ੡࡞ऀ ։ൃ ӡ༻ऀ User Community Information

    System Developer c System) Prepation (t3) User Community Information System Developer ؍ଌ ৘ใγεςϜ͕ు͖ग़͢๲ େͳੜσʔλͷ؍ଌෛՙΛ ͍͔ʹ௿ݮͤ͞Δ͔ʁ ςϨϝτϦʔ γεςϜ 74
  45. ར༻ऀ Πϯλʔωοτ ςϨϝτϦʔγεςϜ σʔλ఻ૹ テレメトリーワークロードの増 大 ܭࢉࢿݯ ফඅ૿େ σʔλॲཧྔ૿େ •ΞϓϦͷCPU/ϝϞ

    Ϧফඅྔ૿ •ΞϓϦͷॲཧ஗Ԇ૿ •DBͷऔΓࠐΈॲཧෛՙ૿ •DBͷอଘσʔλྔ૿ • ػցֶशͷॲཧ஗Ԇ૿ Ճɾਫ਼౓௿Լ ܭଌ อଘ ෼ੳ 82 ։ൃӡ༻ऀ ৘ใ γεςϜ
  46. ςϨϝτϦʔγεςϜ 目 的:Scaling Telemetry Workloads ܭଌ อଘ ෼ੳ ϫʔΫϩʔυ Φ

    ʛ ό ʛ ϔ ο υ ςϨϝτϦʔϫʔΫϩʔυͷ૿େʹରͯ͠ɺ ޮ཰తʹεέʔϦϯάͤ͞Δ 83 ར༻ऀ Πϯλʔωοτ ։ൃӡ༻ऀ ৘ใ γεςϜ
  47. ܭଌ อଘ ෼ੳ ςϨϝτϦʔγεςϜ σʔλ఻ૹ 貢献:各層ごとの課題を技術的に解決 ܭࢉࢿݯ ফඅ૿େ σʔλॲཧ ྔ૿େ

    ߩݙᶃ ߩݙᶅ ߩݙᶄ 84 ωοτϫʔΫ τϨʔε ϝτϦΫε ར༻ऀ Πϯλʔωοτ ։ൃӡ༻ऀ ৘ใ γεςϜ
  48. ܭଌ อଘ ෼ੳ ςϨϝτϦʔγεςϜ 貢献①:計測 ܭࢉࢿݯ ফඅ૿େ ߩݙᶅ ߩݙᶄ Y.

    Tsubouchi, M. Furukawa, R. Matsumoto, Low Overhead TCP/UDP Socket- based Tracing for Discovering Network Services Dependencies, JIP, 2022. ωοτϫʔΫίʔ ϧάϥϑΛಘΔͨ ΊʹɺeBPFʹΑΔ ௿Φʔόʔϔου ͳܭ૷๏ʹண໨ɻ 85 ར༻ऀ Πϯλʔωοτ ։ൃӡ༻ऀ ৘ใ γεςϜ ߩݙᶃ
  49. ネットワークコールグラフ Ͳ͏΍ͬͯܭଌ͢Δʁ Cloud Load Balancers Database Clusters Web app servers

    Message queues ֤ίϯϙʔωϯτͷݺͼग़ؔ͠܎ Λ஌Γ͍ͨɻ - มߋͷӨڹൣғΛ஌Γ͍ͨɻ - ϦϯΫ୯ҐͷϝτϦΫεΛ஌Γ͍ͨɻ ߩݙᶃ 86
  50. 計装アプローチ Cloud Load Balancers Database Clusters Web app servers Message

    queues Kernel User Proxy Network Stack App NIC Switch ωοτϫʔΫ௨৴ܦ࿏্ͷ͍ͣΕ ͔ʹܭଌ఺Λઃஔ͢Δɻ ߩݙᶃ Χʔωϧͷ্Ґ૚ʢιέοτʣͰͷܭ૷ʹண໨ɻ ରApp: ΞϓϦͷमਖ਼͕ඞཁͳ͍ɻ ରProxy: தܧΦʔόʔϔου͕ͳ͍ɻ ରSwitch: ܭଌෛՙΛΤϯυϗετʹ෼ࢄͰ͖Δɻ 87
  51. ソケット層における計装 手 法 Kernel User Service Agent ετϦʔϛϯά๏ ϑϩʔू໿๏ ϑϩʔूଋ๏ʢఏҊʣ

    ✗ ϝοηʔδ਺૿ՃʹԠ͡ ͯɺϢʔβۭؒ΁ͷܭଌ஋ͷ సૹ਺͕૿Ճɻ ✗ ୹໋ͳϑϩʔ͕૿Ճ͢Δͱɺసૹ σʔλ਺΋૿Ճɻ Ѽઌ͕ಉҰͷϑϩʔΛଋ ͶΔɻ ※ ϑϩʔ = ྆୺ͷΞυϨεͱϙʔτͷ૊͕ಉҰͷ௨৴୯Ґ Queue ܭଌ఺ Kernel User Service Agent ܭଌ఺ ※ ໼ҹ͸σʔλͷྲྀΕΛද͢ ✔ ϑϩʔ͝ͱʹू໿͞Εͨܭଌ஋ ͷΈอଘɻసૹσʔλ਺Λ௿ݮɻ Flow1 Flow2 Flow3 Flow4 Kernel User Service Agent ܭଌ఺ ✔ ୹໋ͳϑϩʔ਺͕ଟ͘ͱ ΋సૹσʔλ਺Λ௿ݮ Bundle 1 Bundle 2 ✔ ܭଌΦʔόʔϔου͕ খ͍͞ ([96,97]) ([27,98]) ߩݙᶃ 88 <>+JO+JO-JO FUBM l.JDSPTDPQF1JOQPJOU1FSGPSNBODF*TTVFTXJUI$BVTBM(SBQITJO.JDSP4FSWJDF&OWJSPONFOUTz*$40$  <>8FBWF4DPQFIUUQTHJUIVCDPNXFBWFXPSLTTDPQF
  52. ソケット層における計装 手 法 Kernel User Service Agent ετϦʔϛϯά๏ ϑϩʔू໿๏ ϑϩʔूଋ๏ʢఏҊʣ

    ✗ ϝοηʔδ਺૿ՃʹԠ͡ ͯɺϢʔβۭؒ΁ͷܭଌ஋ͷ సૹ਺͕૿Ճɻ ✗ ୹໋ͳϑϩʔ͕૿Ճ͢Δͱɺసૹ σʔλ਺΋૿Ճɻ Ѽઌ͕ಉҰͷϑϩʔΛଋ ͶΔɻ ※ ϑϩʔ = ྆୺ͷΞυϨεͱϙʔτͷ૊͕ಉҰͷ௨৴୯Ґ Queue ܭଌ఺ Kernel User Service Agent ܭଌ఺ ※ ໼ҹ͸σʔλͷྲྀΕΛද͢ ✔ ϑϩʔ͝ͱʹू໿͞Εͨܭଌ஋ ͷΈอଘɻసૹσʔλ਺Λ௿ݮɻ Flow1 Flow2 Flow3 Flow4 Kernel User Service Agent ܭଌ఺ ✔ ୹໋ͳϑϩʔ਺͕ଟ͘ͱ ΋సૹσʔλ਺Λ௿ݮ Bundle 1 Bundle 2 ✔ ܭଌΦʔόʔϔου͕ খ͍͞ ([96,97]) ([27,98]) ߩݙᶃ 89 <>'SBODJTDP/FWFT FUBM l#MBDLCPY*OUFSBQQMJDBUJPO5SB ff i D.POJUPSJOHGPS"EBQUJWF$POUBJOFS1MBDFNFOUz4"$ <>%BUBEPH/FUXPSL1FSGPSNBODF.POJUPSJOHIUUQTEPDTEBUBEPHIRDPNOFUXPSL@NPOJUPSJOHQFSGPSNBODF
  53. ソケット層における計装 手 法 Kernel User Service Agent ετϦʔϛϯά๏ ϑϩʔू໿๏ ϑϩʔूଋ๏ʢఏҊʣ

    ✗ ϝοηʔδ਺૿ՃʹԠ͡ ͯɺϢʔβۭؒ΁ͷܭଌ஋ͷ సૹ਺͕૿Ճɻ ✗ ୹໋ͳϑϩʔ͕૿Ճ͢Δͱɺసૹ σʔλ਺΋૿Ճɻ Ѽઌ͕ಉҰͷϑϩʔΛଋ ͶΔɻ ※ ϑϩʔ = ྆୺ͷΞυϨεͱϙʔτͷ૊͕ಉҰͷ௨৴୯Ґ Queue ܭଌ఺ Kernel User Service Agent ܭଌ఺ ※ ໼ҹ͸σʔλͷྲྀΕΛද͢ ✔ ϑϩʔ͝ͱʹू໿͞Εͨܭଌ஋ ͷΈอଘɻసૹσʔλ਺Λ௿ݮɻ Flow1 Flow2 Flow3 Flow4 Kernel User Service Agent ܭଌ఺ ✔ ୹໋ͳϑϩʔ਺͕ଟ͘ͱ ΋సૹσʔλ਺Λ௿ݮ Bundle 1 Bundle 2 ✔ ܭଌΦʔόʔϔου͕ খ͍͞ ([96,97]) ([27,98]) ߩݙᶃ 90
  54. ܭଌ อଘ ෼ੳ ৘ใ γεςϜ ։ൃӡ༻ऀ ར༻ऀ Πϯλʔωοτ ςϨϝτϦʔγεςϜ 貢献②:保存

    ܭࢉࢿݯ ফඅ૿େ ߩݙᶃ ߩݙᶅ ߩݙᶄ ࣌ܥྻσʔλʢϝ τϦΫεʣͷ औΓࠐΈॲཧޮ཰ ޲্ͱ௕ظσʔλ อଘίετͷ௿ݮ Λཱ྆͢Δɻ ௶಺༎थ, ࿬ࡔேਓ, ᖛా݈, দ໦խ޾, খྛོߒ, Ѩ෦ത, দຊ྄հ, HeteroTSDB: ҟछ෼ࢄ KVSؒͷࣗಈ֊૚ԽʹΑΔߴੑೳͳ࣌ܥྻσʔλϕʔε, ৘ใॲཧֶձ࿦จࢽ, 2021೥. 92
  55. ϝτϦΫεͷऔΓࠐΈϫʔΫϩʔυྔ͸ɺ̎ͭͷ࣍ݩʹൺྫ͢Δ ࣌ؒ cpu_seconds{instance=host1,…} memory_total_bytes{instance=host1,…} http_requests_count{instance=host1,…} http_requests_count{instance=host99,…} ߩݙᶄ ᶄ ϝ τ

    Ϧ Ϋ ε ͷ ݸ ਺ ᶃ ղ૾౓ (Ұൠʹ1 ~ 60ඵͷൣғ) cpu_seconds{instance=host1,…} cpu_seconds{instance=host1,mode=user,core_no=1,…} cpu_seconds{instance=host1,mode=system,core_no=1,…} cpu_seconds{instance=host1,mode=user,core_no=2,…} ଟ࣍ݩԽʹΑΔݸ਺૿Ճ ෼ղ 94 メトリクスストレージのワークロード
  56. 95 メトリクスストレージのスケーラビリティ要求 औΓࠐΈॲཧεϧʔϓοτ σʔλอଘྔ ɾਫฏ෼ׂ͞Εͨෳ਺ϊʔυͰͷऔΓࠐΈ ɾϝϞϦ্ͷσʔλߏ଄΁ͷޮ཰తॻ͖ࠐΈ Ұൠతͳղܾ๏ Slack 12M datapoints

    / sec Meta 700M datapoints / min LYCorp 12.5M datapoints / min [19] [32] [112] Slack 12 TB / day ByteDance 10 TB/ day LYCorp 2.7 TB / day Mackerel 460 days Ұൠతͳղܾ๏ σʔλѹॖٕज़΍ ίʔϧυετϨʔδ্Ͱͷ௕ظอଘ ߩݙᶄ [19] [35] [69] [112] <>4VNBO,BSVNVSJ FUBM l5PXBSET0CTFSWBCJMJUZ%BUB.BOBHFNFOUBU4DBMFz 4*(.0%3FDPSE  <>5VPNBT1FMLPOFO FUBMl(PSJMMB"'BTU 4DBMBCMF *O.FNPSZ5JNF4FSJFT%BUBCBTFz 7-%#  <>9VBOIVB4IJ FUBMl#ZUFTFSJFT"O*O.FNPSZ5JNF4FSJFT%BUBCBTFGPS-BSHF4DBMF.POJUPSJOH4ZTUFNTz 4P$$  <>)JSPLJ4BLBNPUP4DBMJOH5JNF4FSJFT%BUBUP*O fi OJUZ",VCFSOFUFT1PXFSFE4PMVUJPOXJUI&OWPZIUUQTTQFBLFSEFDLDPNMZDPSQUFDI@KQTDBMJOH@UTEC@JOJ fi OJUFMZ@XJUI@PTT <>.BDLFSFMIUUQTNBDLFSFMJP
  57. 96 KVSの取り込み効率 ϝϞϦϕʔεKVS ϝϞϦ͸ϥϯμϜΞΫ ηεޮ཰ʹ༏ΕΔͨ ΊɺϋογϡදΛ࠾༻ σΟεΫϕʔεKVS ϝτϦΫε਺͕૿େ͢Δ = KVSͷΩʔ਺͕૿େ͢Δ

    Memory Disk ฏߧ໦ɾεΩο ϓϦετͳͲͷ ιʔτࡁΈߏ଄ ιʔτࡁΈͷͨ ΊσΟεΫΞΫ ηεޮ཰͕ߴ͍ O(logn) ॻ͖ࠐΈ Flush ॻ͖ࠐΈ Memory O(k) σΟεΫ্ʹσʔλΛอ࣋͠ͳ͍ɻ ʢίϛοτϩά΍εφοϓγϣοτΛআ͘ʣ Disk File HBase, Cassandra, … Redis, Valkey, Dragonfly, … ߩݙᶄ ↳ ಺෦ΦϒδΣΫτͷ؅ཧίετ૿େɻྫʣσʔλ௥Ճ࣌ͷΠϯσοΫεࢀরޮ཰
  58. 97 KVSの取り込み効率 ϝϞϦϕʔεKVS ϝϞϦ͸ϥϯμϜΞΫ ηεޮ཰ʹ༏ΕΔͨ ΊɺϋογϡදΛ࠾༻ σΟεΫϕʔεKVS ϝτϦΫε਺͕૿େ͢Δ = KVSͷΩʔ਺͕૿େ͢Δ

    Memory Disk ฏߧ໦ɾεΩο ϓϦετͳͲͷ ιʔτࡁΈߏ଄ ιʔτࡁΈͷͨ ΊσΟεΫΞΫ ηεޮ཰͕ߴ͍ O(logn) ॻ͖ࠐΈ Flush ॻ͖ࠐΈ Memory O(k) σΟεΫ্ʹσʔλΛอ࣋͠ͳ͍ɻ ʢίϛοτϩά΍εφοϓγϣοτΛআ͘ʣ Disk File HBase, Cassandra, … Redis, Valkey, Dragonfly, … ߩݙᶄ ✘ ϝϞϦ͸هԱྔ͋ͨΓͷඅ༻͕େ ͖͍ͨΊɺ௕ظอ࣋ʹ͸ෆ޲͖ɻ ✘ Ωʔ਺͕େ͖͍࣌ʹɺσʔλͷॻ͖ ࠐΈޮ཰͕௿Լ͢Δɻ ↳ ಺෦ΦϒδΣΫτͷ؅ཧίετ૿େɻྫʣσʔλ௥Ճ࣌ͷΠϯσοΫεࢀরޮ཰
  59. 98 提案 手 法 HeteroTSDB Client ϝϞϦϕʔεKVS σΟεΫϕʔεKVS App Flusher

    ௚ۙͷλΠϜελϯϓΛ΋ͭσʔ λ͕֨ೲ͞ΕΔϝϞϦόοϑΝ ϋογϡදʹجͮ͘ߴ଎औΓࠐΈ ݹ͍λΠϜελϯϓΛ΋ͭσʔλ͕ ֨ೲ͞ΕΔσΟεΫετϨʔδ SSD/HDDʹอଘ͢Δ͜ͱʹΑΔ ௕ظอ࣋ίετͷ௿Լ σʔλͷϚΠά Ϩʔγϣϯ ཱ྆ ߩݙᶄ (Redis) (Cassandra)
  60. 99 実験:取り込み処理効率の 比 較 ϗετ਺ʢ1~8ʣ औ Γ ࠐ Έ ε

    ϧ ʛ ϓ ο τ ఏҊख๏ʢHeteroTSDBʣ͕ ϕʔεϥΠϯͷ3.98ഒɻ 420k datapoints/s ੨ɿKairosDB ᒵɿఏҊख๏ Slackࣾͷ12 M/s ͷϫʔΫϩʔυʹஔ ͖׵͑Δͱ - ఏҊख๏͸229ݸ - KairosDB͸915ݸ ͷϗετ਺Λඞཁͱ͢ΔܭࢉʹͳΔɻ ϝτϦΫε਺Λ1Mʹݻఆ ߩݙᶄ
  61. ܭଌ อଘ ෼ੳ ৘ใ γεςϜ ։ൃӡ༻ऀ ར༻ऀ Πϯλʔωοτ ςϨϝτϦʔγεςϜ 貢献③:分析

    ܭࢉࢿݯ ෛՙ૿େ ߩݙᶃ ߩݙᶅ ߩݙᶄ ো֐ʹؔ࿈͠ͳ͍ϝ τϦΫεΛڭࢣͳ͠ ػցֶशͰࣗಈͰ࡟ ݮ͢Δલॲཧ๏Λఏ Ҋ͢Δɻ 100 Y. Tsubouchi and H. Tsuruta, MetricSifter: Feature Reduction of Multivariate Time Series Data for Efficient Fault Localization in Cloud Applications, IEEE Access, 2024.
  62. 101 ϝτϦΫε ։ൃӡ༻ऀ 機械学習による故障特定の 自 動化 ࣗಈނোಛఆ ো֐ݕ஌ ετϨʔδ 2.

    ೖྗ 3. ग़ྗ 1. ىಈ ݪҼΛࣔ͢ϝτϦΫε ͷϥϯΩϯά 1. memory_total_bytes{instance=host4,…} 2. disk_write_io{instance=host4,…} 3. net_transmit_bytes{instance=host1,…} 4. … [94,96,124-136] ظ଴͞ΕΔ࣮ߦ࣌ؒ͸ ਺෼εέʔϧ
  63. 102 ϝτϦΫε 機械学習による故障特定の 自 動化 ࣗಈނোಛఆ ো֐ݕ஌ ετϨʔδ 2. ೖྗ

    3. ग़ྗ 1. ىಈ 1. … 2. … 3. … ػցֶश ɾϝτϦΫεͱࠜຊݪҼͷϖΞΛେྔʹ ؚΉσʔληοτ͕ͳ͍ɻ ɾओʹڭࢣͳֶ͠श͕࠾༻͞ΕΔɻ ɾϝτϦΫε͝ͱʹҟৗ౓Λࢉग़ɻ ɾϝτϦΫεؒͷҟৗ఻ൖΛัଊɻ [94,96,124-136] ϥϯΩϯά ։ൃӡ༻ऀ
  64. 103 ϝτϦΫε ਺͕૿େ ࣗಈނোಛఆ ো֐ݕ஌ ετϨʔδ 2. ೖྗ 3. ग़ྗ

    1. ىಈ ϥϯΩϯά 1. … 2. … 3. … ػցֶश ϝτϦΫε਺ͷ૿େʹΑΓɺਫ਼౓ͱ ࣮ߦ͕࣌ؒ௿Լ͢Δɻ [94,96,124-136] [23,24] ։ൃӡ༻ऀ 機械学習による故障特定の 自 動化
  65. 104 ϝτϦΫε ਺͕૿େ 故障特定における性能低下の問題 ࣗಈނোಛఆ ো֐ݕ஌ ετϨʔδ 2. ೖྗ 3.

    ग़ྗ 1. ىಈ 1. … 2. … 3. … ػցֶश ಛ௃ྔ࡟ݮ ϊΠζͱͳΔϝτϦΫε ΛऔΓআ͘ ϝτϦΫε਺ͷ૿େʹΑΓɺਫ਼౓ͱ ࣮ߦ͕࣌ؒ௿Լ͢Δɻ [23,24] [23,87] [94,96,124-136] ϥϯΩϯά ։ൃӡ༻ऀ
  66. 106 既存の特徴削減とその課題 ҟৗੑʹجͮ͘࡟ݮ ো֐࣌ؒ֎ͷҟৗΛݕ஌͠͏Δɻ ݪҼϝτϦΫεʢ ʣؒͰ͸ྨࣅ͠΍͍ͨ͢ Ίɺޡ࡟আ͕ൃੜ͠͏Δɻ MA ҟৗ͕ແ͍࣌ܥྻΛ࡟আ ૬ؔੑ΍ܗঢ়ྨࣅੑͷߴ͍࣌ܥྻΛ࡟আ

    ৑௕ੑʹجͮ͘࡟ݮ ຊདྷ࡟আ͍ͨ࣌͠ܥྻ ʢِཅੑʣ ʢِӄੑʣ ো֐ظؒ [23,124,131] [87,129,133] Ұ෦ͷϝτϦΫεʹݱΕΔҟৗੑɾ৑௕ੑͷΈΛѻ͏ɻ ہॴత େҬత γεςϜશମͷʮো֐ʯ΁ͷؔ࿈ੑΛଊ͍͑ͨɻ
  67. 107 観察と仮定 Fig. 5.1: Change points in root fault metric.ΑΓҰ෦ൈਮ

    ނোൃੜ࣌ؒ ނোىҼͷมԽ఺͸ ޓ͍ʹ͍ۙ࣌ؒʹݱΕΔ ؍࡯ ہॴతͳಛ௃͔Β େҬతͳো֐Λ ଊ͑Δ มԽ఺͕࣌ؒ࠷΋ภΔൣғ͕ɺো֐ظؒͱͳΔ Ծఆ
  68. 108 ɾຊݚڀͰ͸ɺେҬతͳো֐Λଊ͑Δಛ௃ྔ࡟ݮ๏ΛఏҊͨ͠ɻ ɾఏҊख๏͸࠷ྑͷਖ਼ղ཰Λୡ੒͠ɺEnd-to-endͰͷਫ਼౓ͱ࣮ߦޮ཰Λ޲্ͤͨ͞ɻ 貢献の概要 ख๏ छผ ֶशछผ େҬੑ FluxInfer-AD BIRCH

    K-S test NSigma PairCorr k-Shape HDBS+SBD MetricSifter ҟৗੑ ৑௕ੑ ൒ڭࢣ͋Γ ʢਖ਼ৗظؒͷࢦఆʣ ڭࢣͳ͠ ҟৗੑ ڭࢣͳ͠ ✘ ✘ ✘ ✔ ଊ͑Δಛ௃ มԽ఺ ਖ਼ৗ - ҟৗظؒͷ ϢʔΫϦουڑ཭ ܗঢ়ྨࣅੑ ෼෍ͷมԽɾ֎Ε஋ ϐΞιϯ૬ؔੑ ڭࢣͳ͠ ҟछͷಛ௃ྔ࡟ݮ๏Λఆྔൺֱͨ͠ॳͷݚڀ
  69. 109 提案 手 法:MetricSifter Fig. 5.5: An example of feature

    reduction using the MetricSifter framework. STEP 2: มԽ఺࣌ؒͷ෼෍Λجʹ ηάϝϯτΛ෼ׂ STEP 1: ࣌ܥྻ͝ͱʹɺނো༝དྷͷมԽ఺ ީิΛݕग़ STEP 3: ࠷େີ౓ͷηάϝϯτΛબ୒ IUUQTHJUIVCDPNBJTSFNFUSJDTJGUFS
  70. 110 実験: 実証データ詳細( 大 規模 >100 metrics) -medium SS -large

    SS -small TT -medium TT 184 metrics 1312 383 1349 ಛఆͷނোಛఆ๏ʢRCDʣͷΈ͕ݱ࣮తͳ࣌ؒ಺ʢ3600ඵҎ಺ʣͰॲཧΛऴ͑ͨɻ ଞ͸ɺނোಛఆΞϧΰϦζϜʹฒྻੑ͕ͳ͍ݱ࣮తͳ࣌ؒ಺ʹ׬ྃͤͣɻ ϝτϦΫε਺>1000Ͱ͸ɺ͍ͣΕͷέʔεʹ͓͍ͯ΋ ඇৗʹ௿͍ਫ਼౓ͱͳͬͨɻ
  71. 第四章まとめ: Scaling Telemetry Workloads ςϨϝτϦʔγεςϜ ৘ใγεςϜ ։ൃӡ༻ऀ Ϣʔβʔ Πϯλʔωοτ ܭଌ

    ετϨʔδ ϚΠχϯά Ϧιʔεফඅ Ϧιʔεফඅ ϫʔΫϩʔυͷ૿େ ⾭ ⾭ ߩݙ ᶃ Χʔωϧ಺ωοτϫʔΫϑ ϩʔͷूଋʹΑΔ௿Φʔόʔ ϔουͳܭ૷๏ͷఏҊɻ ߩݙ ᶄ औΓࠐΈޮ཰ͱ௕ظอ࣋Λ ཱ྆ՄೳͳҟछKVSͷ֊૚ ԽΞʔΩςΫνϟͷఏҊɻ ʢैདྷൺ࠷େ3.98ഒͷεϧʔ ϓοτ޲্ʣ ߩݙ ᶅ ো֐ʹؔ࿈͢ΔϝτϦΫε ͷมԽ఺ͷूதੑʹண໨͠ ͨಛ௃࡟ݮ๏ͷఏҊɻ ʢैདྷൺฏۉ+4.5%ͷਫ਼౓޲্ ฏۉ࣮ߦ࣌ؒ45-52%ͷ޲্ʣ ʢCPU࢖༻཰2.2%ҎԼɺRTT Φʔόʔϔου࠷େ6μsʣ 111
  72. 論 文 を何度も書きなおした  ࠃ಺ࠪಡ ෇͖ݚڀձ ࠃࡍձٞ ࠃ಺ δϟʔφϧ ୈҰͷ

    ݚڀ ୈೋͷ ݚڀ ࠃ಺ࠪಡ ෇͖ݚڀձ ࠃࡍձٞ ୈࡾͷ ݚڀ ࠃ಺ࠪಡ ෇͖ݚڀձ ࠃࡍ δϟʔφϧ 3FKFDU ׬શ࡮৽ ׬શ࡮৽ ׬શ࡮৽ ࠃ಺ δϟʔφϧ ࠃ಺ δϟʔφϧ *&&&"DDFTT +PVSOBMPG *OGPSNBUJPO 1SPDFTTJOH ৘ใॲཧֶձ࿦จࢽ *054 *054 *054
  73. 115 博 士 研究の感想 ੒Ռ ͢͹Β͍͠ത࢜࿦จͰ΋ݚڀۀ੷Ͱ΋ܾͯ͠ͳ͍͕ɺ ࣗ෼Β͍͠΋ͷ͕Ͱ͖͕͋ͬͨͱࢥ͑ͨ ָ ͠ ͞

    ‣࿦จΛ௨ͯ͡෼໺τοϓͷਓͷண૝ʹຖ೔৮ΕΒΕΔ ‣ೲಘ͢Δ·ͰऔΓ૊ΊΔ ‣͜Μͳੲʹ͜Μͳ͜ͱ΍͍ͬͯͨͷ͔ʂͱ͍͏஌త޷ح৺ͷຬ଍ ‣F#1'ɺ"*0QTͳͲۀ຿Ͱ͸৮Εʹ͔ٕͬͨ͘ज़Ͱ༡΂Δ ‣গͳ͘ͱ΋ࠃ಺ͳΒ୭΋΍ͬͯͳͦ͞͏ͳ͜ͱΛ΍͍ͬͯΔؾ࣋ ͪʹͳΕΔʢຊ౰͸ੈքͳΒʜ͕Α͍ʣ
  74. 博 士 課程を通じて得られたスキル ଟ૚తͳݴޠࢥߟೳྗ ಠࣗͷઐ໳ٕज़ମܥ ଞͷֶज़෼໺ͱͷ઀ଓೳྗ ݸੑ΍ᅂ޷ʹجͮ͘ಠ૑ੑ ࣗ਎ͷ಺ʹମܥΛ΋ͭײ֮ ۀքࣄ৘΍༻ޠʹґଘ͠ͳ͍ 自身

    の来歴が反映された博論 4DBMJOH 5FMFNFUSZ 8PSLMPBET ֓೦Խ ‣Ұݟόϥόϥͳ΋ ͷΛͭͳ͙ྗ ‣๲େͳ৘ใΛ੔ཧ ͠ฤ੒͢Δྗ ‣ͳʹ͕ྑ͍͔Λධ Ձ͢Δྗ 116
  75. 生 成AI時代における博 士 課程の意義 ஌త࿑ಇʹ͓͚ΔΞ΢τϓο τͷੵΈॏͶ͕ͳ͍ ͜ͱʹΑΔڏແײ ʢ࣮ଘతۭڏײͷҰछ ʣ ੜ੒"*͸จॻ΍ίʔυΛ

    ༰қʹੜ੒Ͱ͖Δ ΁͍ͣΕͭͳ͕Δ͔΋͠Εͳ͍ ࣗ෼ͷ಺ʹମܥΛ̍ຊߏங ͢Δത࢜՝ఔͷମݧʹ͸ҙ ͕ٛ͋ΔͷͰ͸ͳ͍͔ ࣗ෼ͷதͰΞ΢τϓοτΛ ੵΈॏͶଓ͚Δ͜ͱ͕ॏཁ ͱͳΔ 117
  76.  118 5. まとめ    はじめに 工 学

    としての SRE 博 士 論 文  まとめ  SREのため のBlack box as a Black box 
  77. 締めくくりの 言 葉 [1] ࢁా ৊ਓ (ݪஶ), Ξϕ πΧα, “૴ૹͷϑϦʔϨϯʢ10ʣ”,

    খֶؗ, 2023೥. [1]ΑΓҾ༻ ਓྨ͸ුྗͷݪཧΛղ໌͢Δલ͔ΒધΛ࡞Γɺ෩͕ ى͜Δݪཧ΋෼͔Βͳ͍··ൕͰધΛૢΓɺ೾͕ى ͜Δݪཧ΋ཧղ͠ͳ͍··అ๷Λங্͖͛ͨɻ  ਓྨ͸ݹདྷΑΓະ஌Λະ஌ͷ··ѻ͏ೳྗΛ࣋ͬͯ ͍Δɻ  ͦͯͦ͠Ε͸ɺ࠷΋ݪ࢝తͰ࿦ཧతͳߦҝͷੵΈॏ ͶʹΑͬͯੜΈग़͞ΕΔɻ  z؍ଌzͩΑɻ [1]ͷදࢴΑΓసࡌ 125
  78. 研究概要: Scaling Telemetry Workloads in Cloud Applications എܠͱ໨త ՝୊ ߩݙ

    1. Ϋϥ΢υΞϓϦέʔγϣϯͷςϨϝτϦʔ 2. ςϨϝτϦʔϫʔΫϩʔυͷ૿େ 3. ςϨϝτϦʔϫʔΫϩʔυεέʔϦϯά 1. ܭଌɿܭଌॲཧΦʔόʔϔουͷ૿େ 2. ετϨʔδɿऔΓࠐΈσʔλྔͷ૿େͱ௕ظอଘ 3. ϚΠχϯάɿނোಛఆͷਫ਼౓ɾ࣮ߦޮ཰ͷ௿Լ 1. ୹໋ͳωοτϫʔΫ௨৴͕૿େ͢ΔͱɺैདྷͷܭଌॲཧͰ͸ɺܭଌݩͷOS Χʔωϧ͔Βͷసૹॲཧίετ͕ߴ͍ɻ ϝτϦΫε਺ͷ૿େʹରͯ͠ɺऔΓࠐΈॲཧޮ཰ͷ޲্ͱ̍೥Ҏ্ͷ௕ ظอଘΛཱ྆͢Δ͜ͱ͕೉͍͠ɻ ϝτϦΫε਺ͷ૿େʹରͯ͠ɺطଘͷಛ௃࡟ݮΛద༻ͨ͠ͱͯ͠΋ɺγες Ϝશମͷো֐Λଊ͑ΒΕͣɺِཅੑɾِӄੑ͕૿Ճ͢Δɻ ܭଌॲཧͷޮ཰Խ [1] Y. Tsubouchi, M. Furukawa, R. Matsumoto, Low Overhead TCP/UDP Socket-based Tracing for Discovering Network Services Dependencies, Journal of Information Processing (JIP), Vol.30, pp.260-268, March 2022. [2] ௶಺༎थ, ࿬ࡔேਓ, ᖛా݈, দ໦խ޾, খྛོߒ, Ѩ෦ത, দຊ ྄հ, HeteroTSDB: ҟछ෼ࢄKVSؒͷࣗಈ֊૚ԽʹΑΔߴੑೳͳ ࣌ܥྻσʔλϕʔε, ৘ใॲཧֶձ࿦จࢽ, Vol.62, No.3, pp.818- 828, 2021೥3݄. [3] Y. Tsubouchi and H. Tsuruta, MetricSifter: Feature Reduction of Multivariate Time Series Data for Ef fi cient Fault Localization in Cloud Applications, IEEE Access, Vol. 12, pp. 37398-37417, March 2024. 2. औΓࠐΈॲཧͱ௕ظอଘͷޮ཰ͷ޲্ 3. ނোಛఆͷલॲཧͰো֐ʹؔ࿈͠ͳ͍มྔͷ࡟ݮ OSΧʔωϧ಺ͰTCP/UDP௨৴ΠϕϯτΛूଋ͢Δ͜ͱʹΑΔసૹॲཧޮ཰ͷ޲্ ҟछKVSΛ֊૚Խ͠ɺΠϯσοΫεࢀরޮ཰ͱ҆ՁͳετϨʔδ΁ͷ֨ೲΛ࣮ݱɻ ো֐ൃੜ࣌ʹ֤࣌ܥྻͷมԽ఺͕࣌ؒूத͢Δ͜ͱΛߟྀͨ͠ಛ௃࡟ݮʹΑΓɺ ނোಛఆਫ਼౓ͱ࣌ؒΛվળɻ ֤૚ͷϫʔΫϩʔυ૿େ࣌ͷ՝୊ղܾ ςϨϝτϦʔϫʔΫϩʔυ૿େͷ՝୊ ޮ཰తʹεέʔϧՄೳͳςϨϝτϦʔγ εςϜͷ࣮ݱʹ޲͚ͯ ΞϓϦέʔγϣϯ͕ෳࡶԽ͓ͯ͠ΓɺςϨϝτϦʔʹΑΔӡ༻ ؅ཧ͕ඞਢͰ͋Δɻ [1] [2] [3] ςϨϝτϦʔγεςϜͰɺܭଌɾετϨʔδɾϚΠχϯάͷ֤૚ ͰϫʔΫϩʔυ͕૿େ͍ͯ͠Δɻ ܭࢉػࢿݯͷফඅ૿େͳͲͷ໰୊ʹରͯ͠ޮ཰Α͘εέʔϧͤ͞Δ ͜ͱΛ໨తͱ͢Δɻͨͩ͠ɺӡ༻ෳࡶੑΛߟྀ͢Δ͜ͱɻ 127
  79. ৴པੑ޻ֶͷྺ࢙ʢ׬શ൛ʣ ೥୅ ৴པੑͷର৅ γεςϜͷఏڙܗଶ ߴ৴པԽͷߟ͑ํ ৴པੑͷఆٛ 1940~ ϋʔυ΢ΣΞ ػثΛ෺ཧతʹग़ՙ ނোͤͣʹ௕࣋ͪͤ͞

    Δ ʢ଱ٱੑʣΞΠςϜ͕༩͑Β Εͨ৚݅ͷԼͰɺ༩͑ΒΕͨ ظؒɺނোͤͣʹɺཁٻͲ͓ Γʹ਱ߦͰ͖Δೳྗ 1960~ ιϑτ΢Σ Ξ ιʔείʔυɾ࣮ߦϑΝΠ ϧɺ·ͨ͸ɺΠϯετʔϧ͞ Εͨίϯϐϡʔλ͝ͱೲ඼ ίϯϙʔωϯτͱͦͷ ૊Έ߹Θͤͷग़ྗͷͦ ΕͧΕΛࣄલʹ֬ೝ ʢอશੑʣʢઃܭ৴པ ੑʣ 1980~ Πϯλʔ ωοτ ୯ҰͷڊେωοτϫʔΫΛڞ ༗ͯ͠ར༻ ߴ଎௨৴ɺ஗Ԇɾ఻ૹ ޡΓɺϊʔυނোΛલ ఏͱ͢Δ௨৴ϓϩτί ϧͷઃܭ ʢ૯߹৴པੑʣΞΠςϜ ͕ɼཁٻ͞Εͨͱ͖ʹɺͦ ͷཁٻͲ͓Γʹɺ਱ߦ͢Δ ͨΊͷೳྗ 2000 ~ Ϋϥ΢υ ࣄۀऀʹΑΓγεςϜΛूத ؅ཧɾৗ࣌Քಇɻར༻ऀ͸Π ϯλʔωοτܦ༝Ͱར༻ ৴པੑͷ௿͍ίϯϙʔ ωϯτ܈Λ౔୆ʹ৴པ ੑͷߴ͍γεςϜઃܭ ௥Ճͷݫີͳఆٛ͸֬ೝͰ ͖ͣɻΑΓར༻ऀ໨ઢͷ৴ པੑΛݸผ۩ମతʹఆٛɻ ※1 JIS Z 8115:2019 ※1 ※1 [Saleh+, 2006] Highlights from the early (and pre-) history of reliability engineering [Kleppmann,2017] Designing Data-intensive Applications: The big ideas behind reliable, scalable, and maintainable systems ※1 [ࢁຊ+ 2021] ֬཰ɾ౷ܭ͔Β࢝ΊΔ ΤϯδχΞͷͨΊͷ৴པੑ޻ֶ- ਎ۙͳނো͔ΒӉ஦։ൃ·Ͱ -,ίϩφࣾ 128
  80. l΢Σ ブ Φ ペ Ϩʔγϣϯ͸ٕܳ で ͋ΓɺՊֶ で ͸ͳ͍z ΢ΣϒΦϖϨʔγϣϯ

    (ݪஶ 2010೥ൃץ) ఆٛɿl*5γεςϜ؅ཧͷઐ໳෼໺ で ɺ΢Σ ブ Ξ プ Ϧέʔγϣϯͷ։ ൃɾӡӦɾอकɾௐ੔ɾमཧΛؚΉz lʮਖ਼͍͠ํ๏ʯ͸ ど ͜ʹ΋ଘࡏ͠ͳ͍ɻͦ͜ʹ͋Δͷ͸ɺ ͱ Γ͋͑ ず ࠓ͸ ͏·͍͘͘ͱ͍͏ࣄ࣮ͱɺ࣍͸΋ͬͱྑ͘͢Δͱ ͍͏֮ޛ だ ͚ だ ɻz lωοτϫʔΫɾϧʔςΟϯ グ ɾεΠονϯ グ ɾϑΝΠΞ΢Υʔ ϧɾෛՙ෼ࢄɾߴՄ༻ੑɾো֐෮چɾ5$1΍6%1ͷαʔ ビ εɾ /0$ͷ؅ཧɾϋʔ ド ΢ΣΞ࢓༷ɾෳ਺ͷ6OJY؀ڥɾෳ਺ͷ΢Σ ブ αʔ バ ٕज़ɾΩϟογϡٕज़ɾ デ ʔλ ベ ʔεٕज़ɾετϨʔ ジ Πϯϑϥɾ҉߸ٕज़ɾΞϧ ゴ Ϧ ズ Ϝɾ܏޲෼ੳɾΩϟ パ γςΟ ܭըཱҊͳ ど Λਂ͘ཧղ͍ͯ͠ͳ͚Ε ば ͳΒͳ͍ɻz ※1 John AllspawɺJesse Robbinsฤɺ֯ ੐య༁,΢ΣϒΦϖϨʔγϣϯʔʔαΠτӡ༻؅ཧͷ࣮ફςΫχοΫ,ΦϥΠϦʔδϟύϯ ※1 
  81. 133 The Morning Paper on Operability l͜ͷߨԋʹ͍ͭͯߟ͑࢝Ίͨͱ ͖ɺ࿦จͷେ൒͸ʢগͳ͘ͱ΋ࢲ ͕ಡΜͩ࿦จͷେ൒͸ʣӡ༻্ͷ ໰୊ʹ͍ͭͯ͋·Γ৮Ε͍ͯͳ͍

    ͱ͍͏ҹ৅Λ࣋ͪ·ͨ͠ɻ͔͠ ͠ɺࣗ෼ͷίϨΫγϣϯΛৼΓ ฦͬͯΈΔͱɺӡ༻ʹؔ࿈͢Δ໰ ୊ʹ৮Ε͍ͯΔ࿦จ͕͍͔ʹଟ͍ ͔ʹڻ͔͞Ε·ͨ͠ɻzʢ༁ʣ https://blog.acolyer.org/2016/09/21/the-morning-paper-on-operability/
  82. 基礎情報学の情報とSRE ૚ ఆٛ 43&ʹ͓͚Δ ରԠ ߟ࡯ ੜ໋৘ใ ओ؍తͰɺͦͷ౎౓ੜ੒ ͞ΕΔʮҙຯʯɻ Ϣʔβʔମݧ

    ʢ69ʣ Ϣʔβʔ͕஗͍ͱײ͡ΔͳͲͷෆ շײʹରͯ͠ɺओ؍తͳ৴པΛक Δɻ ࣾձ৘ใ ίϛϡχέʔγϣϯΛ௨ ͯ͡ڞ༗ɾ఻ୡ͞ΕΔ ʮҙຯͷ͋Δʯ৘ใɻ ৴པੑ໨ඪ 4-*4-0 ओ؍తͳ৴པΛɺ૊৫Ͱ߹ҙՄೳ ͳʮ໿ଋʯ΍ʮϧʔϧʯʹม׵͢ Δɻ ػց৘ใ ҙຯΛࣺ৅ͨ͠ɺ٬؍ తͳ৴߸ɾσʔλɻ ςϨϝτϦ σʔλ ؂ࢹπʔϧ͕ੜ੒͢Δ๲େͳσʔ λɻ͜Εࣗମʹʮҙຯʯ͸ͳ͍ɻ 136
  83. 基礎情報学が提唱するシステムの特徴 137 Authoring Process Reader Community β Outputting Cognition Authoring

    Process ent (Upper HACS) Target α HACS D (reader community) Communication over α β α α’ α’’ repartion (t1) Expression Distribution (t2) ent (Information System) epartion (t1) ICT Frontend (Interface) Frontend (Interface) Backend (Database, Network) Distribution (t2) Prepation (t3) Information System ICT Developers User Community Information System Developer users α β User Community User User User ICT Information System Developer )"$4ʢ֊૚తࣗ཯ίϛϡχέʔγϣϯγεςϜʣ ར༻ऀίϛϡχςΟ ։ൃऀ ੜ໋ɾਓؒɾࣾձ͕ͲͷΑ͏ʹ৘ใ ΛੜΈग़͠ɺίϛϡχέʔγϣϯ͢ Δ͔Λઆ໌͢Δ౷߹Ϟσϧ ੈք͸ɺࣗ෼ࣗ਎Λ࡞Γଓ͚Δ ʰࣗ཯తͳγεςϜʱ͕֊૚ঢ়ʹ ॏͳͬͯͰ͖͍ͯΔ /BOP#BOBOB1SPʹΑΓੜ੒