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

GraphQLのN+1問題を解決したい

carotene4035
February 25, 2020

 GraphQLのN+1問題を解決したい

carotene4035

February 25, 2020
Tweet

More Decks by carotene4035

Other Decks in Programming

Transcript

  1. (SBQI2-ͷ/໰୊Λ
    ղܾ͍ͨ͠
    ʙ/PEF+4ͷΠϕϯτϧʔϓʹ͍ͭͯʙ
    ͔ΖͯΜ

    View Slide

  2. ܦҢ

    View Slide

  3. (SBQI2-ͷಛ௃
    w ΫΤϦܕݴޠɻΫΤϦܕݴޠʹ͸ҎԼͷछྨ͕͋Δ
    w RVFSZ
    w NVUBUJPO
    w TVCTDSJQUJPO

    View Slide

  4. View Slide

  5. (SBQI2-ͷಛ௃
    w 42-Λൃߦ͢Δͱ͖ϊʔυ͝ͱʹൃߦ͢ΔͷͰɺ/໰୊͕͓͖΍͍͢
    w ࠓ೔͸͜ΕΛղܾ͍͖͍ͯͨ͠

    View Slide

  6. ํ਑

    View Slide

  7. ํ਑
    w &BHFSMPBE
    w ઌʹ42-Λൃߦ
    w -B[ZMPBE
    w ͋ͱͰ·ͱΊͯ42-Λൃߦ
    w CBUDIJOHͱݺ͹ΕΔ
    w (SBQI2-ͷ৔߹͸͕͍ͬͪ͋ͬͯ͜Δ

    View Slide

  8. View Slide

  9. View Slide

  10. ํ਑
    w -B[ZMPBEΛ࣮ݱ͢Δखஈͱͯ͠ʮ%BUB-PBEFSʯͱ͍͏ϥΠϒϥϦ͕͋
    Δʢ'BDFCPPL੡ʣ

    View Slide

  11. MPBE
    MPBE
    MPBE

    QFSGPSN

    View Slide

  12. ํ਑
    w ͔ͤͬ͘ͳͷͰɺࢼ͠ʹॻ͍ͯΈΔ͜ͱʹͨ͠

    View Slide

  13. ࣮૷

    View Slide

  14. ࣮૷
    w CBUDIJOHʹඞཁͳΩʔΛཷΊࠐΉʢࠓճͷ৔߹͸BEWJEʣ
    w Ωʔ͕͢΂ͯू·ͬͨΒɺCBUDIGVODΛ࣮ߦ͢Δ

    View Slide

  15. ࣮૷

    View Slide

  16. ࣮૷

    View Slide

  17. ࣮૷

    View Slide

  18. ࣮૷

    View Slide

  19. w ΍͔ͬͨʂʁ

    View Slide

  20. ΍ͬͯͳ͍

    View Slide

  21. ΍ͬͯͳ͍

    View Slide

  22. View Slide

  23. MPBE
    MPBE
    MPBE

    View Slide

  24. w CBUDI࣮ߦλΠϛϯάΛ੍ޚ͠ͳ͍ͱ͍͚ͳ͍
    w CBUDI͸શͯͷMPBE͕૸ͬͨޙͰಈ͍ͯ΄͍͠
    w MPBEͷ࣮ߦ͕ऴΘͬͨޙɺCBUDIͷ࣮ߦΛॻ͚͹͍͍ͷͰ͸ʁ

    ʢಉظతʹॻ͘ʣ
    w ͢΂ͯͷMPBE͕͍ͭऴΘΔͷ͔͕ɺ(SBQI2-ͩͱΘ͔Βͳ͍

    View Slide

  25. w %BUB-PBEFSʢϥΠϒϥϦʣΛ࢖͏ͱ͖͸ಉظతʹॻ͔ͳͯ͘ྑ͍Α͏ͩ
    w ͦ΋ͦ΋CBUDIͷ࣮ߦॲཧΛॻ͔ͳͯ͘Α͍
    w ෆࢥٞ
    w Ͳ͏ͨ͠Β͍͍Μͩʁ%BUB-PBEFSͲ͏͍ͯ͠ΔΜͩʁ
    w ΑΜͰΈͨ
    w ࣮ݱํ๏͕Θ͔ͬͨ

    View Slide

  26. ౴͑

    View Slide

  27. ౴͑

    View Slide

  28. ౴͑

    View Slide

  29. ౴͑

    View Slide

  30. ౴͑

    View Slide

  31. ߟ࡯

    View Slide

  32. w /PEF+4ͷΠϕϯτϧʔϓΛཧղ͢ΔͱΘ͔Γ΍͍͢

    View Slide

  33. ྫʣͲ͏͍͏ॱ൪Ͱ࣮ߦ͞ΕΔʁ

    View Slide

  34. ͨ͑͜





    View Slide

  35. w +BWB4DSJQU͸͸͡Ίʹ͢΂ͯಉظతʹ࣮ߦ͞ΕΔ
    w ͦͷ͋ͱ͸Πϕϯτϧʔϓ͕ճΔ͚ͩ
    w ͜Ε͸/PEF+4΋ϒϥ΢β΋ಉ͡
    w ࠓճ͸/PEFͷ࿩

    View Slide

  36. View Slide

  37. View Slide

  38. w IB
    ϧʔϓ͕ճΔલʹɺಉظॲཧ͕ߦΘΕΔ
    ಉظॲཧϑΣʔζ

    View Slide

  39. w IB

    ಉظॲཧϑΣʔζ

    View Slide

  40. w IB


    ಉظॲཧϑΣʔζ

    View Slide

  41. w IB



    ಉظॲཧϑΣʔζ

    View Slide

  42. w IB




    ಉظॲཧϑΣʔζ

    View Slide

  43. w ͬͬE
    ී௨ʹ࣮ߦ͞Εɺͱग़ྗ




    ಉظॲཧϑΣʔζ

    View Slide

  44. a
    w ͬͬE




    ϧʔϓલ

    View Slide

  45. a
    w ͬͬE



    ϧʔϓલ

    View Slide

  46. a
    w ͬͬE


    Πϕϯτϧʔϓ

    View Slide

  47. a
    w ͬͬE

    Πϕϯτϧʔϓ

    View Slide

  48. View Slide

  49. w ͬͬE
    Πϕϯτϧʔϓ
    ඞͣಉظ࣮ߦ͞Εͨޙʹ࣮ߦ͞ΕΔ

    View Slide

  50. ·ͱΊ
    w (SBQI2-ͷ/໰୊ղܾ͸MB[ZMPBEͷ૬ੑ͕͍͍
    w MB[ZMPBEΛ͢Δࡍ͸ɺ͢΂ͯͷLFZ͕MPBE͞ΕͨޙʹCBUDIΛ࣮ߦ͢Δඞཁ͕͋
    Δ
    w QSPDFTTOFYU5JDLͳͲΛ༻͍ͯɺ

    ಉظ࣮ߦ͕ߦΘΕͨޙʹCBUDIJOH͕࣮ߦ͞ΕΔ͜ͱ͕

    อূ͞Ε͍ͯΔඞཁ͕͋Δ
    w /PEF+4ͷΠϕϯτϧʔϓΛཧղ͢ΔͱΘ͔Γ΍͍͢
    w DBDIFJOHͳͲͷศརػೳΛඋ͑ͨOQNϞδϡʔϧΛ࢖͏ͱָͩΑ

    View Slide