Upgrade to Pro — share decks privately, control downloads, hide ads and more …

4D v11 SQL in Depth (2010)

4D v11 SQL in Depth (2010)

4D Japan

August 31, 2023
Tweet

More Decks by 4D Japan

Other Decks in Programming

Transcript

  1. Tokyo/2010-03-03/04 ༻ޠͷఆٛ • ίΦϖϥςΟϒ: ଞͷϓϩηεʢλεΫ, εϨο υ, ...ʣʹৡΔCPU࣌ؒΛࣗ෼ͰܾΊΔϓϩηε ‣ ಠ઎Ͱ͖Δ

    = ϒϩοΫͰ͖Δʢྫ : Mac OS 9ʣ ‣ ͻͱͭͷΞϓϦέʔγϣϯͷίΦϖϥςΟϒεϨ ου͸ඞͣಉ͡ίΞͰ࣮ߦ͞ΕΔ
  2. Tokyo/2010-03-03/04 ༻ޠͷఆٛ • ίΦϖϥςΟϒ: ଞͷϓϩηεʢλεΫ, εϨο υ, ...ʣʹৡΔCPU࣌ؒΛࣗ෼ͰܾΊΔϓϩηε ‣ ಠ઎Ͱ͖Δ

    = ϒϩοΫͰ͖Δʢྫ : Mac OS 9ʣ ‣ ͻͱͭͷΞϓϦέʔγϣϯͷίΦϖϥςΟϒεϨ ου͸ඞͣಉ͡ίΞͰ࣮ߦ͞ΕΔ • ϓϦΤϯϓςΟϒ: ͦΕͧΕͷϓϩηεʹ༩͑ΒΕ ΔCPU࣌ؒ͸OS͕൑அ͢Δ
  3. Tokyo/2010-03-03/04 ༻ޠͷఆٛ • ίΦϖϥςΟϒ: ଞͷϓϩηεʢλεΫ, εϨο υ, ...ʣʹৡΔCPU࣌ؒΛࣗ෼ͰܾΊΔϓϩηε ‣ ಠ઎Ͱ͖Δ

    = ϒϩοΫͰ͖Δʢྫ : Mac OS 9ʣ ‣ ͻͱͭͷΞϓϦέʔγϣϯͷίΦϖϥςΟϒεϨ ου͸ඞͣಉ͡ίΞͰ࣮ߦ͞ΕΔ • ϓϦΤϯϓςΟϒ: ͦΕͧΕͷϓϩηεʹ༩͑ΒΕ ΔCPU࣌ؒ͸OS͕൑அ͢Δ • ϓϦΤϯϓςΟϒͳ౓߹͍͕ߴ͍΄Ͳ଎͍
  4. Tokyo/2010-03-03/04 ࡾରͷπΠϯ • 4D Clientͷάϩʔόϧϓϩηε͸ඞͣαʔόʔʹ͋Δ;ͨͭͷπΠ ϯϓϩηεͱର࿩͍ͯ͠Δ: ‣ ϓϦΤϯϓςΟϒ εϨου: «७ਮͳ»

    DB4DϦΫΤετΛॲཧ (query, order by, create, ...) ‣ ίΦϖϥςΟϒ εϨου: ΞϓϦέʔγϣϯϦΫΤετΛॲཧ (Current date(*), GET PROCESS VARIABLE(-1;...), τϦΨ, ...) 4
  5. Tokyo/2010-03-03/04 ࡾରͷπΠϯ • 4D Clientͷάϩʔόϧϓϩηε͸ඞͣαʔόʔʹ͋Δ;ͨͭͷπΠ ϯϓϩηεͱର࿩͍ͯ͠Δ: ‣ ϓϦΤϯϓςΟϒ εϨου: «७ਮͳ»

    DB4DϦΫΤετΛॲཧ (query, order by, create, ...) ‣ ίΦϖϥςΟϒ εϨου: ΞϓϦέʔγϣϯϦΫΤετΛॲཧ (Current date(*), GET PROCESS VARIABLE(-1;...), τϦΨ, ...) • ϓϦΤϯϓςΟϒͳୈࡾͷεϨουͱର࿩͢Δ͜ͱ΋͋Δ 4
  6. Tokyo/2010-03-03/04 ࡾରͷπΠϯ • 4D Clientͷάϩʔόϧϓϩηε͸ඞͣαʔόʔʹ͋Δ;ͨͭͷπΠ ϯϓϩηεͱର࿩͍ͯ͠Δ: ‣ ϓϦΤϯϓςΟϒ εϨου: «७ਮͳ»

    DB4DϦΫΤετΛॲཧ (query, order by, create, ...) ‣ ίΦϖϥςΟϒ εϨου: ΞϓϦέʔγϣϯϦΫΤετΛॲཧ (Current date(*), GET PROCESS VARIABLE(-1;...), τϦΨ, ...) • ϓϦΤϯϓςΟϒͳୈࡾͷεϨουͱର࿩͢Δ͜ͱ΋͋Δ ‣ ͜Ε͸Begin SQL͕࣮ߦ͞ΕΔͱ࡞੒͞ΕΔ 4
  7. Tokyo/2010-03-03/04 ࡾରͷπΠϯ • 4D Clientͷάϩʔόϧϓϩηε͸ඞͣαʔόʔʹ͋Δ;ͨͭͷπΠ ϯϓϩηεͱର࿩͍ͯ͠Δ: ‣ ϓϦΤϯϓςΟϒ εϨου: «७ਮͳ»

    DB4DϦΫΤετΛॲཧ (query, order by, create, ...) ‣ ίΦϖϥςΟϒ εϨου: ΞϓϦέʔγϣϯϦΫΤετΛॲཧ (Current date(*), GET PROCESS VARIABLE(-1;...), τϦΨ, ...) • ϓϦΤϯϓςΟϒͳୈࡾͷεϨουͱର࿩͢Δ͜ͱ΋͋Δ ‣ ͜Ε͸Begin SQL͕࣮ߦ͞ΕΔͱ࡞੒͞ΕΔ • ͦΕͧΕͷର࿩͸ҟͳΔωοτϫʔΫϙʔτΛ࢖༻͢Δ: 4 . . . $date:=Current date(*) . . . QUERY([City];[City]Name=”Paris”) . . . Begin SQL . . .
  8. Tokyo/2010-03-03/04 ࡾରͷπΠϯ • 4D Clientͷάϩʔόϧϓϩηε͸ඞͣαʔόʔʹ͋Δ;ͨͭͷπΠ ϯϓϩηεͱର࿩͍ͯ͠Δ: ‣ ϓϦΤϯϓςΟϒ εϨου: «७ਮͳ»

    DB4DϦΫΤετΛॲཧ (query, order by, create, ...) ‣ ίΦϖϥςΟϒ εϨου: ΞϓϦέʔγϣϯϦΫΤετΛॲཧ (Current date(*), GET PROCESS VARIABLE(-1;...), τϦΨ, ...) • ϓϦΤϯϓςΟϒͳୈࡾͷεϨουͱର࿩͢Δ͜ͱ΋͋Δ ‣ ͜Ε͸Begin SQL͕࣮ߦ͞ΕΔͱ࡞੒͞ΕΔ • ͦΕͧΕͷର࿩͸ҟͳΔωοτϫʔΫϙʔτΛ࢖༻͢Δ: 4 . . . $date:=Current date(*) . . . QUERY([City];[City]Name=”Paris”) . . . Begin SQL . . . ΞϓϦέʔγϣϯαʔόʔϙʔτ: 19813
  9. Tokyo/2010-03-03/04 ࡾରͷπΠϯ • 4D Clientͷάϩʔόϧϓϩηε͸ඞͣαʔόʔʹ͋Δ;ͨͭͷπΠ ϯϓϩηεͱର࿩͍ͯ͠Δ: ‣ ϓϦΤϯϓςΟϒ εϨου: «७ਮͳ»

    DB4DϦΫΤετΛॲཧ (query, order by, create, ...) ‣ ίΦϖϥςΟϒ εϨου: ΞϓϦέʔγϣϯϦΫΤετΛॲཧ (Current date(*), GET PROCESS VARIABLE(-1;...), τϦΨ, ...) • ϓϦΤϯϓςΟϒͳୈࡾͷεϨουͱର࿩͢Δ͜ͱ΋͋Δ ‣ ͜Ε͸Begin SQL͕࣮ߦ͞ΕΔͱ࡞੒͞ΕΔ • ͦΕͧΕͷର࿩͸ҟͳΔωοτϫʔΫϙʔτΛ࢖༻͢Δ: 4 . . . $date:=Current date(*) . . . QUERY([City];[City]Name=”Paris”) . . . Begin SQL . . . DB4D ϙʔτ: 19814 ΞϓϦέʔγϣϯαʔόʔϙʔτ: 19813 SQLαʔόʔϙʔτ: 19812
  10. Tokyo/2010-03-03/04 4D Server αʔόʔ ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ

    2 ίΞ 3 ίΞ 4 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3…⋯ Ϣʔβʔ 1
  11. Tokyo/2010-03-03/04 4D Server αʔόʔ ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ

    2 ίΞ 3 ίΞ 4 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3…⋯ Ϣʔβʔ 1 ϓϩηε U1-1 ϓϩηε U1-1 19813 19814
  12. Tokyo/2010-03-03/04 4D Server αʔόʔ ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ

    2 ίΞ 3 ίΞ 4 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3…⋯ Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1…⋯ R2 Ϣʔβʔ 3 ϓϩηε U1-1 ϓϩηε U1-1 ϓϩηε U2-2 R1.. R3 19813 19814
  13. Tokyo/2010-03-03/04 4D Server αʔόʔ ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ

    2 ίΞ 3 ίΞ 4 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3…⋯ Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1…⋯ R2 Ϣʔβʔ 3 ϓϩηε U1-1 ϓϩηε U2-1 ϓϩηε U2-2 ϓϩηε U3-1 ϓϩηε U3-2 ϓϩηε U1-1 ϓϩηε U2-1 ϓϩηε U2-2 ϓϩηε U3-1 ϓϩηε U3-2 ϓϩηε U2-2 R1.. R3 19813 19814
  14. Tokyo/2010-03-03/04 4D Server αʔόʔ ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ

    2 ίΞ 3 ίΞ 4 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3…⋯ Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1…⋯ R2 Ϣʔβʔ 3 ϓϩηε U1-1 ϓϩηε U2-1 ϓϩηε U2-2 ϓϩηε U3-1 ϓϩηε U3-2 ϓϩηε U1-1 ϓϩηε U2-1 ϓϩηε U2-2 ϓϩηε U3-1 ϓϩηε U3-2 ϓϩηε U2-2 R1.. R3 19813 19814
  15. Tokyo/2010-03-03/04 4D Server αʔόʔ ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ

    2 ίΞ 3 ίΞ 4 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3…⋯ Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1…⋯ R2 Ϣʔβʔ 3 ϓϩηε U1-1 ϓϩηε U2-1 ϓϩηε U2-2 ϓϩηε U3-1 ϓϩηε U3-2 ϓϩηε U1-1 ϓϩηε U2-1 ϓϩηε U2-2 ϓϩηε U3-1 ϓϩηε U3-2 ϓϩηε U2-2 R1.. R3 19813 19814
  16. Tokyo/2010-03-03/04 4D Server αʔόʔ ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ

    2 ίΞ 3 ίΞ 4 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1.. R2 Ϣʔβʔ 3 ϓϩηε U1-1 ϓϩηε U2-1 ϓϩηε U2-2 ϓϩηε U3-1 ϓϩηε U3-2 ϓϩηε U1-1 ϓϩηε U2-1 ϓϩηε U2-2 ϓϩηε U3-1 ϓϩηε U3-2 ϓϩηε U2-2 R1.. R2 19813 19814
  17. Tokyo/2010-03-03/04 4D Server αʔόʔ ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ

    2 ίΞ 3 ίΞ 4 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1.. R2 Ϣʔβʔ 3 ϓϩηε U1-1 ϓϩηε U2-1 ϓϩηε U2-2 ϓϩηε U3-1 ϓϩηε U3-2 ϓϩηε U1-1 ϓϩηε U2-1 ϓϩηε U2-2 ϓϩηε U3-1 ϓϩηε U3-2 ϓϩηε U2-2 R1.. R2 19813 19814
  18. Tokyo/2010-03-03/04 4D Server αʔόʔ 19813 19814 ϓϩηε U1-1 Req1... QUERY

    (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1…⋯ R2 Ϣʔβʔ 3 ϓϩηε U2-2 R1.. R3 ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2 ίΞ 3 ίΞ 4 εέδϡʔϥʔ
  19. Tokyo/2010-03-03/04 4D Server αʔόʔ 19813 19814 ϓϩηε U1-1 Req1... QUERY

    (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1.. R2 Ϣʔβʔ 3 ϓϩηε U2-2 R1.. R2 ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2 ίΞ 3 ίΞ 4 εέδϡʔϥʔ
  20. Tokyo/2010-03-03/04 Begin SQL... Begin SQL... Begin SQL... Begin SQL... Begin

    SQL... 4D Server αʔόʔ 19813 19814 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1.. R2 Ϣʔβʔ 3 ϓϩηε U2-2 R1.. R2 ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2 ίΞ 3 ίΞ 4 εέδϡʔϥʔ
  21. Tokyo/2010-03-03/04 Begin SQL... Begin SQL... Begin SQL... Begin SQL... Begin

    SQL... 4D Server αʔόʔ 19813 19814 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1.. R2 Ϣʔβʔ 3 ϓϩηε U2-2 R1.. R2 ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2 ίΞ 3 ίΞ 4 εέδϡʔϥʔ 19812
  22. Tokyo/2010-03-03/04 Begin SQL... Begin SQL... Begin SQL... Begin SQL... Begin

    SQL... 4D Server αʔόʔ 19813 19814 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1.. R2 Ϣʔβʔ 3 ϓϩηε U2-2 R1.. R2 ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2 ίΞ 3 ίΞ 4 εέδϡʔϥʔ 19812
  23. Tokyo/2010-03-03/04 Begin SQL... Begin SQL... Begin SQL... Begin SQL... Begin

    SQL... 4D Server αʔόʔ 19813 19814 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1.. R2 Ϣʔβʔ 3 ϓϩηε U2-2 R1.. R2 ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2 ίΞ 3 ίΞ 4 εέδϡʔϥʔ 19812
  24. Tokyo/2010-03-03/04 Begin SQL... Begin SQL... Begin SQL... Begin SQL... Begin

    SQL... 4D Server αʔόʔ 19813 19814 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1.. R2 Ϣʔβʔ 3 Process U2-2 R1.. R2 19812 ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2 ίΞ 3 ίΞ 4 εέδϡʔϥʔ
  25. Tokyo/2010-03-03/04 Begin SQL... Begin SQL... Begin SQL... Begin SQL... Begin

    SQL... 4D Server αʔόʔ 19813 19814 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1.. R2 Ϣʔβʔ 3 Process U2-2 R1.. R2 19812 ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2 ίΞ 3 ίΞ 4 εέδϡʔϥʔ
  26. Tokyo/2010-03-03/04 Begin SQL... Begin SQL... Begin SQL... Begin SQL... Begin

    SQL... 4D Server αʔόʔ 19813 19814 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1.. R2 Ϣʔβʔ 3 ϓϩηε U2-2 R1.. R2 ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2 ίΞ 3 ίΞ 4 εέδϡʔϥʔ 19812
  27. Tokyo/2010-03-03/04 ৳ுੑͱ଎౓ ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2 ίΞ

    3 ίΞ 4 εέδϡʔϥʔ DBϦΫΤετ͸ಉ࣌ʹෳ਺ͷ ΫϥΠΞϯτ͕࣮ߦͰ͖Δ
  28. Tokyo/2010-03-03/04 ৳ுੑͱ଎౓ ϘτϧωοΫ ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2

    ίΞ 3 ίΞ 4 εέδϡʔϥʔ DBϦΫΤετ͸ಉ࣌ʹෳ਺ͷ ΫϥΠΞϯτ͕࣮ߦͰ͖Δ ϥϯήʔδ τϦΨ ϝιου «αʔόʔͰ࣮ߦ» ετΞυϓϩγʔδϟʔ Web αʔόʔ/SOAP 4Dࣗମ: αʔόʔͷϢʔβʔΠϯλϑΣʔ ε ίωΫγϣϯϋϯυϥʔ ͋Δछͷ֎෦SQLϦΫΤετ
  29. Tokyo/2010-03-03/04 v11-v12 σεΫτοϓ σεΫτοϓ ΫϥΠΞϯτ ΫϥΠΞϯτ-αʔόʔ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ

    ΠϯλϑΣʔ ε全般 ϥϯήʔδ ετΞυϓϩγʔδϟʔ HTTP αʔόʔ ΞϓϦέʔγϣϯαʔόʔ ΠϯσοΫεϏϧμ ʔ ϑϥογϡϚωʔδϟʔ SQL αʔόʔ DB4D(σʔλΞΫηε)
  30. Tokyo/2010-03-03/04 v11-v12 σεΫτοϓ σεΫτοϓ ΫϥΠΞϯτ ΫϥΠΞϯτ-αʔόʔ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ

    ΠϯλϑΣʔ ε全般 ϥϯήʔδ ετΞυϓϩγʔδϟʔ HTTP αʔόʔ ΞϓϦέʔγϣϯαʔόʔ ΠϯσοΫεϏϧμ ʔ ϑϥογϡϚωʔδϟʔ SQL αʔόʔ DB4D(σʔλΞΫηε)
  31. Tokyo/2010-03-03/04 Begin SQL... Begin SQL... Begin SQL... Begin SQL... Begin

    SQL... 4D Server αʔόʔ 19813 19814 ϓϩηε U1-1 Req1... QUERY (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U2-1 R1... Current date(*) R2.. Ϣʔβʔ 2 ϓϩηε U3-1 R1…⋯ R2 ϓϩηε U3-2 R1.. R2 Ϣʔβʔ 3 ϓϩηε U2-2 R1.. R2 ΦϖϨʔςΟϯάγεςϜ ίΦϖϥςΟϒ ϓϦΤϯϓςΟϒ ίΞ 1 ίΞ 2 ίΞ 3 ίΞ 4 εέδϡʔϥʔ
  32. Tokyo/2010-03-03/04 ϘτϧωοΫ ϥϯήʔδ τϦΨ ϝιου «αʔόʔͰ࣮ߦ» ετΞυϓϩγʔδϟʔ Web αʔόʔ/SOAP 4Dࣗମ:

    αʔόʔͷϢʔβʔΠϯλϑΣʔ ε ίωΫγϣϯϋϯυϥʔ ͋Δछͷ֎෦SQLϦΫΤετ
  33. Tokyo/2010-03-03/04 ϘτϧωοΫ ϥϯήʔδ τϦΨ ϝιου «αʔόʔͰ࣮ߦ» ετΞυϓϩγʔδϟʔ Web αʔόʔ/SOAP •

    αʔόʔ͕ૉૣ͘ऴ͑ΒΕΔΑ͏ʹ • τϦΨ: ‣ ઈରʹඞཁͳ৔߹͚ͩ ‣ ൚༻తͳίʔυ͸ආ͚Δ • ΫϥΠΞϯτ͔ΒϓϦΤϯϓςΟϒʹ (STA/ ATS, ...) • EXECUTE ON CLIENT͕׆༻Ͱ͖Δ͔΋ • ίϯύΠϧϞʔυͰॏ౓ͷϧʔ ϓ: IDLE • ίʔυϦϑΝΫλϦϯά: ͦΜͳʹͨ͘͞Μͷε τΞυϓϩγʔδϟʔ͕΄Μͱ͏ʹඞཁ ? • . . .
  34. Tokyo/2010-03-03/04 ϘτϧωοΫ ϥϯήʔδ τϦΨ ϝιου «αʔόʔͰ࣮ߦ» ετΞυϓϩγʔδϟʔ Web αʔόʔ/SOAP •

    αʔόʔ͕ૉૣ͘ऴ͑ΒΕΔΑ͏ʹ • τϦΨ: ‣ ઈରʹඞཁͳ৔߹͚ͩ ‣ ൚༻తͳίʔυ͸ආ͚Δ • ΫϥΠΞϯτ͔ΒϓϦΤϯϓςΟϒʹ (STA/ ATS, ...) • EXECUTE ON CLIENT͕׆༻Ͱ͖Δ͔΋ • ίϯύΠϧϞʔυͰॏ౓ͷϧʔ ϓ: IDLE • ίʔυϦϑΝΫλϦϯά: ͦΜͳʹͨ͘͞Μͷε τΞυϓϩγʔδϟʔ͕΄Μͱ͏ʹඞཁ ? • . . . ߟྔͤΑ «ෛՙͱ଎౓»
  35. Clichy/2010-02-03 4D, ௨ৗ QUERY( . . .) SQL SELECT .

    . . FROM . . . WHERE . . . SQL vs 4D - ύϑΥʔϚϯε
  36. Clichy/2010-02-03 4D, ௨ৗ QUERY( . . .) SQL SELECT .

    . . FROM . . . WHERE . . . ΠϯλϓϦλʔ SQL vs 4D - ύϑΥʔϚϯε
  37. Clichy/2010-02-03 4D, ௨ৗ QUERY( . . .) SQL SELECT .

    . . FROM . . . WHERE . . . ΠϯλϓϦλʔ DB4D Τϯδϯ σʔλϑΝΠϧ/ΠϯσοΫεϑΝΠϧ SQL vs 4D - ύϑΥʔϚϯε
  38. Clichy/2010-02-03 • 4D͸ෆՄ෼, ϫϯΞΫγϣϯʹରͯ͠ߴ౓ʹ࠷దԽ ‣ QUERY - ݕࡧ, ηϨΫγϣϯͷ࡞੒, ઌ಄Ϩίʔυͷϩʔυ

    - ͜͜·ͰΛ͢΂ͯͻͱͭͷίϚϯυͰ • SQL͸൚༻త ‣ ͻͱͭͷ໋ྩ (SELECT) Ͱ͋ΒΏΔཁٻʹରॲ SQL vs 4D - ύϑΥʔϚϯε
  39. Clichy/2010-02-03 • 4D͸ෆՄ෼, ϫϯΞΫγϣϯʹରͯ͠ߴ౓ʹ࠷దԽ ‣ QUERY - ݕࡧ, ηϨΫγϣϯͷ࡞੒, ઌ಄Ϩίʔυͷϩʔυ

    - ͜͜·ͰΛ͢΂ͯͻͱͭͷίϚϯυͰ • SQL͸൚༻త ‣ ͻͱͭͷ໋ྩ (SELECT) Ͱ͋ΒΏΔཁٻʹରॲ ‣ Ճ͑ͯଘࡏ͢ΔΦʔόʔϔου: - ղੳ - ݕূ - SQL ύεεϧʔ SQL vs 4D - ύϑΥʔϚϯε
  40. Clichy/2010-02-03 • 4D͸ෆՄ෼, ϫϯΞΫγϣϯʹରͯ͠ߴ౓ʹ࠷దԽ ‣ QUERY - ݕࡧ, ηϨΫγϣϯͷ࡞੒, ઌ಄Ϩίʔυͷϩʔυ

    - ͜͜·ͰΛ͢΂ͯͻͱͭͷίϚϯυͰ • SQL͸൚༻త ‣ ͻͱͭͷ໋ྩ (SELECT) Ͱ͋ΒΏΔཁٻʹରॲ ‣ Ճ͑ͯଘࡏ͢ΔΦʔόʔϔου: - ղੳ - ݕূ - SQL ύεεϧʔ - ϥϯήʔδόΠϯσΟϯά SQL vs 4D - ύϑΥʔϚϯε
  41. Clichy/2010-02-03 • 4D͸ෆՄ෼, ϫϯΞΫγϣϯʹରͯ͠ߴ౓ʹ࠷దԽ ‣ QUERY - ݕࡧ, ηϨΫγϣϯͷ࡞੒, ઌ಄Ϩίʔυͷϩʔυ

    - ͜͜·ͰΛ͢΂ͯͻͱͭͷίϚϯυͰ • SQL͸൚༻త ‣ ͻͱͭͷ໋ྩ (SELECT) Ͱ͋ΒΏΔཁٻʹରॲ ‣ Ճ͑ͯଘࡏ͢ΔΦʔόʔϔου: - ղੳ - ݕূ - SQL ύεεϧʔ - ϥϯήʔδόΠϯσΟϯά - Τϯδϯোน SQL vs 4D - ύϑΥʔϚϯε
  42. Clichy/2010-02-03 4D, ௨ৗ QUERY( . . .) SQL SELECT .

    . . FROM . . . WHERE . . . ΠϯλϓϦλʔ DB4D Τϯδϯ σʔλϑΝΠϧ/ΠϯσοΫεϑΝΠϧ
  43. Clichy/2010-02-03 4D, ௨ৗ QUERY( . . .) SQL SELECT .

    . . FROM . . . WHERE . . . ΠϯλϓϦλʔ DB4D Τϯδϯ σʔλϑΝΠϧ/ΠϯσοΫεϑΝΠϧ
  44. Clichy/2010-02-03 • v11: SQL ͸ 5-10 ഒ஗͍৔߹͕͋Δ ‣ ͔͜͠͠Ε͸๞͘·Ͱฏۉ, ͋·ΓัΘΕͳ͍Α͏ʹ

    ‣ ৔߹ʹΑͬͯ͸, SQLͷ΄͏͕଎͍͜ͱ΋ - యܕྫ͸ܭࢉΛཁ͢Δεςʔτϝϯτ: SELECT (Debits - Credits) FROM Clients into :rBalance - ϓϦΤϯϓςΟϒ - গͳ͍ωοτϫʔΫϦΫΤετ SQL vs 4D - ύϑΥʔϚϯε
  45. Clichy/2010-02-03 • v11: SQL ͸ 5-10 ഒ஗͍৔߹͕͋Δ ‣ ͔͜͠͠Ε͸๞͘·Ͱฏۉ, ͋·ΓัΘΕͳ͍Α͏ʹ

    ‣ ৔߹ʹΑͬͯ͸, SQLͷ΄͏͕଎͍͜ͱ΋ - యܕྫ͸ܭࢉΛཁ͢Δεςʔτϝϯτ: SELECT (Debits - Credits) FROM Clients into :rBalance - ϓϦΤϯϓςΟϒ - গͳ͍ωοτϫʔΫϦΫΤετ • SQL 12 vs SQL v11 ‣ ϩʔΧϧσʔλϑΣονϯά => 2-3 ഒߴ଎ ‣ ϦϞʔτσʔλϑΣονϯά => 5-20 ഒߴ଎ SQL vs 4D - ύϑΥʔϚϯε
  46. Clichy/2010-02-03 • ͲͷΑ͏ͳ৔߹ʹSQLΛ࢖༻͢Δ΂͖ ? ‣ ͦͷ΄͏͕଎͍ͱࢥ͑Δࠜڌ͕͋Δͱ͖ ‣ SQLͰهड़ͨ͠΄͏ָ͕ʢඒ͍͠ ?ʣͳͱ͖ ‣

    ଞͷDBʢ4D͋Δ͍͸ͦΕҎ֎ʣʹ઀ଓ͢Δͱ͖ ‣ SQLಛ༗ͷػೳ͕ඞཁͳͱ͖ SQL vs 4D - ύϑΥʔϚϯε
  47. Tokyo/2010-03-03/04 Ωϟογϡ • ओཁͳ໨త͸଎౓Ξοϓʢ4D: σʔλΞΫηεʣ ‣ ྫ: ϨίʔυΛϩʔυ͢Δ - ॳճ͸σΟεΫ͔ΒಡΈࠐΈ:

    ΞΫηε͸ϛϦඵͷੈք - Ҏ߱͸Ωϟογϡ͔Β: ΞΫηε͸φϊඵͷੈք 1,000,000 ഒߴ଎ ΋͠ 1 ns = 1 ඵͩͱ͢Ε͹, 1 ms = 11,5 ೔
  48. Tokyo/2010-03-03/04 Ωϟογϡ • ओཁͳ໨త͸଎౓Ξοϓʢ4D: σʔλΞΫηεʣ ‣ ྫ: ϨίʔυΛϩʔυ͢Δ - ॳճ͸σΟεΫ͔ΒಡΈࠐΈ:

    ΞΫηε͸ϛϦඵͷੈք - Ҏ߱͸Ωϟογϡ͔Β: ΞΫηε͸φϊඵͷੈք • Ωϟογϡʹऩೲ͞ΕΔ΋ͷ͸ ? - ςʔϒϧ, ϑΟʔϧυ, ϦϨʔγϣϯ, ΠϯσοΫεͳͲετϥΫνϟఆٛ৘ใ - ݱࡏͷσʔλϕʔεʹؔ͢Δશൠతͳ৘ใʢϑΝΠϧύε, ϓϩύςΟͳͲʣ - σʔλϑΝΠϧΞϩέʔγϣϯϏοτςʔϒϧ - Ϩίʔυ, ΠϯσοΫε, BLOBͷ௥Ճ৘ใ, ௥ՃϓϩύςΟͳͲ - ΠϯσοΫεϖʔδ - Ϩίʔυ - BLOBʢΩϟογϡʹॆ෼ͷεϖʔε͕ͳ͚Ε͹ϝΠϯϝϞϦʹߦ͘͜ͱ΋ʣ - ͦͷଞͷϓϩύςΟ - γʔέϯγϟϧφϯόʔ - τϥϯβΫγϣϯ - ηϨΫγϣϯ - ηοτ - ฒͼସ͑༻ͷҰ࣌తόοϑΝ, ઌಡΈ, σΟεΫॻ͖ࠐΈ༻όοϑΝͳͲ
  49. Tokyo/2010-03-03/04 Ωϟογϡ • ΄ͱΜͲ͸খ͞ͳΦϒδΣΫτ: (<= 64 KB) ‣ ϑΝϛϦʔ͝ͱʹϦϯΫ͍ͯ͠ΔͨΊ -

    ྫ #1: ͋ΔςʔϒϧͷϨίʔυ100,000,000 ݅෼ͷΞυϨεͷϦετ͸ ෳ਺ͷΞυϨεςʔϒϧʹಡΈࠐ·ΕΔʢͦΕͧΕ͸ <= 64 KBʣ
  50. Tokyo/2010-03-03/04 Ωϟογϡ • ΄ͱΜͲ͸খ͞ͳΦϒδΣΫτ: (<= 64 KB) ‣ ϑΝϛϦʔ͝ͱʹϦϯΫ͍ͯ͠ΔͨΊ -

    ྫ #1: ͋ΔςʔϒϧͷϨίʔυ100,000,000 ݅෼ͷΞυϨεͷϦετ͸ ෳ਺ͷΞυϨεςʔϒϧʹಡΈࠐ·ΕΔʢͦΕͧΕ͸ <= 64 KBʣ - ྫ #2: ηοτ͸খ͞ͳΦϒδΣΫτʹѹॖɾ෼ࢄ͞Ε͍ͯΔ
  51. Tokyo/2010-03-03/04 Ωϟογϡ • ΄ͱΜͲ͸খ͞ͳΦϒδΣΫτ: (<= 64 KB) ‣ ϑΝϛϦʔ͝ͱʹϦϯΫ͍ͯ͠ΔͨΊ -

    ྫ #1: ͋ΔςʔϒϧͷϨίʔυ100,000,000 ݅෼ͷΞυϨεͷϦετ͸ ෳ਺ͷΞυϨεςʔϒϧʹಡΈࠐ·ΕΔʢͦΕͧΕ͸ <= 64 KBʣ - ྫ #2: ηοτ͸খ͞ͳΦϒδΣΫτʹѹॖɾ෼ࢄ͞Ε͍ͯΔ • ͓͓͖͍ΦϒδΣΫτ͸ϢʔβʔΦϒδΣΫτ:
  52. Tokyo/2010-03-03/04 Ωϟογϡ • ΄ͱΜͲ͸খ͞ͳΦϒδΣΫτ: (<= 64 KB) ‣ ϑΝϛϦʔ͝ͱʹϦϯΫ͍ͯ͠ΔͨΊ -

    ྫ #1: ͋ΔςʔϒϧͷϨίʔυ100,000,000 ݅෼ͷΞυϨεͷϦετ͸ ෳ਺ͷΞυϨεςʔϒϧʹಡΈࠐ·ΕΔʢͦΕͧΕ͸ <= 64 KBʣ - ྫ #2: ηοτ͸খ͞ͳΦϒδΣΫτʹѹॖɾ෼ࢄ͞Ε͍ͯΔ • ͓͓͖͍ΦϒδΣΫτ͸ϢʔβʔΦϒδΣΫτ: ‣ BLOBɹ
  53. Tokyo/2010-03-03/04 Ωϟογϡ • ΄ͱΜͲ͸খ͞ͳΦϒδΣΫτ: (<= 64 KB) ‣ ϑΝϛϦʔ͝ͱʹϦϯΫ͍ͯ͠ΔͨΊ -

    ྫ #1: ͋ΔςʔϒϧͷϨίʔυ100,000,000 ݅෼ͷΞυϨεͷϦετ͸ ෳ਺ͷΞυϨεςʔϒϧʹಡΈࠐ·ΕΔʢͦΕͧΕ͸ <= 64 KBʣ - ྫ #2: ηοτ͸খ͞ͳΦϒδΣΫτʹѹॖɾ෼ࢄ͞Ε͍ͯΔ • ͓͓͖͍ΦϒδΣΫτ͸ϢʔβʔΦϒδΣΫτ: ‣ BLOBɹ ‣ ϐΫνϟ
  54. Tokyo/2010-03-03/04 Ωϟογϡ • ΄ͱΜͲ͸খ͞ͳΦϒδΣΫτ: (<= 64 KB) ‣ ϑΝϛϦʔ͝ͱʹϦϯΫ͍ͯ͠ΔͨΊ -

    ྫ #1: ͋ΔςʔϒϧͷϨίʔυ100,000,000 ݅෼ͷΞυϨεͷϦετ͸ ෳ਺ͷΞυϨεςʔϒϧʹಡΈࠐ·ΕΔʢͦΕͧΕ͸ <= 64 KBʣ - ྫ #2: ηοτ͸খ͞ͳΦϒδΣΫτʹѹॖɾ෼ࢄ͞Ε͍ͯΔ • ͓͓͖͍ΦϒδΣΫτ͸ϢʔβʔΦϒδΣΫτ: ‣ BLOBɹ ‣ ϐΫνϟ ‣ ςΩετ
  55. Tokyo/2010-03-03/04 Ωϟογϡ • ΄ͱΜͲ͸খ͞ͳΦϒδΣΫτ: (<= 64 KB) ‣ ϑΝϛϦʔ͝ͱʹϦϯΫ͍ͯ͠ΔͨΊ -

    ྫ #1: ͋ΔςʔϒϧͷϨίʔυ100,000,000 ݅෼ͷΞυϨεͷϦετ͸ ෳ਺ͷΞυϨεςʔϒϧʹಡΈࠐ·ΕΔʢͦΕͧΕ͸ <= 64 KBʣ - ྫ #2: ηοτ͸খ͞ͳΦϒδΣΫτʹѹॖɾ෼ࢄ͞Ε͍ͯΔ • ͓͓͖͍ΦϒδΣΫτ͸ϢʔβʔΦϒδΣΫτ: ‣ BLOBɹ ‣ ϐΫνϟ ‣ ςΩετ ‣ ʢϨίʔυʣ «BLOBs»ͱ૯শ͢Δ
  56. Tokyo/2010-03-03/04 Ωϟογϡ • ελʔτΞοϓͰ֬อ͞ΕΔ • ΞϓϦέʔγϣϯ࣮ߦத, ॻ͖ࠐΈ, ύʔδ, ϑϥογϡ, ࠶഑

    ஔ͕܁Γฦ͞ΕΔ • FLUSH BUFFERS • «ԚΕͨ»ΦϒδΣΫτΛσΟεΫͷอଘ͢Δ͜ͱ
  57. Tokyo/2010-03-03/04 Ωϟογϡ • ελʔτΞοϓͰ֬อ͞ΕΔ • ΞϓϦέʔγϣϯ࣮ߦத, ॻ͖ࠐΈ, ύʔδ, ϑϥογϡ, ࠶഑

    ஔ͕܁Γฦ͞ΕΔ • FLUSH BUFFERS • «ԚΕͨ»ΦϒδΣΫτΛσΟεΫͷอଘ͢Δ͜ͱ • ͦͷޙ «ԚΕ͍ͯͳ͍»ͱ͍͏ҹ͕෇͚ΒΕΔ
  58. Tokyo/2010-03-03/04 Ωϟογϡ • ελʔτΞοϓͰ֬อ͞ΕΔ • ΞϓϦέʔγϣϯ࣮ߦத, ॻ͖ࠐΈ, ύʔδ, ϑϥογϡ, ࠶഑

    ஔ͕܁Γฦ͞ΕΔ • FLUSH BUFFERS • «ԚΕͨ»ΦϒδΣΫτΛσΟεΫͷอଘ͢Δ͜ͱ • ͦͷޙ «ԚΕ͍ͯͳ͍»ͱ͍͏ҹ͕෇͚ΒΕΔ • ͦΕʹΑΓ, ύʔδͯ͠΋ྑ͍ঢ়ଶʹͳΔ
  59. Tokyo/2010-03-03/04 Ωϟογϡ • ελʔτΞοϓͰ֬อ͞ΕΔ • ΞϓϦέʔγϣϯ࣮ߦத, ॻ͖ࠐΈ, ύʔδ, ϑϥογϡ, ࠶഑

    ஔ͕܁Γฦ͞ΕΔ • FLUSH BUFFERS • «ԚΕͨ»ΦϒδΣΫτΛσΟεΫͷอଘ͢Δ͜ͱ • ͦͷޙ «ԚΕ͍ͯͳ͍»ͱ͍͏ҹ͕෇͚ΒΕΔ • ͦΕʹΑΓ, ύʔδͯ͠΋ྑ͍ঢ়ଶʹͳΔ σΟεΫΞΫηε͸ϛϦඵͷੈք ෆඞཁʹFLUSH BUFFERSͯ͠͸͍͚ͳ͍
  60. Tokyo/2010-03-03/04 Ωϟογϡ • ঢ়گ: - ϩʔυ͠ͳ͚Ε͹ͳΒͳ͍ΦϒδΣΫτ͕͋Δ: Ϩίʔυ,ΞυϨεςʔϒϧ, ... - ॆ෼ͳεϖʔ

    ε͕ͳ͍ • ߦಈ: Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸? Repeat Ωϟογϡͷ10%Λύʔδ ΦϒδΣΫτΛΞϩέʔτ Until ॆ෼ͷεϖʔ ε
  61. Tokyo/2010-03-03/04 Ωϟογϡ • ঢ়گ: - ϩʔυ͠ͳ͚Ε͹ͳΒͳ͍ΦϒδΣΫτ͕͋Δ: Ϩίʔυ,ΞυϨεςʔϒϧ, ... - ॆ෼ͳεϖʔ

    ε͕ͳ͍ • ߦಈ: Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸? Repeat Ωϟογϡͷ10%Λύʔδ ΦϒδΣΫτΛΞϩέʔτ Until ॆ෼ͷεϖʔ ε
  62. Tokyo/2010-03-03/04 Ωϟογϡ • ঢ়گ: - ϩʔυ͠ͳ͚Ε͹ͳΒͳ͍ΦϒδΣΫτ͕͋Δ: Ϩίʔυ,ΞυϨεςʔϒϧ, ... - ॆ෼ͳεϖʔ

    ε͕ͳ͍ • ߦಈ: Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸? Repeat Ωϟογϡͷ10%Λύʔδ ΦϒδΣΫτΛΞϩέʔτ Until ॆ෼ͷεϖʔ ε
  63. Tokyo/2010-03-03/04 Repeat Ωϟογϡͷ10%Λύʔδ ΦϒδΣΫτΛΞϩέʔτ Until ॆ෼ͷεϖʔ ε Ωϟογϡ Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸ ?

    ֬อͨ͠Ωϟογϡ߹ܭͷ10% Ωϟογϡ͕1GBͷ৔߹,ΩϟογϡϚωʔδϟʔ͸ 100MBύʔδ͠Α͏ͱ͢Δ
  64. Tokyo/2010-03-03/04 Repeat Ωϟογϡͷ10%Λύʔδ ΦϒδΣΫτΛΞϩέʔτ Until ॆ෼ͷεϖʔ ε Ωϟογϡ Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸ ?

    ֬อͨ͠Ωϟογϡ߹ܭͷ10% Ωϟογϡ͕1GBͷ৔߹,ΩϟογϡϚωʔδϟʔ͸ 100MBύʔδ͠Α͏ͱ͢Δ ύʔδ
  65. Tokyo/2010-03-03/04 Repeat Ωϟογϡͷ10%Λύʔδ ΦϒδΣΫτΛΞϩέʔτ Until ॆ෼ͷεϖʔ ε Ωϟογϡ Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸ ?

    ֬อͨ͠Ωϟογϡ߹ܭͷ10% Ωϟογϡ͕1GBͷ৔߹,ΩϟογϡϚωʔδϟʔ͸ 100MBύʔδ͠Α͏ͱ͢Δ ύʔδ ԚΕ͍ͯͳ͍ΦϒδΣΫτΛύʔδ
  66. Tokyo/2010-03-03/04 Repeat Ωϟογϡͷ10%Λύʔδ ΦϒδΣΫτΛΞϩέʔτ Until ॆ෼ͷεϖʔ ε Ωϟογϡ Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸ ?

    ֬อͨ͠Ωϟογϡ߹ܭͷ10% Ωϟογϡ͕1GBͷ৔߹,ΩϟογϡϚωʔδϟʔ͸ 100MBύʔδ͠Α͏ͱ͢Δ ύʔδ ϝϞϦΛΞϩέʔτ ԚΕ͍ͯͳ͍ΦϒδΣΫτΛύʔδ
  67. Tokyo/2010-03-03/04 Repeat Ωϟογϡͷ10%Λύʔδ ΦϒδΣΫτΛΞϩέʔτ Until ॆ෼ͷεϖʔ ε Ωϟογϡ Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸ ?

    ֬อͨ͠Ωϟογϡ߹ܭͷ10% Ωϟογϡ͕1GBͷ৔߹,ΩϟογϡϚωʔδϟʔ͸ 100MBύʔδ͠Α͏ͱ͢Δ ύʔδ OK? ϝϞϦΛΞϩέʔτ ԚΕ͍ͯͳ͍ΦϒδΣΫτΛύʔδ
  68. Tokyo/2010-03-03/04 Repeat Ωϟογϡͷ10%Λύʔδ ΦϒδΣΫτΛΞϩέʔτ Until ॆ෼ͷεϖʔ ε Ωϟογϡ Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸ ?

    ֬อͨ͠Ωϟογϡ߹ܭͷ10% Ωϟογϡ͕1GBͷ৔߹,ΩϟογϡϚωʔδϟʔ͸ 100MBύʔδ͠Α͏ͱ͢Δ ύʔδ OK? ϝϞϦΛΞϩέʔτ ͸͍ ԚΕ͍ͯͳ͍ΦϒδΣΫτΛύʔδ
  69. Tokyo/2010-03-03/04 Repeat Ωϟογϡͷ10%Λύʔδ ΦϒδΣΫτΛΞϩέʔτ Until ॆ෼ͷεϖʔ ε Ωϟογϡ Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸ ?

    ֬อͨ͠Ωϟογϡ߹ܭͷ10% Ωϟογϡ͕1GBͷ৔߹,ΩϟογϡϚωʔδϟʔ͸ 100MBύʔδ͠Α͏ͱ͢Δ ύʔδ OK? ϝϞϦΛΞϩέʔτ FLUSH BUFFERS ͍͍͑ ͸͍ ԚΕ͍ͯͳ͍ΦϒδΣΫτΛύʔδ
  70. Tokyo/2010-03-03/04 Repeat Ωϟογϡͷ10%Λύʔδ ΦϒδΣΫτΛΞϩέʔτ Until ॆ෼ͷεϖʔ ε Ωϟογϡ Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸ ?

    ֬อͨ͠Ωϟογϡ߹ܭͷ10% Ωϟογϡ͕1GBͷ৔߹,ΩϟογϡϚωʔδϟʔ͸ 100MBύʔδ͠Α͏ͱ͢Δ ύʔδ OK? ϝϞϦΛΞϩέʔτ FLUSH BUFFERS ͍͍͑ ͸͍ ԚΕ͍ͯͳ͍ΦϒδΣΫτΛύʔδ
  71. Tokyo/2010-03-03/04 Ωϟογϡ Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸? v11͸2004ΑΓ΋ܶతʹ଎͘ͳͬͨ • 2004: ϋϯυϧ Mac ͱ࿈݁Ϧετ ➡

    ΦϒδΣΫτ͸ಈ͍ͨ ➡ 4D͸ϦετશମΛͨͲΔඞཁ͕͋ͬͨ ԚΕ͍ͯͳ͍ΦϒδΣΫτΛύʔδ
  72. Tokyo/2010-03-03/04 Ωϟογϡ Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸? v11͸2004ΑΓ΋ܶతʹ଎͘ͳͬͨ • 2004: ϋϯυϧ Mac ͱ࿈݁Ϧετ ➡

    ΦϒδΣΫτ͸ಈ͍ͨ ➡ 4D͸ϦετશମΛͨͲΔඞཁ͕͋ͬͨ • V11: ϙΠϯλͱҰछͷΞυϨεςʔϒϧ ➡ ΦϒδΣΫτ͸ಈ͔ͳ͍ ➡ ࠷େ3 ΞΫηεͰΦϒδΣΫτʹ౸ୡ ԚΕ͍ͯͳ͍ΦϒδΣΫτΛύʔδ
  73. Tokyo/2010-03-03/04 Ωϟογϡ Ωϟογϡ͕ϝϞϦΛඞཁͱ͢Δͱ͖͸? v11͸2004ΑΓ΋ܶతʹ଎͘ͳͬͨ • 2004: ϋϯυϧ Mac ͱ࿈݁Ϧετ ➡

    ΦϒδΣΫτ͸ಈ͍ͨ ➡ 4D͸ϦετશମΛͨͲΔඞཁ͕͋ͬͨ • V11: ϙΠϯλͱҰछͷΞυϨεςʔϒϧ ➡ ΦϒδΣΫτ͸ಈ͔ͳ͍ ➡ ࠷େ3 ΞΫηεͰΦϒδΣΫτʹ౸ୡ v11ͷ৽͍͠ΩϟογϡϝϞϦϚωʔδϟʔͷ͓͔͛ ԚΕ͍ͯͳ͍ΦϒδΣΫτΛύʔδ
  74. Tokyo/2010-03-03/04 Ωϟογϡ • 4D 32 Ϗοτ ➡ ࠷େ 2.5 GB

    ➡ OS 32/64 ʹؔ܎ͳ͘ ‣ ϋʔυίʔυ͞Εͨ஋ ‣ Ϣʔβʔ͕> 2.5 Λઃఆͨ͠৔߹͸Լํमਖ਼ ࠷େαΠζ͸?
  75. Tokyo/2010-03-03/04 Ωϟογϡ • 4D 32 Ϗοτ ➡ ࠷େ 2.5 GB

    ➡ OS 32/64 ʹؔ܎ͳ͘ ‣ ϋʔυίʔυ͞Εͨ஋ ‣ Ϣʔβʔ͕> 2.5 Λઃఆͨ͠৔߹͸Լํमਖ਼ • 4D 64 Ϗοτ 4D Server v12ͷΈ ࠷େαΠζ͸?
  76. Tokyo/2010-03-03/04 Ωϟογϡ • 4D 32 Ϗοτ ➡ ࠷େ 2.5 GB

    ➡ OS 32/64 ʹؔ܎ͳ͘ ‣ ϋʔυίʔυ͞Εͨ஋ ‣ Ϣʔβʔ͕> 2.5 Λઃఆͨ͠৔߹͸Լํमਖ਼ • 4D 64 Ϗοτ 4D Server v12ͷΈ ➡ «੍ݶͳ͠» ࠷େαΠζ͸?
  77. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ 4D Server ϓϦΤϯϓςΟϒ ίΦϖϥςΟϒ 19813 19814 ϓϩηε

    U1-1 Req1... ORDER BY (Table1) R2…⋯ R3 Ϣʔβʔ 1 ϓϩηε U1-1 ϓϩηε U1-1
  78. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ 44 ίΦϖϥςΟϒ ϓϩηε U1-1 ϓϩηε U1-1 Req1...

    R2…⋯ R3 ίΦϖϥςΟϒπΠϯϓϩηε͕࢖༻͢Δ΋ͷ: - τϦΨ - “αʔόʔͰ࣮ߦ” ϓϩύςΟ͕༗ޮʹ͞Εͨϝιου
  79. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ 44 ίΦϖϥςΟϒ ϓϩηε U1-1 ϓϩηε U1-1 Req1...

    R2…⋯ R3 ίΦϖϥςΟϒπΠϯϓϩηε͕࢖༻͢Δ΋ͷ: - τϦΨ - “αʔόʔͰ࣮ߦ” ϓϩύςΟ͕༗ޮʹ͞Εͨϝιου “αʔόʔͰ࣮ߦ” τϦΨ τϥϯβΫγϣϯεςʔτ ϨίʔυϩοΩϯά ϓϩηεηοτ ϓϩηε໋໊ηϨΫγϣϯ ΧϨϯτηϨΫγϣϯ ΧϨϯτϨίʔυ
  80. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ 44 ίΦϖϥςΟϒ ϓϩηε U1-1 ϓϩηε U1-1 Req1...

    R2…⋯ R3 ίΦϖϥςΟϒπΠϯϓϩηε͕࢖༻͢Δ΋ͷ: - τϦΨ - “αʔόʔͰ࣮ߦ” ϓϩύςΟ͕༗ޮʹ͞Εͨϝιου “αʔόʔͰ࣮ߦ” τϦΨ τϥϯβΫγϣϯεςʔτ ϨίʔυϩοΩϯά ϓϩηεηοτ ϓϩηε໋໊ηϨΫγϣϯ ΧϨϯτηϨΫγϣϯ ΧϨϯτϨίʔυ
  81. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ 44 ίΦϖϥςΟϒ ϓϩηε U1-1 ϓϩηε U1-1 Req1...

    R2…⋯ R3 ίΦϖϥςΟϒπΠϯϓϩηε͕࢖༻͢Δ΋ͷ: - τϦΨ - “αʔόʔͰ࣮ߦ” ϓϩύςΟ͕༗ޮʹ͞Εͨϝιου “αʔόʔͰ࣮ߦ” τϦΨ τϥϯβΫγϣϯεςʔτ ϨίʔυϩοΩϯά ϓϩηεηοτ ϓϩηε໋໊ηϨΫγϣϯ ΧϨϯτηϨΫγϣϯ ΧϨϯτϨίʔυ
  82. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ 44 ίΦϖϥςΟϒ ϓϩηε U1-1 ϓϩηε U1-1 Req1...

    R2…⋯ R3 ίΦϖϥςΟϒπΠϯϓϩηε͕࢖༻͢Δ΋ͷ: - τϦΨ - “αʔόʔͰ࣮ߦ” ϓϩύςΟ͕༗ޮʹ͞Εͨϝιου “αʔόʔͰ࣮ߦ” τϦΨ τϥϯβΫγϣϯεςʔτ ϨίʔυϩοΩϯά ϓϩηεηοτ ϓϩηε໋໊ηϨΫγϣϯ ΧϨϯτηϨΫγϣϯ ΧϨϯτϨίʔυ
  83. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ 44 ίΦϖϥςΟϒ ϓϩηε U1-1 ϓϩηε U1-1 Req1...

    R2…⋯ R3 ίΦϖϥςΟϒπΠϯϓϩηε͕࢖༻͢Δ΋ͷ: - τϦΨ - “αʔόʔͰ࣮ߦ” ϓϩύςΟ͕༗ޮʹ͞Εͨϝιου “αʔόʔͰ࣮ߦ” τϦΨ τϥϯβΫγϣϯεςʔτ ϨίʔυϩοΩϯά ϓϩηεηοτ ϓϩηε໋໊ηϨΫγϣϯ ΧϨϯτηϨΫγϣϯ ΧϨϯτϨίʔυ
  84. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ 44 ίΦϖϥςΟϒ ϓϩηε U1-1 ϓϩηε U1-1 Req1...

    R2…⋯ R3 ίΦϖϥςΟϒπΠϯϓϩηε͕࢖༻͢Δ΋ͷ: - τϦΨ - “αʔόʔͰ࣮ߦ” ϓϩύςΟ͕༗ޮʹ͞Εͨϝιου “αʔόʔͰ࣮ߦ” τϦΨ τϥϯβΫγϣϯεςʔτ ϨίʔυϩοΩϯά ϓϩηεηοτ ϓϩηε໋໊ηϨΫγϣϯ ΧϨϯτηϨΫγϣϯ ΧϨϯτϨίʔυ
  85. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ 44 ίΦϖϥςΟϒ ϓϩηε U1-1 ϓϩηε U1-1 Req1...

    R2…⋯ R3 ίΦϖϥςΟϒπΠϯϓϩηε͕࢖༻͢Δ΋ͷ: - τϦΨ - “αʔόʔͰ࣮ߦ” ϓϩύςΟ͕༗ޮʹ͞Εͨϝιου “αʔόʔͰ࣮ߦ” τϦΨ τϥϯβΫγϣϯεςʔτ ϨίʔυϩοΩϯά ϓϩηεηοτ ϓϩηε໋໊ηϨΫγϣϯ ΧϨϯτηϨΫγϣϯ ΧϨϯτϨίʔυ (*) τϦΨͷςʔϒϧͷΈ (*)
  86. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ 44 ίΦϖϥςΟϒ ϓϩηε U1-1 ϓϩηε U1-1 Req1...

    R2…⋯ R3 ίΦϖϥςΟϒπΠϯϓϩηε͕࢖༻͢Δ΋ͷ: - τϦΨ - “αʔόʔͰ࣮ߦ” ϓϩύςΟ͕༗ޮʹ͞Εͨϝιου “αʔόʔͰ࣮ߦ” τϦΨ τϥϯβΫγϣϯεςʔτ ϨίʔυϩοΩϯά ϓϩηεηοτ ϓϩηε໋໊ηϨΫγϣϯ ΧϨϯτηϨΫγϣϯ ΧϨϯτϨίʔυ (*) τϦΨͷςʔϒϧͷΈ (*)
  87. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ • ྫ: ϦϨʔτηϨΫγϣϯͷsumΛτϦΨͰܭࢉ ‣ ΫϥΠΞϯταΠυ: . .

    . QUERY([OrderLines];[OrderLines]_OrderID=[Order]ID) SAVE RECORD([Order]) . . . ‣ αʔόʔαΠυ («On save existing record») [Order]Total:=Sum([OrderLines]Price)
  88. Tokyo/2010-03-03/04 σʔλϕʔ είϯςΩετ • ྫ: ϦϨʔτηϨΫγϣϯͷsumΛτϦΨͰܭࢉ ‣ ΫϥΠΞϯταΠυ: . .

    . QUERY([OrderLines];[OrderLines]_OrderID=[Order]ID) SAVE RECORD([Order]) . . . ‣ αʔόʔαΠυ («On save existing record») [Order]Total:=Sum([OrderLines]Price) [OrderLines] ͷηϨΫγϣϯ͸ۭ
  89. Tokyo/2010-03-03/04 τϦΨ • (ಛੑͱ໨తΛߟྀ͢Δ) • ΫϥΠΞϯταʔόʔ: : ‣ ηϨΫγϣϯͱΧϨϯτϨίʔυ (ΧϨϯτςʔϒϧͷϨίʔυҎ֎)

    ‣ ΫϥΠΞϯτͱಉظ͕औΒΕ͍ͯͳ͍ => ࠶ݱ͢Δඞཁ͕͋Δ ϓϩηεηοτ,ϓϩηε໋໊ηϨΫγϣϯ,ϨίʔυϩοΩϯά,τϥϯβΫ ≠ 2004
  90. Tokyo/2010-03-03/04 τϦΨ • (ಛੑͱ໨తΛߟྀ͢Δ) • ΫϥΠΞϯταʔόʔ: : ‣ ηϨΫγϣϯͱΧϨϯτϨίʔυ (ΧϨϯτςʔϒϧͷϨίʔυҎ֎)

    ‣ ΫϥΠΞϯτͱಉظ͕औΒΕ͍ͯͳ͍ => ࠶ݱ͢Δඞཁ͕͋Δ ϓϩηεηοτ,ϓϩηε໋໊ηϨΫγϣϯ,ϨίʔυϩοΩϯά,τϥϯβΫ γϣϯεςʔτ͸ಉظ͕ͱΒΕ͍ͯΔ ≠ 2004
  91. Tokyo/2010-03-03/04 τϦΨ • (ಛੑͱ໨తΛߟྀ͢Δ) • ΫϥΠΞϯταʔόʔ: : ‣ ηϨΫγϣϯͱΧϨϯτϨίʔυ (ΧϨϯτςʔϒϧͷϨίʔυҎ֎)

    ‣ ΫϥΠΞϯτͱಉظ͕औΒΕ͍ͯͳ͍ => ࠶ݱ͢Δඞཁ͕͋Δ ϓϩηεηοτ,ϓϩηε໋໊ηϨΫγϣϯ,ϨίʔυϩοΩϯά,τϥϯβΫ γϣϯεςʔτ͸ಉظ͕ͱΒΕ͍ͯΔ • ෳ਺͕ “ಉ࣌ʹ૸Δ” (ίΦϖϥςΟϒεϨουͷϓʔϧͷதͰ) • ੍ݶ ≠ 2004
  92. Tokyo/2010-03-03/04 τϦΨ • (ಛੑͱ໨తΛߟྀ͢Δ) • ΫϥΠΞϯταʔόʔ: : ‣ ηϨΫγϣϯͱΧϨϯτϨίʔυ (ΧϨϯτςʔϒϧͷϨίʔυҎ֎)

    ‣ ΫϥΠΞϯτͱಉظ͕औΒΕ͍ͯͳ͍ => ࠶ݱ͢Δඞཁ͕͋Δ ϓϩηεηοτ,ϓϩηε໋໊ηϨΫγϣϯ,ϨίʔυϩοΩϯά,τϥϯβΫ γϣϯεςʔτ͸ಉظ͕ͱΒΕ͍ͯΔ • ෳ਺͕ “ಉ࣌ʹ૸Δ” (ίΦϖϥςΟϒεϨουͷϓʔϧͷதͰ) • ੍ݶ ‣ ίΦϖϥςΟϒ લड़ͷͱ͓Γ ≠ 2004
  93. Tokyo/2010-03-03/04 τϦΨ • (ಛੑͱ໨తΛߟྀ͢Δ) • ΫϥΠΞϯταʔόʔ: : ‣ ηϨΫγϣϯͱΧϨϯτϨίʔυ (ΧϨϯτςʔϒϧͷϨίʔυҎ֎)

    ‣ ΫϥΠΞϯτͱಉظ͕औΒΕ͍ͯͳ͍ => ࠶ݱ͢Δඞཁ͕͋Δ ϓϩηεηοτ,ϓϩηε໋໊ηϨΫγϣϯ,ϨίʔυϩοΩϯά,τϥϯβΫ γϣϯεςʔτ͸ಉظ͕ͱΒΕ͍ͯΔ • ෳ਺͕ “ಉ࣌ʹ૸Δ” (ίΦϖϥςΟϒεϨουͷϓʔϧͷதͰ) • ੍ݶ ‣ ίΦϖϥςΟϒ લड़ͷͱ͓Γ ‣ ࠷୹ͷ࣌ؒͰऴྃ͠ͳ͚Ε͹ͳΒͳ͍= ൚༻తͰͳ͍ ≠ 2004
  94. Tokyo/2010-03-03/04 εέδϡʔϥʔ • εέδϡʔϥʔͷ໨త ? • ͳͥv11ʹͳͬͯ΋εέδϡʔϥʔ͕ඞཁͳͷ͔ ? ‣ 4Dϥϯήʔδ͸εϨουηʔ

    ϑͰ͸ͳ͍͔Β • εέδϡʔϥʔͷٖࣅίʔυ: For 1͔Βϓϩηε਺·Ͱ If ϓϩηε͕஗Ԇ͋Δ͍͸ఀࢭ͞Ε͍ͯͳ͚Ε͹ ͦͷίʔυΛ 1 tick ࣮ߦ͢Δ(16 ms)
  95. Tokyo/2010-03-03/04 εέδϡʔϥʔ • 4D͸֤ϓϩηε1 tickͷపఈΛࢼΈΔ • εέδϡʔϥʔʹ੍ޚΛฦ͞ͳ͍ϓϩηε͸ଞ͢΂ ͯΛ๦֐͢ΔʢϢʔβʔΠϯλϑΣʔ ε΋ !ʣ:

    ‣ ΠϯλϓϦλϞʔυͰ͸େৎ෉ For 1͔Βϓϩηε਺·Ͱ If ϓϩηε͕஗Ԇ͋Δ͍͸ఀࢭ͞Ε͍ͯͳ͚Ε͹ ͦͷίʔυΛ 1 tick ࣮ߦ͢Δ(16 ms)
  96. Tokyo/2010-03-03/04 εέδϡʔϥʔ • 4D͸֤ϓϩηε1 tickͷపఈΛࢼΈΔ • εέδϡʔϥʔʹ੍ޚΛฦ͞ͳ͍ϓϩηε͸ଞ͢΂ ͯΛ๦֐͢ΔʢϢʔβʔΠϯλϑΣʔ ε΋ !ʣ:

    ‣ ΠϯλϓϦλϞʔυͰ͸େৎ෉ ‣ ίϯύΠϧϞʔυͰ͸ى͜ΓಘΔʢయܕతͳ ྫ͸IDLEΛίʔϧ͠ͳ͍ߴີ౓ϧʔ ϓʣ For 1͔Βϓϩηε਺·Ͱ If ϓϩηε͕஗Ԇ͋Δ͍͸ఀࢭ͞Ε͍ͯͳ͚Ε͹ ͦͷίʔυΛ 1 tick ࣮ߦ͢Δ(16 ms)
  97. Tokyo/2010-03-03/04 εέδϡʔϥʔ • 4D͸֤ϓϩηε1 tickͷపఈΛࢼΈΔ • εέδϡʔϥʔʹ੍ޚΛฦ͞ͳ͍ϓϩηε͸ଞ͢΂ ͯΛ๦֐͢ΔʢϢʔβʔΠϯλϑΣʔ ε΋ !ʣ:

    ‣ ΠϯλϓϦλϞʔυͰ͸େৎ෉ ‣ ίϯύΠϧϞʔυͰ͸ى͜ΓಘΔʢయܕతͳ ྫ͸IDLEΛίʔϧ͠ͳ͍ߴີ౓ϧʔ ϓʣ ‣ ϓϥάΠϯ͸ PA_Yield() ͋Δ͍͸ PA_PieldAbsolute()Λίʔϧ͢Δ΂͖ For 1͔Βϓϩηε਺·Ͱ If ϓϩηε͕஗Ԇ͋Δ͍͸ఀࢭ͞Ε͍ͯͳ͚Ε͹ ͦͷίʔυΛ 1 tick ࣮ߦ͢Δ(16 ms)
  98. Tokyo/2010-03-03/04 1.ΠϕϯτΛνΣοΫʢϚ΢ε, ΩʔϘʔυ, ...ʣ ➡ ద੾ͳ4Dϓϩηεʹ఻ୡ͢Δ 2.ͦͷޙ, ΞΫςΟϒϓϩηεʹ1 tickͣͭͷϧʔ ϓʹಥೖ

    εέδϡʔϥʔ ࣮ࡍʹ͸ For 1͔Βϓϩηε਺·Ͱ If ϓϩηε͕஗Ԇ͋Δ͍͸ఀࢭ͞Ε͍ͯͳ͚Ε͹ ͦͷίʔυΛ 1 tick ࣮ߦ͢Δ(16 ms)
  99. Tokyo/2010-03-03/04 While 4D ࣮ߦத // γεςϜΠϕϯτΛॲཧ Repeat If νΣοΫ_ִؒ ͕ܦաͨ͠

    If 4D͸ϏδʔͰ͋Δ λΠϜΞ΢τ = λΠϜΞ΢τ_࠷୹ Else λΠϜΞ΢τ = λΠϜΞ΢τ_࠷௕ End if // ͜͜ͰγεςϜʹ੍ޚΛฦ͢ Get Πϕϯτ͋Δ͍͸ λΠϜΞ΢τ ·Ͱ଴ػ If Πϕϯτ͸4Dϓϩηεʹؔ܎ Pass ΠϕϯτΛϓϩηεʹ఻ୡ End if End if Until Πϕϯτ͕ͳ͍ // ͦΕͧΕͷ4Dϓϩηεʹ࣌ؒΛ༩͑Δ For 4D ϓϩηεͦΕͧΕʹ͖ͭ Give ࠷௿ 1 tick ΞΫςΟϒϓϩηεΛ࣮ߦ End while
  100. Tokyo/2010-03-03/04 While 4D ࣮ߦத // γεςϜΠϕϯτΛॲཧ Repeat If νΣοΫ_ִؒ ͕ܦաͨ͠

    If 4D͸ϏδʔͰ͋Δ λΠϜΞ΢τ = λΠϜΞ΢τ_࠷୹ Else λΠϜΞ΢τ = λΠϜΞ΢τ_࠷௕ End if // ͜͜ͰγεςϜʹ੍ޚΛฦ͢ Get Πϕϯτ͋Δ͍͸ λΠϜΞ΢τ ·Ͱ଴ػ If Πϕϯτ͸4Dϓϩηεʹؔ܎ Pass ΠϕϯτΛϓϩηεʹ఻ୡ End if End if Until Πϕϯτ͕ͳ͍ // ͦΕͧΕͷ4Dϓϩηεʹ࣌ؒΛ༩͑Δ For 4D ϓϩηεͦΕͧΕʹ͖ͭ Give ࠷௿ 1 tick ΞΫςΟϒϓϩηεΛ࣮ߦ End while For 1͔Βϓϩηε਺·Ͱ If ϓϩηε͕஗Ԇ͋Δ͍͸ఀࢭ͞Ε͍ͯͳ͚Ε͹ ͦͷίʔυΛ 1 tick ࣮ߦ͢Δ(16 ms)
  101. Tokyo/2010-03-03/04 While 4D ࣮ߦத // γεςϜΠϕϯτΛॲཧ Repeat If νΣοΫ_ִؒ ͕ܦաͨ͠

    If 4D͸ϏδʔͰ͋Δ λΠϜΞ΢τ = λΠϜΞ΢τ_࠷୹ Else λΠϜΞ΢τ = λΠϜΞ΢τ_࠷௕ End if // ͜͜ͰγεςϜʹ੍ޚΛฦ͢ Get Πϕϯτ͋Δ͍͸ λΠϜΞ΢τ ·Ͱ଴ػ If Πϕϯτ͸4Dϓϩηεʹؔ܎ Pass ΠϕϯτΛϓϩηεʹ఻ୡ End if End if Until Πϕϯτ͕ͳ͍ // ͦΕͧΕͷ4Dϓϩηεʹ࣌ؒΛ༩͑Δ For 4D ϓϩηεͦΕͧΕʹ͖ͭ Give ࠷௿ 1 tick ΞΫςΟϒϓϩηεΛ࣮ߦ End while
  102. Tokyo/2010-03-03/04 While 4D ࣮ߦத // γεςϜΠϕϯτΛॲཧ Repeat If νΣοΫ_ִؒ ͕ܦաͨ͠

    If 4D͸ϏδʔͰ͋Δ λΠϜΞ΢τ = λΠϜΞ΢τ_࠷୹ Else λΠϜΞ΢τ = λΠϜΞ΢τ_࠷௕ End if // ͜͜ͰγεςϜʹ੍ޚΛฦ͢ Get Πϕϯτ͋Δ͍͸ λΠϜΞ΢τ ·Ͱ଴ػ If Πϕϯτ͸4Dϓϩηεʹؔ܎ Pass ΠϕϯτΛϓϩηεʹ఻ୡ End if End if Until Πϕϯτ͕ͳ͍ // ͦΕͧΕͷ4Dϓϩηεʹ࣌ؒΛ༩͑Δ For 4D ϓϩηεͦΕͧΕʹ͖ͭ Give ࠷௿ 1 tick ΞΫςΟϒϓϩηεΛ࣮ߦ End while
  103. Tokyo/2010-03-03/04 While 4D ࣮ߦத // γεςϜΠϕϯτΛॲཧ Repeat If νΣοΫ_ִؒ ͕ܦաͨ͠

    If 4D͸ϏδʔͰ͋Δ λΠϜΞ΢τ = λΠϜΞ΢τ_࠷୹ Else λΠϜΞ΢τ = λΠϜΞ΢τ_࠷௕ End if // ͜͜ͰγεςϜʹ੍ޚΛฦ͢ Get Πϕϯτ͋Δ͍͸ λΠϜΞ΢τ ·Ͱ଴ػ If Πϕϯτ͸4Dϓϩηεʹؔ܎ Pass ΠϕϯτΛϓϩηεʹ఻ୡ End if End if Until Πϕϯτ͕ͳ͍ // ͦΕͧΕͷ4Dϓϩηεʹ࣌ؒΛ༩͑Δ For 4D ϓϩηεͦΕͧΕʹ͖ͭ Give ࠷௿ 1 tick ΞΫςΟϒϓϩηεΛ࣮ߦ End while
  104. Tokyo/2010-03-03/04 While 4D ࣮ߦத // γεςϜΠϕϯτΛॲཧ Repeat If νΣοΫ_ִؒ ͕ܦաͨ͠

    If 4D͸ϏδʔͰ͋Δ λΠϜΞ΢τ = λΠϜΞ΢τ_࠷୹ Else λΠϜΞ΢τ = λΠϜΞ΢τ_࠷௕ End if // ͜͜ͰγεςϜʹ੍ޚΛฦ͢ Get Πϕϯτ͋Δ͍͸ λΠϜΞ΢τ ·Ͱ଴ػ If Πϕϯτ͸4Dϓϩηεʹؔ܎ Pass ΠϕϯτΛϓϩηεʹ఻ୡ End if End if Until Πϕϯτ͕ͳ͍ // ͦΕͧΕͷ4Dϓϩηεʹ࣌ؒΛ༩͑Δ For 4D ϓϩηεͦΕͧΕʹ͖ͭ Give ࠷௿ 1 tick ΞΫςΟϒϓϩηεΛ࣮ߦ End while SET DATABASE PARAMETER 4D Server Scheduler 4D Remote Scheduler 4D Local Mode Scheduler
  105. Tokyo/2010-03-03/04 εέδϡʔϥʔ While 4D ࣮ߦத // γεςϜΠϕϯτΛॲཧ Repeat If νΣοΫ_ִؒ

    ͕ܦաͨ͠ If 4D͸ϏδʔͰ͋Δ λΠϜΞ΢τ = λΠϜΞ΢τ_࠷୹ Else λΠϜΞ΢τ = λΠϜΞ΢τ_࠷௕ End if // ͜͜ͰγεςϜʹ੍ޚΛฦ͢ Get Πϕϯτ͋Δ͍͸ λΠϜΞ΢τ ·Ͱ଴ػ If Πϕϯτ͸4Dϓϩηεʹؔ܎ Pass ΠϕϯτΛϓϩηεʹ఻ୡ End if End if Until Πϕϯτ͕ͳ͍ // ͦΕͧΕͷ4Dϓϩηεʹ࣌ؒΛ༩͑Δ For 4D ϓϩηεͦΕͧΕʹ͖ͭ Give ࠷௿ 1 tick ΞΫςΟϒϓϩηεΛ࣮ߦ End while
  106. Tokyo/2010-03-03/04 εέδϡʔϥʔ: 4DΛ࠷ߴʹ While 4D ࣮ߦத // γεςϜΠϕϯτΛॲཧ Repeat If

    5 ticks ͕ܦաͨ͠ If 4D͸ϏδʔͰ͋Δ λΠϜΞ΢τ = 0 tick Else λΠϜΞ΢τ = 1 ticks End if // ͜͜ͰγεςϜʹ੍ޚΛฦ͢ Get Πϕϯτ͋Δ͍͸ λΠϜΞ΢τ ·Ͱ଴ػ If Πϕϯτ͸4Dϓϩηεʹؔ܎ Pass ΠϕϯτΛϓϩηεʹ఻ୡ End if End if Until Πϕϯτ͕ͳ͍ // ͦΕͧΕͷ4Dϓϩηεʹ࣌ؒΛ༩͑Δ For 4D ϓϩηεͦΕͧΕʹ͖ͭ Give ࠷௿ 1 tick ΞΫςΟϒϓϩηεΛ࣮ߦ End while
  107. Tokyo/2010-03-03/04 εέδϡʔϥʔ: 4DΛඪ४ʹ While 4D ࣮ߦத // γεςϜΠϕϯτΛॲཧ Repeat If

    0 ticks ͕ܦաͨ͠ If 4D͸ϏδʔͰ͋Δ λΠϜΞ΢τ = 0 tick Else λΠϜΞ΢τ = 8 ticks End if // ͜͜ͰγεςϜʹ੍ޚΛฦ͢ Get Πϕϯτ͋Δ͍͸ λΠϜΞ΢τ ·Ͱ଴ػ If Πϕϯτ͸4Dϓϩηεʹؔ܎ Pass ΠϕϯτΛϓϩηεʹ఻ୡ End if End if Until Πϕϯτ͕ͳ͍ // ͦΕͧΕͷ4Dϓϩηεʹ࣌ؒΛ༩͑Δ For 4D ϓϩηεͦΕͧΕʹ͖ͭ Give ࠷௿ 1 tick ΞΫςΟϒϓϩηεΛ࣮ߦ End while
  108. Tokyo/2010-03-03/04 While 4D ࣮ߦத // γεςϜΠϕϯτΛॲཧ Repeat If 0 ticks

    ͕ܦաͨ͠ If 4D͸ϏδʔͰ͋Δ λΠϜΞ΢τ = 1 tick Else λΠϜΞ΢τ = 16 ticks End if // ͜͜ͰγεςϜʹ੍ޚΛฦ͢ Get Πϕϯτ͋Δ͍͸ λΠϜΞ΢τ ·Ͱ଴ػ If Πϕϯτ͸4Dϓϩηεʹؔ܎ Pass ΠϕϯτΛϓϩηεʹ఻ୡ End if End if Until Πϕϯτ͕ͳ͍ // ͦΕͧΕͷ4Dϓϩηεʹ࣌ؒΛ༩͑Δ For 4D ϓϩηεͦΕͧΕʹ͖ͭ Give ࠷௿ 1 tick ΞΫςΟϒϓϩηεΛ࣮ߦ End while εέδϡʔϥʔ: 4DΛ࠷௿ʹ
  109. Tokyo/2010-03-03/04 εέδϡʔϥʔ • SET DATABASE PARAMETERʢείʔ ϓ;஋ʣ ‣ είʔ ϓ:

    - 4D Server εέδϡʔϥʔ - 4D Remote εέδϡʔϥʔ - 4D Local Mode εέδϡʔϥʔ νϡʔχϯά
  110. Tokyo/2010-03-03/04 εέδϡʔϥʔ • SET DATABASE PARAMETERʢείʔ ϓ;஋ʣ ‣ είʔ ϓ:

    - 4D Server εέδϡʔϥʔ - 4D Remote εέδϡʔϥʔ - 4D Local Mode εέδϡʔϥʔ ‣ ஋: - 16ਐ਺Ͱදه: 0x00mmMMBB ‣ λΠϜΞ΢τ_࠷୹: 0 ͔Β 100 (0x00 ͔Β 0x64) ‣ λΠϜΞ΢τ_࠷௕: 0 ͔Β 100 (0x00 ͔Β 0x64) ‣ νΣοΫ_ִؒ: 0 ͔Β 20 (0x00 ͔Β 0x14) νϡʔχϯά
  111. Tokyo/2010-03-03/04 εέδϡʔϥʔ • SET DATABASE PARAMETERʢείʔ ϓ;஋ʣ ‣ είʔ ϓ:

    - 4D Server εέδϡʔϥʔ - 4D Remote εέδϡʔϥʔ - 4D Local Mode εέδϡʔϥʔ ‣ ஋: - 16ਐ਺Ͱදه: 0x00mmMMBB ‣ λΠϜΞ΢τ_࠷୹: 0 ͔Β 100 (0x00 ͔Β 0x64) ‣ λΠϜΞ΢τ_࠷௕: 0 ͔Β 100 (0x00 ͔Β 0x64) ‣ νΣοΫ_ִؒ: 0 ͔Β 20 (0x00 ͔Β 0x14) - σϑΥϧτ஋: -1ʢ࠷ߴ/ӈʣ-2ʢඪ४/தԝʣ-3ʢ࠷௿/ࠨʣ νϡʔχϯά
  112. Tokyo/2010-03-03/04 εέδϡʔϥʔ • SET DATABASE PARAMETERʢείʔ ϓ;஋ʣ ‣ είʔ ϓ:

    - 4D Server εέδϡʔϥʔ - 4D Remote εέδϡʔϥʔ - 4D Local Mode εέδϡʔϥʔ ‣ ஋: - 16ਐ਺Ͱදه: 0x00mmMMBB ‣ λΠϜΞ΢τ_࠷୹: 0 ͔Β 100 (0x00 ͔Β 0x64) ‣ λΠϜΞ΢τ_࠷௕: 0 ͔Β 100 (0x00 ͔Β 0x64) ‣ νΣοΫ_ִؒ: 0 ͔Β 20 (0x00 ͔Β 0x14) - σϑΥϧτ஋: -1ʢ࠷ߴ/ӈʣ-2ʢඪ४/தԝʣ-3ʢ࠷௿/ࠨʣ • ࣮ߦதͷΤϯδϯʹϩʔΧϧͷ஋,อଘ͞Εͳ͍ νϡʔχϯά
  113. 4D v11 SQL in Depth #2 • σʔλϕʔείϯςΩετʢτϦΨ, ...ʣ •

    εέδϡʔϥʔΛཧղ͢Δ • ελοΫʢϝϞϦʣ
  114. Tokyo/2010-03-03/04 ελοΫͱ͸ ? • ϝϞϦͷྖҬ • ίʔυͷ࣮ߦʹෆՄܽͳ «ΦϒδΣΫτ» Λऩ༰ •

    LIFOελοΫ: ‣ ฦΓ஋͕ऩ༰͞ΕΔ৔ॴ ‣ ύϥϝʔλʔ ‣ ϩʔΧϧม਺ ‣ ʢαϒϧʔνϯຖʣ
  115. Tokyo/2010-03-03/04 ελοΫͷαΠζ ϓϦΤϯϓςΟϒ εϨου: σϑΥϧταΠζ OS αΠζ Windows 1 MB

    Leopard 512 KB Snow Leopard 1 MB • DB4D αʔόʔ • SQL ωοτηογϣϯϚωʔδϟʔ • SQL ωοτίωΫγϣϯ • ༧උ SQL • ΫϥΠΞϯτάϩʔόϧϓϩηεͷϓϦΤϯϓςΟ ϒπΠϯ
  116. Tokyo/2010-03-03/04 ελοΫͷαΠζ ϓϦΤϯϓςΟϒ εϨου: σϑΥϧταΠζ OS αΠζ Windows 1 MB

    Leopard 512 KB Snow Leopard 1 MB • DB4D αʔόʔ • SQL ωοτηογϣϯϚωʔδϟʔ • SQL ωοτίωΫγϣϯ • ༧උ SQL • ΫϥΠΞϯτάϩʔόϧϓϩηεͷϓϦΤϯϓςΟ ϒπΠϯ GET/SET DATABASE PARAMETER(53;όΠτ਺)
  117. Tokyo/2010-03-03/04 ελοΫͷαΠζ • 4DίʔυΛ࣮ߦ͢ΔͨΊ • ىݯ: ‣ ϥϯήʔδ - New

    process / Execute on server - ࣗಈ ‣ Web/SOAP αʔόʔϓϩηε ‣ ϝχϡʔΞΠςϜͷϓϩύςΟ, ... ‣ On exit σʔλϕʔεϝιου ‣ ಺෦ίʔυ - ϥϯλΠϜΤΫεϓϩʔϥʔ, ϦϞʔτ؅ཧը໘, SQL ϓϩηε, ... ίΦϖϥςΟϒεϨου
  118. Tokyo/2010-03-03/04 ελοΫͷαΠζ • ࠷ऴతʹ഑෼͞ΕΔ஋͸ৗʹ૿ྔ͞Ε͍ͯΔ ‣ Windows - realSize = requested

    + 40 KB ‣ Mac - realSize = requested + (requested / 2) + 128 KB ίΦϖϥςΟϒεϨου
  119. Tokyo/2010-03-03/04 ελοΫͷαΠζ • ࠷ऴతʹ഑෼͞ΕΔ஋͸ৗʹ૿ྔ͞Ε͍ͯΔ ‣ Windows - realSize = requested

    + 40 KB ‣ Mac - realSize = requested + (requested / 2) + 128 KB • 512 KBཁٻͨ͠৔߹, ഑෼͞ΕΔͷ͸: ‣ Windows Ͱ͸ 552 KB ‣ Mac Ͱ͸ 896 KB ίΦϖϥςΟϒεϨου
  120. Tokyo/2010-03-03/04 ελοΫͷαΠζ ίΦϖϥςΟϒεϨου New process() ͱελοΫ New process() ͱελοΫ New

    process() ͱελοΫ New process() ͱελοΫ ཁٻ஋ (rs) ϓϥοτϑΥ ʔϜ ࠶ఆٛ ഑෼஋ 0 Windows 512 KB 552 KB 0 Mac 512 KB 896 KB > 0 ͓Αͼ < 16 KB Windows 16 KB 56 KB > 0 ͓Αͼ < 16 KB Mac 16 KB 152 KB > 16 KB Windows มߋͳ͠ rs + 40 KB > 16 KB Mac OS มߋͳ͠ rs + (rs/2) + 128 KB < 0 Windows Mac มߋͳ͠ rs + 40 KB rs + (rs/2) + 128 KB ઈରʹμϝ. ྫ͑͹, -128*1024 Λཁٻͨ͠৔߹, 4D͸4GBΛ഑෼͠Α͏ͱͯ͠͠· ͏ʢූ߸͖ͭ/ූ߸ͳ͠ͷม׵ʣ ઈରʹμϝ. ྫ͑͹, -128*1024 Λཁٻͨ͠৔߹, 4D͸4GBΛ഑෼͠Α͏ͱͯ͠͠· ͏ʢූ߸͖ͭ/ූ߸ͳ͠ͷม׵ʣ ઈରʹμϝ. ྫ͑͹, -128*1024 Λཁٻͨ͠৔߹, 4D͸4GBΛ഑෼͠Α͏ͱͯ͠͠· ͏ʢූ߸͖ͭ/ූ߸ͳ͠ͷม׵ʣ ઈରʹμϝ. ྫ͑͹, -128*1024 Λཁٻͨ͠৔߹, 4D͸4GBΛ഑෼͠Α͏ͱͯ͠͠· ͏ʢූ߸͖ͭ/ූ߸ͳ͠ͷม׵ʣ
  121. Tokyo/2010-03-03/04 ελοΫͷαΠζ ίΦϖϥςΟϒεϨου New process() ͱελοΫ New process() ͱελοΫ New

    process() ͱελοΫ New process() ͱελοΫ ཁٻ஋ (rs) ϓϥοτϑΥ ʔϜ ࠶ఆٛ ഑෼஋ 0 Windows 512 KB 552 KB 0 Mac 512 KB 896 KB > 0 ͓Αͼ < 16 KB Windows 16 KB 56 KB > 0 ͓Αͼ < 16 KB Mac 16 KB 152 KB > 16 KB Windows มߋͳ͠ rs + 40 KB > 16 KB Mac OS มߋͳ͠ rs + (rs/2) + 128 KB < 0 Windows Mac มߋͳ͠ rs + 40 KB rs + (rs/2) + 128 KB ઈରʹμϝ. ྫ͑͹, -128*1024 Λཁٻͨ͠৔߹, 4D͸4GBΛ഑෼͠Α͏ͱͯ͠͠· ͏ʢූ߸͖ͭ/ූ߸ͳ͠ͷม׵ʣ ઈରʹμϝ. ྫ͑͹, -128*1024 Λཁٻͨ͠৔߹, 4D͸4GBΛ഑෼͠Α͏ͱͯ͠͠· ͏ʢූ߸͖ͭ/ූ߸ͳ͠ͷม׵ʣ ઈରʹμϝ. ྫ͑͹, -128*1024 Λཁٻͨ͠৔߹, 4D͸4GBΛ഑෼͠Α͏ͱͯ͠͠· ͏ʢූ߸͖ͭ/ූ߸ͳ͠ͷม׵ʣ ઈରʹμϝ. ྫ͑͹, -128*1024 Λཁٻͨ͠৔߹, 4D͸4GBΛ഑෼͠Α͏ͱͯ͠͠· ͏ʢූ߸͖ͭ/ූ߸ͳ͠ͷม׵ʣ Execute on serverʹ-1͸New processʹ0ͱಉ͡
  122. Tokyo/2010-03-03/04 ελοΫͷαΠζ • σϑΥϧτ஋: ‣ '4STK' Ϧιʔ ε ίΦϖϥςΟϒεϨου ID

    ໊শ ஋ 1 On event call 512 KB 2 On serial port call 512 KB 3 Exec on server, on client, ϝιου࣮ߦ, ϚΫϩ 512 KB 4 ϝχϡʔ৽ϓϩηε 512 KB 5 αʔόʔλεΫ 256 KB 6 چɾόοΫΞοϓ 512 KB 7 چɾ෮ݩ 512 KB 8 Web 256 KB 9 Server event loop, cache, runtime explorer 512 KB 10 ΞοϓϧΠϕϯτ 512 KB
  123. Tokyo/2010-03-03/04 ελοΫͷαΠζ • σϑΥϧτ஋: ‣ '4STK' Ϧιʔ ε ίΦϖϥςΟϒεϨου ID

    ໊শ ஋ 1 On event call 512 KB 2 On serial port call 512 KB 3 Exec on server, on client, ϝιου࣮ߦ, ϚΫϩ 512 KB 4 ϝχϡʔ৽ϓϩηε 512 KB 5 αʔόʔλεΫ 256 KB 6 چɾόοΫΞοϓ 512 KB 7 چɾ෮ݩ 512 KB 8 Web 256 KB 9 Server event loop, cache, runtime explorer 512 KB 10 ΞοϓϧΠϕϯτ 512 KB ΫϥΠΞϯτάϩʔόϧϓϩηε ͷαʔόʔίΦϖϥςΟϒπΠϯ
  124. Tokyo/2010-03-03/04 ελοΫͷαΠζ • σϑΥϧτ஋: ‣ '4STK' Ϧιʔ ε ίΦϖϥςΟϒεϨου ID

    ໊শ ஋ 1 On event call 512 KB 2 On serial port call 512 KB 3 Exec on server, on client, ϝιου࣮ߦ, ϚΫϩ 512 KB 4 ϝχϡʔ৽ϓϩηε 512 KB 5 αʔόʔλεΫ 256 KB 6 چɾόοΫΞοϓ 512 KB 7 چɾ෮ݩ 512 KB 8 Web 256 KB 9 Server event loop, cache, runtime explorer 512 KB 10 ΞοϓϧΠϕϯτ 512 KB ΫϥΠΞϯτάϩʔόϧϓϩηε ͷαʔόʔίΦϖϥςΟϒπΠϯ ࣮ࡍͷ஋ 552-896 KB 552-896 KB 552-896 KB 552-896 KB 296-512 KB 552-896 KB 552-896 KB 296-512 KB 552-896 KB 552-896 KB
  125. Tokyo/2010-03-03/04 4D Server Operating System Cooperatives Preemptives Core 1 Core

    2 Core 3 Core 4 Scheduler 100 ΫϥΠΞϯτ - 2 άϩʔόϧϓϩηε / ΫϥΠΞϯτ ɹ αʔόʔͷπΠϯεϨου͕઎༗͢ΔϝϞϦͷαΠζ͸?
  126. Tokyo/2010-03-03/04 4D Server Operating System Cooperatives Preemptives Core 1 Core

    2 Core 3 Core 4 Scheduler 100 ΫϥΠΞϯτ - 2 άϩʔόϧϓϩηε / ΫϥΠΞϯτ ɹ αʔόʔͷπΠϯεϨου͕઎༗͢ΔϝϞϦͷαΠζ͸? 258 MB (W) 300 MB (SL) 200 MB (L)
  127. Tokyo/2010-03-03/04 4D Server Operating System Cooperatives Preemptives Core 1 Core

    2 Core 3 Core 4 Scheduler 100 ΫϥΠΞϯτ - 2 άϩʔόϧϓϩηε / ΫϥΠΞϯτ «Begin SQL» Λ֤ϓϩηεͰ࣮ߦͨ͠৔߹ αʔόʔͷπΠϯεϨου͕઎༗͢ΔϝϞϦͷαΠζ͸?
  128. Tokyo/2010-03-03/04 4D Server Operating System Cooperatives Preemptives Core 1 Core

    2 Core 3 Core 4 Scheduler 100 ΫϥΠΞϯτ - 2 άϩʔόϧϓϩηε / ΫϥΠΞϯτ «Begin SQL» Λ֤ϓϩηεͰ࣮ߦͨ͠৔߹ αʔόʔͷπΠϯεϨου͕઎༗͢ΔϝϞϦͷαΠζ͸?
  129. Tokyo/2010-03-03/04 4D Server Operating System Cooperatives Preemptives Core 1 Core

    2 Core 3 Core 4 Scheduler 100 ΫϥΠΞϯτ - 2 άϩʔόϧϓϩηε / ΫϥΠΞϯτ «Begin SQL» Λ֤ϓϩηεͰ࣮ߦͨ͠৔߹ αʔόʔͷπΠϯεϨου͕઎༗͢ΔϝϞϦͷαΠζ͸? 458 MB (W) 500 MB (SL) 300 MB (L)
  130. 4D v11 SQL in Depth #2 • σʔλϕʔείϯςΩετʢτϦΨ, ...ʣ •

    εέδϡʔϥʔΛཧղ͢Δ • ελοΫʢϝϞϦʣ
  131. 4D v11 SQL in Depth #2 • σʔλϕʔείϯςΩετʢτϦΨ, ...ʣ •

    εέδϡʔϥʔΛཧղ͢Δ • ελοΫʢϝϞϦʣ • ύϥμΠϜγϑτ
  132. Tokyo/2010-03-03/04 ഇࢭ༧ఆ • 4D஀ੜ͔Β25೥͕ܦա ! • ͜ͷؒʹछʑͷίϯηϓτ͸ਐԽͨ͠ • OS͕มΘͬͨ, ͜Ε͔Β΋มΘΓଓ͚Δ

    ‣ 68k, PPC, x86, 64Bits ‣ OS9, OSX, Carbon, Cocoa • 4Dίʔυͷޓ׵ੑ͕ࣦΘΕͯ͸͍͚ͳ͍ • ͔͠͠, ͦ͏͸͍ͬͯ΋...
  133. Tokyo/2010-03-03/04 4D Draw • QuickDrawΛ࢖༻͍ͯ͠Δ • AlturaͰΤϛϡϨʔγϣϯ • ࠲ඪܥʹ੔਺Λ࢖༻, ϑΥϯτ൪߸,

    ໛༷ύλʔϯ, ... • ݱߦͷը૾ܗ͕ࣜ։͚ͳ͍, ಠࣗͷϑΥʔϚοτΛ࢖༻ • 4D DrawจॻΛ4Dͷ֎෦Ͱฤू͢Δज़͕ͳ͍
  134. Tokyo/2010-03-03/04 SVG • CoreGraphics & CoreText, GDI+Λ࢖༻ • ඪ४ςΩετܗࣜ (xml)

    • ߴ౓ͳΤϑΣΫτ: άϥσʔγϣϯ, ಁ໌౓, ϨΠϠʔ, ճస, มܗ, ૊ΈࠐΈ,... • 4DϐΫνϟૢ࡞ίϚϯυ͸͢΂ͯͦͷ··࢖༻Ͱ͖Δ • ϑΥʔϜΦϒδΣΫτͱͯ͠දࣔ΍ૢ࡞΋Ͱ͖Δ ‣ MiniDraw (v12) • ݄̍, SVGϫʔΩϯάάϧʔ ϓʹIEνʔϜ͕Ճೖ !
  135. Tokyo/2010-03-03/04 4D Open • 4D Open͸4D v11Ͱ΋ಈ࡞͢Δ ‣ ͨͩ͠ΠϯλϓϦλϞʔυͷΈ •

    ͞·͟·ͳํ๏Ͱஔ͖׵͑ΒΕΔ: ‣ HTTP - DOM Parse XML source( «http://site.com») ‣ WebαʔϏε ‣ SQLύεεϧʔ ‣ ෳ੡ͱಉظ (v12)
  136. Tokyo/2010-03-03/04 PICT • 4D͸WindowsͰ΋ը૾ΛPICTͰอଘ͍ͯͨ͠ • 4D v11͸PICT͕౉͞Εͨͱ͖͚ͩPICTΛ࢖༻͢Δ • Apple͸PICTϑΥʔϚοτΛഇࢭ͢Δ༧ఆ •

    4D͸AppleʹཔͬͯMacͰPICTΛղಡ͍ͯ͠Δ • 4D͸Altura·ͨ͸QuickTimeʹཔͬͯWindowsͰ PICTΛղಡ͍ͯ͠Δ • CONVERT PICTUREΛਪ঑ • BLOB TO PICTURE( «.4dblob»)
  137. Tokyo/2010-03-03/04 uickTime • QuickTime ͸͍·΍ಈըॲཧʹ஫ྗ͍ͯ͠Δٕज़ • 4D v11͸QuickTimeΛ΋͸΍ඞཁͱ͸͠ͳ͍ • 4D

    v12͸ImageIO͓Αͼ Windows Imaging Component (WIC) Λαϙʔτ • QuickTimeΛ࢖༻͢ΔίϚϯυ͸4D v12Ͱ͢΂ͯ઀಄ ࣙ‘QT’͕෇͖, ഇࢭ༧ఆʹ ‣ QT COMPRESS PICTURE ‣ QT LOAD COMPRESSED PICTURE FROM FILE ‣ QT COMPRESS PICTURE FILE ‣ CONVERT PICTURE, READ PICTURE FILE, WRITE PICTURE FILEͰ୅༻
  138. Tokyo/2010-03-03/04 Ϧιʔ ε • UnicodeඇରԠ, Ϧιʔ εͷ্ݶ͸2727ݸ·ͨ͸16MB • Apple͸αϙʔτΛதࢭ, WindowsΤσΟλແ͠

    • ςΩετ͸xliff, ϐΫνϟ͸ png͕ओྲྀ • ϑΥʔϜΤσΟλͱϥϯήʔδͰxliffͱϐΫνϟϑΝΠϧ Λαϙʔτ • 4D͸͍ͣΕϦιʔ εͷॻ͖ग़͕͠ෆՄೳʹ • ಡΈऔΓ͸౰໘Ͱ͖Δ͸͕ͣͩ, PICTϦιʔ ε͸ແཧ
  139. Tokyo/2010-03-03/04 • 4DͷWindowsҠ২ʹҰ໾ങٕͬͨज़ • ຖճͷ4DόʔδϣϯΞοϓͰগͣͭ͠Mac2WinґଘΛ ͳ͖ͯͨ͘͠ • ޓ׵ੑͷͨΊʹ͍·ͩଟ͘ґଘ͕࢒͞Ε͍ͯΔ: ‣ Ϧιʔ

    ε, PICT, ϓϥά Πϯ • Mac2WinΛ࢖༻͍ͯ͠Δϓϥά Πϯ͸, ґଘؔ܎Λ੾Δ, ͞΋ͳ͚Ε͹4Dʹݟ੾ΒΕΔӡ໋... • ͍·͸·ͩAsifont.mapΛ࢖༻
  140. Tokyo/2010-03-03/04 ੲͷϧοΫε • QuickDraw ͓Αͼ Altura ࢖༻ͷΧελϜίʔυ • 4D 2004

    Ͱഇࢭ༧ఆͷର৅ʹ • 4D v13ͰγεςϜΞϐΞϥϯεʹม׵͞ΕΔӡ໋ • 4D v13·ͰઌԆ͹͠ʹ͠ͳ͍Ͱ ! System 7 Windows 3.11 Mac OS 9 Windows 95
  141. Tokyo/2010-03-03/04 αϒςʔϒϧ • ಛघͳϦϨʔγϣϯʹม׵͞ΕΔ • αϒςʔϒϧίϚϯυ͸͢΂ͯ·ͩಈ࡞͢Δ ‣ ྫ֎ SEND RECORD,

    DUPLICATE RECORD • ͍·͙͢ഇࢭ͞ΕΔ༁Ͱ͸ͳ͍ • ςʔϒϧ΁ͷม׵͕׬ྃ͢Δ·Ͱͷ༛༧Λઃ͚͍ͯΔ
  142. Tokyo/2010-03-03/04 MODIFY SELECTION DISPLAY SELECTION ‣ ϦετϘοΫε·ͨ͸αϒϑΥʔϜΛਪ঑ • ཁ݅ʹ߹͏ͷͳΒ͹ϦετϘοΫεʢ഑ྻɾηϨΫγϣϯʣΛ࢖༻ !

    • ಛघͳඞཁ͕͋Γ, ϦετϘοΫε͕μϝͳΒ͹αϒϑΥʔϜΛ࢖༻ ! • ഇࢭ༧ఆͰ͸ͳ͍͚ΕͲ, 4DΞϓϦέʔγϣϯ͕Ϣʔβ ʔ͔Β௿͍ධՁΛड͚ͯ͠·͏ཧ༝ͷͻͱͭ