рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛
рдореИрдВ рдЖрдкрдХреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЕрдиреБрднрд╡ рд╕реЗ рдмрддрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рдХрд╣рд╛рдВ рдФрд░ рдХрдм рдЙрдкрдпреЛрдЧреА рдерд╛ред рдпрд╣ рдПрдХ рд╕рд┐рдВрд╣рд╛рд╡рд▓реЛрдХрди рдФрд░ рдереАрд╕рд┐рд╕ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЖрдЧреЗ рдХреНрдпрд╛ рдФрд░ рдХрд╣рд╛рдВ рдЦреЛрдж рд╕рдХрддреЗ рд╣реИрдВ - рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЕрдиреБрднрд╡ рд╣реИ, рд╢рд╛рдпрдж рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рд╣реИред

рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдЬрд╛рдирдирд╛ рдФрд░ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдХреНрдпреЛрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ? рдЗрд╕рдХреЗ рдореВрд▓ рдореЗрдВ, рдбреЗрдЯрд╛ рд╕рд╛рдЗрдВрд╕ рдореЗрдВ рдХрд╛рдо рдХреЗ рдХрдИ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪрд░рдг рд╣реИрдВ, рдФрд░ рд╕рдмрд╕реЗ рдкрд╣рд▓рд╛ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг (рдЗрд╕рдХреЗ рдмрд┐рдирд╛, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХреБрдЫ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛!) рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдпрд╛ рдирд┐рдХрд╛рд▓рдирд╛ рд╣реИред рдЕрдХреНрд╕рд░, рдбреЗрдЯрд╛ рдХрд┐рд╕реА рди рдХрд┐рд╕реА рд░реВрдк рдореЗрдВ рдХрд╣реАрдВ рдкрдбрд╝рд╛ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЙрд╕реЗ рд╡рд╣рд╛рдВ рд╕реЗ "рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд" рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред 

рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдПрдБ рдЖрдкрдХреЛ рдпрд╣реА рдбреЗрдЯрд╛ рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИрдВ! рдФрд░ рдЖрдЬ рдореИрдВ рдЖрдкрдХреЛ рдЙрди рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдКрдВрдЧрд╛ рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд░рд╣реА рд╣реИрдВ рдФрд░ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдФрд░ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╣рд╛рдВ рдФрд░ рдХреИрд╕реЗ - рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИред

рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рддреАрди рдореБрдЦреНрдп рдмреНрд▓реЙрдХ рд╣реЛрдВрдЧреЗ, рдЬрд┐рди рдкрд░ рд╣рдо рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВрдЧреЗ:

  • "рдорд╛рдирдХ" рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдПрдБ рд╡реЗ рд╣реИрдВ рдЬреЛ рдХрд┐рд╕реА рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛, рдЬреИрд╕реЗ рд╕рдВрдмрдВрдзрдкрд░рдХ рдмреАрдЬрдЧрдгрд┐рдд рдпрд╛ SQL, рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╕рдордп рдЖрдорддреМрд░ рдкрд░ рд╕рдордЭреА рдЬрд╛рддреА рд╣реИрдВред
  • рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдПрдБ: рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╛рдпрдерди рдерд┐рдВрдЧреНрд╕ рдкрд╛рдВрдбрд╛, рдирдореНрдкреА рдпрд╛ рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧред
  • рдЬреНрдЮрд╛рди рдЧреНрд░рд╛рдлрд╝ рдФрд░ рдЧреНрд░рд╛рдлрд╝ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдПрдБред

рдпрд╣рд╛рдВ рд▓рд┐рдЦреА рдЧрдИ рд╣рд░ рдЪреАрдЬрд╝ рд╕рд┐рд░реНрдл рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЕрдиреБрднрд╡ рд╣реИ, рдЬреЛ рдЙрдкрдпреЛрдЧреА рдерд╛, рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХрд╛ рд╡рд┐рд╡рд░рдг рдФрд░ "рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рдереА" рдХреЗ рд╕рд╛рде - рд╣рд░ рдХреЛрдИ рдпрд╣ рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реА рддрд░рд╣ рдХреА рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рдЖрдкрдХреЗ рд╕рд╛рдордиреЗ рдХреИрд╕реЗ рдЖ рд╕рдХрддреА рд╣реИрдВ рдФрд░ рдЗрди рднрд╛рд╖рд╛рдУрдВ рдХреЛ рд╕рдордЭрдХрд░ рдЙрдирдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рддреИрдпрд╛рд░реА рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред тАЛрдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдЖрдкрдХреЛ рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ (рддрддреНрдХрд╛рд▓) рдЖрд╡реЗрджрди рдХрд░рдирд╛ рдкрдбрд╝реЗ рдпрд╛ рдХрд┐рд╕реА рдРрд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдЬрд╛рдирд╛ рдкрдбрд╝реЗ рдЬрд╣рд╛рдВ рдЙрдирдХреА рдЬрд░реВрд░рдд рд╣реЛред

"рдорд╛рдирдХ" рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдПрдБ

рдорд╛рдирдХ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдПрдБ рдареАрдХ рдЗрд╕реА рдЕрд░реНрде рдореЗрдВ рд╣реИрдВ рдХрд┐ рдЬрдм рд╣рдо рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╣рдо рдЖрдорддреМрд░ рдкрд░ рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВред

рд╕рдВрдмрдВрдзрдкрд░рдХ рдмреАрдЬрдЧрдгрд┐рдд

рдЖрдЬ рд╕рдВрдмрдВрдзрдкрд░рдХ рдмреАрдЬрдЧрдгрд┐рдд рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ? рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рддрд░реАрдХреЗ рд╕реЗ рдХреНрдпреЛрдВ рд╕рдВрд░рдЪрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рдЪреЗрдд рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдЪреНрдЫреА рд╕рдордЭ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЙрдирдХреЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдореВрд▓ рдХреЛ рд╕рдордЭрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╕рдВрдмрдВрдзрдкрд░рдХ рдмреАрдЬрдЧрдгрд┐рдд рдХреНрдпрд╛ рд╣реИ?

рдФрдкрдЪрд╛рд░рд┐рдХ рдкрд░рд┐рднрд╛рд╖рд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ: рд╕рдВрдмрдВрдзрдкрд░рдХ рдмреАрдЬрдЧрдгрд┐рдд рдПрдХ рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреЗрдЯрд╛ рдореЙрдбрд▓ рдореЗрдВ рд╕рдВрдмрдВрдзреЛрдВ рдкрд░ рд╕рдВрдЪрд╛рд▓рди рдХреА рдПрдХ рдмрдВрдж рдкреНрд░рдгрд╛рд▓реА рд╣реИред рдЗрд╕реЗ рдереЛрдбрд╝рд╛ рдФрд░ рдорд╛рдирд╡реАрдп рд░реВрдк рд╕реЗ рдХрд╣реЗрдВ рддреЛ, рдпрд╣ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдкрд░ рд╕рдВрдЪрд╛рд▓рди рдХреА рдПрдХ рдкреНрд░рдгрд╛рд▓реА рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдкрд░рд┐рдгрд╛рдо рд╣рдореЗрд╢рд╛ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рд╣реЛрддреА рд╣реИред

рдЗрд╕рдореЗрдВ рд╕рднреА рд░рд┐рд▓реЗрд╢рдирд▓ рдСрдкрд░реЗрд╢рди рджреЗрдЦреЗрдВ рдпрд╣ рд╣реИрдмрд░ рдХрд╛ рд▓реЗрдЦ - рдпрд╣рд╛рдВ рд╣рдо рдмрддрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреЛ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдФрд░ рдпрд╣ рдХрд╣рд╛рдВ рдХрд╛рдо рдЖрддрд╛ рд╣реИред

рдХреНрдпреЛрдВ?

рдпрд╣ рд╕рдордЭрдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдХрд┐ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдПрдБ рдХреНрдпрд╛ рд╣реИрдВ рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдкреАрдЫреЗ рдХреМрди рд╕реЗ рдСрдкрд░реЗрд╢рди рд╣реИрдВ, рдЕрдХреНрд╕рд░ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдХреНрдпрд╛ рдФрд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдХреА рдЧрд╣рд░реА рд╕рдордЭ рдорд┐рд▓рддреА рд╣реИред

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛
рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдпрд╣ рд▓реЗрдЦ. рдСрдкрд░реЗрд╢рди рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг: рдЬреНрд╡рд╛рдЗрди, рдЬреЛ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИред

рдЕрдзреНрдпрдпрди рдХреЗ рд▓рд┐рдП рд╕рд╛рдордЧреНрд░реА:

рд╕реНрдЯреИрдирдлреЛрд░реНрдб рд╕реЗ рдЕрдЪреНрдЫрд╛ рдкрд░рд┐рдЪрдпрд╛рддреНрдордХ рдкрд╛рдареНрдпрдХреНрд░рдо. рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╕рдВрдмрдВрдзрдкрд░рдХ рдмреАрдЬрдЧрдгрд┐рдд рдФрд░ рд╕рд┐рджреНрдзрд╛рдВрдд рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рд╛рдордЧреНрд░рд┐рдпрд╛рдВ рд╣реИрдВ - рдХреМрд░рд╕реЗрд░рд╛, рдЙрдбрд╛рд╕рд┐рдЯреАред рдСрдирд▓рд╛рдЗрди рд╕рд╛рдордЧреНрд░реА рднреА рднрд╛рд░реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдореМрдЬреВрдж рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЕрдЪреНрдЫреА рд╕рд╛рдордЧреНрд░реА рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ рд╢реИрдХреНрд╖рдгрд┐рдХ рдкрд╛рдареНрдпрдХреНрд░рдо. рдореЗрд░реА рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╕рд▓рд╛рд╣: рдЖрдкрдХреЛ рд╕рдВрдмрдВрдзрдкрд░рдХ рдмреАрдЬрдЧрдгрд┐рдд рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдордЭрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдпрд╣реА рдмреБрдирд┐рдпрд╛рджреА рдмрд╛рддреЛрдВ рдХрд╛ рдЖрдзрд╛рд░ рд╣реИред

рдПрд╕рдХреНрдпреВрдПрд▓

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛
рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдпрд╣ рд▓реЗрдЦред

рдПрд╕рдХреНрдпреВрдПрд▓ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд╕рдВрдмрдВрдзрдкрд░рдХ рдмреАрдЬрдЧрдгрд┐рдд рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИ - рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рд╕рд╛рде, рдПрд╕рдХреНрдпреВрдПрд▓ рдШреЛрд╖рдгрд╛рддреНрдордХ рд╣реИ! рдЕрд░реНрдерд╛рддреН, рд╕рдВрдмрдВрдзрдкрд░рдХ рдмреАрдЬрдЧрдгрд┐рдд рдХреА рднрд╛рд╖рд╛ рдореЗрдВ рдПрдХ рдкреНрд░рд╢реНрди рд▓рд┐рдЦрддреЗ рд╕рдордп, рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЧрдгрдирд╛ рдХреИрд╕реЗ рдХрд░реЗрдВ - рд▓реЗрдХрд┐рди SQL рдХреЗ рд╕рд╛рде рдЖрдк рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдХреНрдпрд╛ рдирд┐рдХрд╛рд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ DBMS рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдВрдмрдВрдзрдкрд░рдХ рдмреАрдЬрдЧрдгрд┐рдд рдХреА рднрд╛рд╖рд╛ рдореЗрдВ (рдкреНрд░рднрд╛рд╡реА) рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ (рдЙрдирдХреЗ рд╕рдорддреБрд▓реНрдпрддрд╛ рдХреЛ рд╣рдо рдЗрд╕ рд░реВрдк рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХреЙрдб рдХрд╛ рдкреНрд░рдореЗрдп).

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛
рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдпрд╣ рд▓реЗрдЦред

рдХреНрдпреЛрдВ?

рд░рд┐рд▓реЗрд╢рдирд▓ рдбреАрдмреАрдПрдордПрд╕: рдУрд░реЗрдХрд▓, рдкреЛрд╕реНрдЯрдЧреНрд░реЗрд╕, рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдЗрддреНрдпрд╛рджрд┐ рдЕрднреА рднреА рд╡рд╕реНрддреБрддрдГ рд╣рд░ рдЬрдЧрд╣ рд╣реИрдВ рдФрд░ рдЗрд╕ рдмрд╛рдд рдХреА рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдЙрдЪреНрдЪ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЙрдирдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреА рд╣реЛрдЧреА, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдпрд╛ рддреЛ рдПрд╕рдХреНрдпреВрдПрд▓ рдкрдврд╝рдирд╛ рд╣реЛрдЧрд╛ (рдЬреЛ рдмрд╣реБрдд рд╕рдВрднрд╡ рд╣реИ) рдпрд╛ рдЗрд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ ( рдЕрд╕рдВрднрд╛рд╡рд┐рдд рднреА рдирд╣реАрдВ)ред

рдХреНрдпрд╛ рдкрдврд╝рдирд╛ рд╣реИ рдФрд░ рдХреНрдпрд╛ рдкрдврд╝рдирд╛ рд╣реИ

рдЙрдкрд░реЛрдХреНрдд рд╕рдорд╛рди рд▓рд┐рдВрдХ рдХреЗ рдЕрдиреБрд╕рд╛рд░ (рд╕рдВрдмрдВрдзрдкрд░рдХ рдмреАрдЬрдЧрдгрд┐рдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ), рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдорд╛рддреНрд░рд╛ рдореЗрдВ рд╕рд╛рдордЧреНрд░реА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣.

рд╡реИрд╕реЗ, NoSQL рдХреНрдпрд╛ рд╣реИ?

"рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдЗрд╕ рдмрд╛рдд рдкрд░ рдЬрд╝реЛрд░ рджреЗрдирд╛ рдЬрд╝рд░реВрд░реА рд╣реИ рдХрд┐ "NoSQL" рд╢рдмреНрдж рдХреА рдЙрддреНрдкрддреНрддрд┐ рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣рдЬ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдкреАрдЫреЗ рдХреЛрдИ рдЖрдо рддреМрд░ рдкрд░ рд╕реНрд╡реАрдХреГрдд рдкрд░рд┐рднрд╛рд╖рд╛ рдпрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рд╕рдВрд╕реНрдерд╛ рдирд╣реАрдВ рд╣реИред" рд╕рдВрдЧрдд рд▓реЗрдЦ рд╣реИрдмрд░ рдкрд░ред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд▓реЛрдЧреЛрдВ рдиреЗ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ рдХрд┐ рдХрдИ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреВрд░реНрдг рд╕рдВрдмрдВрдзрдкрд░рдХ рдореЙрдбрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╣рд╛рдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреНрд░рджрд░реНрд╢рди рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕рд░рд▓ рдкреНрд░рд╢реНрди рд╣рд╛рд╡реА рд╣реИрдВ - рдЬрд╣рд╛рдВ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреА рддреБрд░рдВрдд рдЧрдгрдирд╛ рдХрд░рдирд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд▓рд┐рдЦрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдбреЗрдЯрд╛рдмреЗрд╕, рдФрд░ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рд╕рдВрдмрдВрдзрдкрд░рдХ рд╣реИрдВ рдЬреЛ рди рдХреЗрд╡рд▓ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рд╣рд╛рдирд┐рдХрд╛рд░рдХ рднреА рд╣реИрдВ - рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдХреНрдпреЛрдВ рдХрд░реЗрдВ рдпрджрд┐ рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪреАрдЬрд╝ (рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП) - рдЙрддреНрдкрд╛рджрдХрддрд╛ рдХреЛ рдЦрд░рд╛рдм рдХрд░ рджреЗрдЧреА?

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╢рд╛рд╕реНрддреНрд░реАрдп рд░рд┐рд▓реЗрд╢рдирд▓ рдореЙрдбрд▓ рдХреЗ рдирд┐рд╢реНрдЪрд┐рдд рдЧрдгрд┐рддреАрдп рд╕реНрдХреАрдорд╛ рдХреЗ рдмрдЬрд╛рдп рд▓рдЪреАрд▓реЗ рд╕реНрдХреАрдорд╛ рдХреА рдЕрдХреНрд╕рд░ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ - рдФрд░ рдпрд╣ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдХрд╛рд╕ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рддрд╛ рд╣реИ рдЬрдм рд╕рд┐рд╕реНрдЯрдо рдХреЛ рддреИрдирд╛рдд рдХрд░рдирд╛ рдФрд░ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдирд╛, рдЬрд▓реНрджреА рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛрддрд╛ рд╣реИ - рдпрд╛ рд╕реНрдХреАрдорд╛ рдФрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдбреЗрдЯрд╛ рдХреЗ рдкреНрд░рдХрд╛рд░ рдЗрддрдиреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИрдВ.

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдкреНрд░рдгрд╛рд▓реА рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдХреБрдЫ рдореЗрдЯрд╛ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбреЛрдореЗрди рдкрд░ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ - рд╣рдо рд╕рднреА рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рдмрд╕ рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд▓рд┐рдП JSON рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ - рдпрд╣ рд╣рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБрдд рд╣реА рд▓рдЪреАрд▓рд╛ рд╡рд╛рддрд╛рд╡рд░рдг рджреЗрддрд╛ рд╣реИ рдореЙрдбрд▓ рдФрд░ рддреНрд╡рд░рд┐рдд рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ - рддреЛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, NoSQL рдФрд░ рднреА рдмреЗрд╣рддрд░ рдФрд░ рдЕрдзрд┐рдХ рдкрдардиреАрдп рд╣реЛрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ (рдореЗрд░реЗ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рдЬрд╣рд╛рдВ NoSQL рдареАрдХ рд╡рд╣реАрдВ рдерд╛ рдЬрд╣рд╛рдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА)ред

{"en_wikipedia_url":"https://en.wikipedia.org/wiki/Johnny_Cash",
"ru_wikipedia_url":"https://ru.wikipedia.org/wiki/?curid=301643",
"ru_wiki_pagecount":149616,
"entity":[42775,"╨Ф╨╢╨╛╨╜╨╜╨╕ ╨Ъ╤Н╤И","ru"],
"en_wiki_pagecount":2338861}

рдЖрдк рдФрд░ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╣рд╛рдВ NoSQL рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ

рдХреНрдпрд╛ рдкрдврдирд╛ рд╣реИ?

рдпрд╣рд╛рдВ, рдмрд▓реНрдХрд┐, рдЖрдкрдХреЛ рдмрд╕ рдЕрдкрдиреЗ рдХрд╛рд░реНрдп рдХрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕рдореЗрдВ рдХреНрдпрд╛ рдЧреБрдг рд╣реИрдВ рдФрд░ рдХреМрди рд╕реЗ NoSQL рд╕рд┐рд╕реНрдЯрдо рдЙрдкрд▓рдмреНрдз рд╣реИрдВ рдЬреЛ рдЗрд╕ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдлрд┐рдЯ рд╣реЛрдВрдЧреЗ - рдФрд░ рдлрд┐рд░ рдЗрд╕ рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВред

рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдПрдБ

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд╛рдпрдерди рдХрд╛ рдЗрд╕рд╕реЗ рдХреНрдпрд╛ рд▓реЗрдирд╛-рджреЗрдирд╛ рд╣реИ - рдпрд╣ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рд╣реИ, рдФрд░ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВред

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛

  • рдкрд╛рдВрдбрд╛ рд╡рд╕реНрддреБрддрдГ рдбреЗрдЯрд╛ рд╕рд╛рдЗрдВрд╕ рдХрд╛ рд╕реНрд╡рд┐рд╕ рдЖрд░реНрдореА рдЪрд╛рдХреВ рд╣реИ; рдЗрд╕рдореЗрдВ рднрд╛рд░реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдкрд░рд┐рд╡рд░реНрддрди, рдПрдХрддреНрд░реАрдХрд░рдг рдЖрджрд┐ рд╣реЛрддрд╛ рд╣реИред
  • рдирдореНрдкреА - рд╡реЗрдХреНрдЯрд░ рдЧрдгрдирд╛, рдореИрдЯреНрд░рд┐рдХреНрд╕ рдФрд░ рд░реИрдЦрд┐рдХ рдмреАрдЬрдЧрдгрд┐рддред
  • рд╕реНрдХрд╛рдЗрдкреА - рдЗрд╕ рдкреИрдХреЗрдЬ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░рд╛ рдЧрдгрд┐рдд рд╣реИ, рд╡рд┐рд╢реЗрд╖рдХрд░ рдЖрдБрдХрдбрд╝реЗред
  • рдЬреНрдпреВрдкрд┐рдЯрд░ рд▓реИрдм - рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЦреЛрдЬрдкреВрд░реНрдг рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд▓реИрдкрдЯреЙрдк рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдлрд┐рдЯ рд╣реЛрддреЗ рд╣реИрдВ - рдЬрд╛рдирдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реИред
  • рдЕрдиреБрд░реЛрдз - рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ред
  • рдкрд╛рдЗрд╕реНрдкрд╛рд░реНрдХ рдбреЗрдЯрд╛ рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рдХреЗ рдмреАрдЪ рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИ, рд╕рдВрднрд╡рддрдГ рдЙрдирдХреА рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХреЗ рдХрд╛рд░рдг рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдпрд╛ рд╕реНрдкрд╛рд░реНрдХ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреА рд╣реЛрдЧреАред
  • *рд╕реЗрд▓реЗрдирд┐рдпрдо - рд╕рд╛рдЗрдЯреЛрдВ рдФрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рд╕реЗ рдбреЗрдЯрд╛ рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реИ, рдХрднреА-рдХрднреА рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдЕрдиреНрдп рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

рдореЗрд░реА рдореБрдЦреНрдп рд╕рд▓рд╛рд╣: рдкрд╛рдпрдерди рд╕реАрдЦреЗрдВ!

рдкрд╛рдВрдбрд╛

рдЖрдЗрдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХреЛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрдВ:

import pandas as pd
df = pd.read_csv(тАЬdata/dataset.csvтАЭ)
# Calculate and rename aggregations
all_together = (df[df[тАШtrip_typeтАЩ] == тАЬreturnтАЭ]
    .groupby(['start_station_name','end_station_name'])
                  	    .agg({'trip_duration_seconds': [np.size, np.mean, np.min, np.max]})
                           .rename(columns={'size': 'num_trips', 
           'mean': 'avg_duration_seconds',    
           'amin': min_duration_seconds', 
           тАШamax': 'max_duration_seconds'}))

рдореВрд▓рддрдГ, рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдХреЛрдб рдХреНрд▓рд╛рд╕рд┐рдХ SQL рдкреИрдЯрд░реНрди рдореЗрдВ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИред

SELECT start_station_name, end_station_name, count(trip_duration_seconds) as size, тАж..
FROM dataset
WHERE trip_type = тАШreturnтАЩ
GROUPBY start_station_name, end_station_name

рд▓реЗрдХрд┐рди рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХреЛрдб рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ; рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╣рдо рдкрд╛рдпрдерди рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдореЗрдВ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдПрдореНрдмреЗрдб рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрдВрдбреЛрдВ рдпрд╛ рдкрд╛рдпрд╕реНрдкрд╛рд░реНрдХ рдЬреИрд╕реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рд╕реЗ рдЖрддреА рд╣реИред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдкрд╛рдЗрд╕реНрдкрд╛рд░реНрдХ рдореЗрдВ рд╣рдо рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рд╕рдорд╛рди рдкреНрд░рдХрд╛рд░ рдХрд╛ рдбреЗрдЯрд╛ рдкрд░рд┐рд╡рд░реНрддрди рджреЗрдЦрддреЗ рд╣реИрдВ:

df.filter(df.trip_type = тАЬreturnтАЭ)
  .groupby(тАЬdayтАЭ)
  .agg({duration: 'mean'})
  .sort()

рдХрд╣рд╛рдБ рдФрд░ рдХреНрдпрд╛ рдкрдврд╝рдирд╛ рд╣реИ

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░ рдкрд╛рдпрдерди рдкрд░ рд╣реА рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ рдЕрдзреНрдпрдпрди рдХреЗ рд▓рд┐рдП рд╕рд╛рдордЧреНрд░реА рдвреВрдВрдвреЗрдВ. рдСрдирд▓рд╛рдЗрди рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореМрдЬреВрдж рд╣реИрдВ рдкрд╛рдВрдбрд╛, pySpark рдФрд░ рдкрд╛рдареНрдпрдХреНрд░рдо рдЪрд╛рд▓реВ рд╕реНрдкрд╛рд░реНрдХ (рдФрд░ рдЕрдкрдиреЗ рдЖрдк рд╕реЗ рднреА DS). рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░, рдпрд╣рд╛рдВ рдХреА рд╕рд╛рдордЧреНрд░реА рдЧреВрдЧрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫреА рд╣реИ, рдФрд░ рдЕрдЧрд░ рдореБрдЭреЗ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрдХреЗрдЬ рдЪреБрдирдирд╛ рд╣реЛ, рддреЛ рд╡рд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдкрд╛рдВрдбрд╛ рд╣реЛрдЧрд╛ред рдбреАрдПрд╕+рдкрд╛рдпрдерди рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рднреА рдмрд╣реБрдд рдЬреНрдпрд╛рджрд╛.

рдПрдХ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╢реИрд▓

рдХреБрдЫ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдЬрд┐рдирдХреЗ рд╕рд╛рде рдореИрдВрдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИрдВ рдЬреЛ рдкрд╛рдпрдерди, рдЬрд╛рд╡рд╛ рдФрд░ рд╢реЗрд▓ рдХрдорд╛рдВрдб рдореЗрдВ рдХреЛрдб рдХреЛ рдХреЙрд▓ рдХрд░рддреА рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЖрдк bash/zsh/etc рдореЗрдВ рдкрд╛рдЗрдкрд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдЕрдиреБрд░реЛрдз рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рди рд╕рдХрддреЗ рд╣реИрдВ (рдмреЗрд╢рдХ, рдЖрдк рд╡рд╣рд╛рдВ рд╕рд╛рдорд╛рди рд▓реВрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╢реЗрд▓ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдбреАрдПрд╕ рдХреЛрдб рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ), рдЖрдЗрдП рджреЗрддреЗ рд╣реИрдВ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг - рдореБрдЭреЗ рд╡рд┐рдХрд┐рдбреЗрдЯрд╛ рдХреА рдХреНрдпреВрдЖрдИрдбреА рдореИрдкрд┐рдВрдЧ рдФрд░ рд░реВрд╕реА рдФрд░ рдЕрдВрдЧреНрд░реЗрдЬреА рд╡рд┐рдХреА рдХреЗ рдкреВрд░реНрдг рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рдЗрд╕рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдмреИрд╢ рдореЗрдВ рдХрдорд╛рдВрдб рд╕реЗ рдПрдХ рд╕рд░рд▓ рдЕрдиреБрд░реЛрдз рд▓рд┐рдЦрд╛ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдкрд╛рдпрдерди рдореЗрдВ рдПрдХ рд╕рд░рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦреА, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдЗрд╕ рддрд░рд╣ рдПрдХ рд╕рд╛рде рд░рдЦреЗрдВ:

pv тАЬdata/latest-all.json.gzтАЭ | 
unpigz -c  | 
jq --stream $JQ_QUERY | 
python3 scripts/post_process.py "output.csv"

рдЬрд╣рд╛рдВ

JQ_QUERY = 'select((.[0][1] == "sitelinks" and (.[0][2]=="enwiki" or .[0][2] =="ruwiki") and .[0][3] =="title") or .[0][1] == "id")' 

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдкреВрд░реА рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдереА рдЬрд┐рд╕рдиреЗ рдЖрд╡рд╢реНрдпрдХ рдореИрдкрд┐рдВрдЧ рдмрдирд╛рдИ; рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ, рд╕рдм рдХреБрдЫ рд╕реНрдЯреНрд░реАрдо рдореЛрдб рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛:

  • рдкреАрд╡реА рдлрд╝рд╛рдЗрд▓рдкрде - рдлрд╝рд╛рдЗрд▓ рдЖрдХрд╛рд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдкреНрд░рдЧрддрд┐ рдкрдЯреНрдЯреА рджреЗрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рддрд╛ рд╣реИ
  • unpigz -c рдиреЗ рд╕рдВрдЧреНрд░рд╣ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдкрдврд╝рд╛ рдФрд░ рдЗрд╕реЗ jq рдХреЛ рджреЗ рджрд┐рдпрд╛
  • рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде jq - рд╕реНрдЯреНрд░реАрдо рдиреЗ рддреБрд░рдВрдд рдкрд░рд┐рдгрд╛рдо рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕реЗ рдкрд╛рдпрдерди рдореЗрдВ рдкреЛрд╕реНрдЯрдкреНрд░реЛрд╕реЗрд╕рд░ (рдкрд╣рд▓реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рдорд╛рди) рдХреЛ рднреЗрдЬ рджрд┐рдпрд╛
  • рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ, рдкреЛрд╕реНрдЯрдкреНрд░реЛрд╕реЗрд╕рд░ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд░рд╛рдЬреНрдп рдорд╢реАрди рдереА рдЬреЛ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рд╕реНрд╡рд░реВрдкрд┐рдд рдХрд░рддреА рдереА 

рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░, рдПрдХ рдЬрдЯрд┐рд▓ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдмрдбрд╝реЗ рдбреЗрдЯрд╛ (0.5TB) рдкрд░ рдкреНрд░рд╡рд╛рд╣ рдореЛрдб рдореЗрдВ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рдмрд┐рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рдФрд░ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдФрд░ рдХреБрдЫ рдЙрдкрдХрд░рдгреЛрдВ рд╕реЗ рдмрдирд╛рдИ рдЧрдИ рд╣реИред

рдПрдХ рдФрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдпреБрдХреНрддрд┐: рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдФрд░ рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдФрд░ bash/zsh/etc рд▓рд┐рдЦрдирд╛ред

рдХрд╣рд╛рдВ рдХрд╛рдо рдЖрдПрдЧрд╛? рд╣рд╛рдБ, рд▓рдЧрднрдЧ рд╣рд░ рдЬрдЧрд╣ - рдлрд┐рд░ рднреА, рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдЕрдзреНрдпрдпрди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рд╛рдордЧреНрд░рд┐рдпрд╛рдБ рд╣реИрдВред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдпрд╣рд╛рдБ рдпрд╣ рдореЗрд░рд╛ рдкрд┐рдЫрд▓рд╛ рд▓реЗрдЦ.

рдЖрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ

рдлрд┐рд░ рд╕реЗ, рдкрд╛рдардХ рдХрд╣ рд╕рдХрддрд╛ рд╣реИ - рдареАрдХ рд╣реИ, рдпрд╣ рдПрдХ рд╕рдВрдкреВрд░реНрдг рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рд╣реИ! рдФрд░ рдирд┐рдГрд╕рдВрджреЗрд╣, рд╡рд╣ рд╕рд╣реА рд╣реЛрдЧрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореЗрд░рд╛ рдЖрдо рддреМрд░ рдкрд░ рдРрд╕реЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╕рд╛рдордирд╛ рд╣реБрдЖ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдХ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рдХреЗ рд╕рдорд╛рди рдерд╛ред

рдЖрд░ рд╕реНрдереИрддрд┐рдХ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдФрд░ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рд╡рд╛рддрд╛рд╡рд░рдг рдФрд░ рднрд╛рд╖рд╛ рд╣реИ (рдХреЗ рдЕрдиреБрд╕рд╛рд░)ред рдпрд╣).

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛
рдмрд░рд╛рдордж рдЕрдд:. рд╡реИрд╕реЗ, рдореИрдВ рдЗрд╕рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ, рдЕрдЪреНрдЫреА рд╕рд╛рдордЧреНрд░реАред

рдПрдХ рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЛ R рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ? рдХрдо рд╕реЗ рдХрдо, рдХреНрдпреЛрдВрдХрд┐ рдЖрд░ рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЧреИрд░-рдЖрдИрдЯреА рд▓реЛрдЧреЛрдВ рдХреА рдПрдХ рдмрдбрд╝реА рдкрд░рдд рд╣реИред рдореБрдЭреЗ рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдорд┐рд▓рд╛:

  • рдлрд╛рд░реНрдорд╛рд╕реНрдпреБрдЯрд┐рдХрд▓ рдХреНрд╖реЗрддреНрд░.
  • рдЬреАрд╡рд╡рд┐рдЬреНрдЮрд╛рдиреАред
  • рд╡рд┐рддреНрддреАрдп рдХреНрд╖реЗрддреНрд░ред
  • рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рдЧрдгрд┐рддреАрдп рд╢рд┐рдХреНрд╖рд╛ рд╡рд╛рд▓реЗ рд▓реЛрдЧ рдЬреЛ рдЖрдБрдХрдбрд╝реЛрдВ рд╕реЗ рдирд┐рдкрдЯрддреЗ рд╣реИрдВред
  • рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рдореЙрдбрд▓ рдФрд░ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдореЙрдбрд▓ (рдЬреЛ рдЕрдХреНрд╕рд░ рдХреЗрд╡рд▓ рд▓реЗрдЦрдХ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЖрд░ рдкреИрдХреЗрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ)ред

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рдХреНрдпреЛрдВ рд╣реИ? рдЬрд┐рд╕ рд░реВрдк рдореЗрдВ рдпрд╣ рдЕрдХреНрд╕рд░ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдореЙрдбрд▓ рдмрдирд╛рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдбреЗрдЯрд╛ рдкрдврд╝рдирд╛ рдФрд░ рдХреНрд╡реЗрд░реА (рдореЙрдбрд▓) рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдареАрдХ рдХрд░рдирд╛, рд╕рд╛рде рд╣реА ggplot2 рдЬреИрд╕реЗ рдкреИрдХреЗрдЬреЛрдВ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝ рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ - рдпрд╣ рднреА рдХреНрд╡реЗрд░реА рд▓рд┐рдЦрдиреЗ рдХрд╛ рдПрдХ рд░реВрдк рд╣реИ .

рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдг рдкреНрд░рд╢реНрди

ggplot(data = beav, 
       aes(x = id, y = temp, 
           group = activ, color = activ)) +
  geom_line() + 
  geom_point() +
  scale_color_manual(values = c("red", "blue"))

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЖрд░ рд╕реЗ рдХрдИ рд╡рд┐рдЪрд╛рд░ рдбреЗрдЯрд╛рдлреНрд░реЗрдо рдФрд░ рдбреЗрдЯрд╛ рд╡реЗрдХреНрдЯрд░рд╛рдЗрдЬреЗрд╢рди рдЬреИрд╕реЗ рдкрд╛рдВрдбрд╛, рдирдореНрдкреА рдпрд╛ рд╕реНрдХрд╛рдЗрдкреА рдЬреИрд╕реЗ рдкрд╛рдпрдерди рдкреИрдХреЗрдЬ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рдЧрдП рд╣реИрдВ - рдЗрд╕рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░ рдЖрд░ рдореЗрдВ рдмрд╣реБрдд рд╕реА рдЪреАрдЬреЗрдВ рдЖрдкрдХреЛ рдкрд░рд┐рдЪрд┐рдд рдФрд░ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд▓рдЧреЗрдВрдЧреАред

рдЕрдзреНрдпрдпрди рдХреЗ рд▓рд┐рдП рдХрдИ рд╕реНрд░реЛрдд рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣.

рдЬреНрдЮрд╛рди рд░реЗрдЦрд╛рдВрдХрди

рдпрд╣рд╛рдВ рдореБрдЭреЗ рдереЛрдбрд╝рд╛ рдЕрд╕рд╛рдорд╛рдиреНрдп рдЕрдиреБрднрд╡ рд╣реБрдЖ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдЕрдХреНрд╕рд░ рдЧреНрд░рд╛рдлрд╝ рдХреЗ рд▓рд┐рдП рдЬреНрдЮрд╛рди рдЧреНрд░рд╛рдлрд╝ рдФрд░ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЖрдЗрдП рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдмреБрдирд┐рдпрд╛рджреА рдмрд╛рддреЛрдВ рдкрд░ рдЧреМрд░ рдХрд░реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╣рд┐рд╕реНрд╕рд╛ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдЖрдХрд░реНрд╖рдХ рд╣реИред

рд╢рд╛рд╕реНрддреНрд░реАрдп рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕реНрдХреАрдорд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рд╕реНрдХреАрдорд╛ рд▓рдЪреАрд▓рд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рдзреЗрдп рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ "рдХреЙрд▓рдо" рд╣реИ рдФрд░ рдЗрд╕рд╕реЗ рднреА рдЕрдзрд┐рдХред

рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдЖрдк рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдореЙрдбрд▓рд┐рдВрдЧ рдХрд░ рд░рд╣реЗ рдереЗ рдФрд░ рдкреНрд░рдореБрдЦ рдЪреАрдЬреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡реНрдпрдХреНрддрд┐ рдбрдЧрд▓рд╕ рдПрдбрдореНрд╕ рдХреЛ рд▓реЗрдВ рдФрд░ рдЗрд╕ рд╡рд┐рд╡рд░рдг рдХреЛ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛
www.wikidata.org/wiki/Q42

рдпрджрд┐ рд╣рдо рдПрдХ рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕реНрддрдВрднреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд┐рд╢рд╛рд▓ рддрд╛рд▓рд┐рдХрд╛ рдпрд╛ рддрд╛рд▓рд┐рдХрд╛рдПрдБ рдмрдирд╛рдиреА рд╣реЛрдВрдЧреА, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ NULL рд╣реЛрдВрдЧреА рдпрд╛ рдХреБрдЫ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЧрд▓рдд рдорд╛рди рд╕реЗ рднрд░реА рд╣реЛрдВрдЧреА, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдордореЗрдВ рд╕реЗ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЗ рдкрд╛рд╕ рдПрдХ рдХреЛрд░рд┐рдпрд╛рдИ рд░рд╛рд╖реНрдЯреНрд░реАрдп рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдкреНрд░рд╡реЗрд╢ - рдмреЗрд╢рдХ, рд╣рдо рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдВрддрддрдГ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрдмрдВрдзрдкрд░рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рдзреЗрдп рдХреЗ рд╕рд╛рде рдПрдХ рд▓рдЪреАрд▓реЗ рддрд╛рд░реНрдХрд┐рдХ рд╕рд░реНрдХрд┐рдЯ рдХреЛ рдореЙрдбрд▓ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдкреНрд░рдпрд╛рд╕ рд╣реЛрдЧрд╛ред

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛
рддреЛ рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рд╕рднреА рдбреЗрдЯрд╛ рдХреЛ рдПрдХ рдЧреНрд░рд╛рдлрд╝ рдХреЗ рд░реВрдк рдореЗрдВ рдпрд╛ рдмрд╛рдЗрдирд░реА рдФрд░ рдпреВрдирд░реА рдмреВрд▓рд┐рдпрди рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЖрдк рдЗрд╕рдХрд╛ рд╕рд╛рдордирд╛ рдХрд╣рд╛рдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдбреЗрдЯрд╛ рд╡рд┐рдХрд┐, рдФрд░ рдХрд┐рд╕реА рдЧреНрд░рд╛рдлрд╝ рдбреЗрдЯрд╛рдмреЗрд╕ рдпрд╛ рдХрдиреЗрдХреНрдЯреЗрдб рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рдеред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореБрдЦреНрдп рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдПрдБ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдореИрдВрдиреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЬрд┐рдирдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИред

рд╕реНрдкрд╛рд░реНрдХрд▓реА

рд╡рд┐рдХреА:
рд╕реНрдкрд╛рд░реНрдХрд▓ (рдкреБрдирд░рд╛рд╡рд░реНрддреА рдкрд░рд┐рд╡рд░реНрдгреА рд╢рдмреНрдж рд╕реЗ рдЕрднрд┐рдпрд╛рдВрддреНрд░рд┐рдХреА. SPARQL рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдФрд░ RDF рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛) - рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛, рдореЙрдбрд▓ рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ RDFрдФрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЗрди рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЙрдирдХрд╛ рдЬрд╡рд╛рдм рджреЗрдиреЗ рдХреЗ рд▓рд┐рдПред SPARQL рдПрдХ рдЕрдиреБрд╢рдВрд╕рд╛ рд╣реИ W3C рдХрдВрд╕реЛрд░реНрдЯрд┐рдпрдо рдФрд░ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╕реЗрдорд╛рдВрдЯрд┐рдХ рд╡реЗрдм.

рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рддрд╛рд░реНрдХрд┐рдХ рдпреВрдирд░реА рдФрд░ рдмрд╛рдЗрдирд░реА рд╡рд┐рдзреЗрдп рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рд╣реИред рдЖрдк рдмрд╕ рд╕рд╢рд░реНрдд рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдмреВрд▓рд┐рдпрди рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдХреНрдпрд╛ рддрдп рд╣реИ рдФрд░ рдХреНрдпрд╛ рдирд╣реАрдВ (рдмрд╣реБрдд рд╕рд░рд▓реАрдХреГрдд)ред

рдЖрд░рдбреАрдПрдл (рд╕рдВрд╕рд╛рдзрди рд╡рд┐рд╡рд░рдг рдлреНрд░реЗрдорд╡рд░реНрдХ) рдЖрдзрд╛рд░ рд╕реНрд╡рдпрдВ, рдЬрд┐рд╕ рдкрд░ SPARQL рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ, рдПрдХ рдЯреНрд░рд┐рдкрд▓ рд╣реИ object, predicate, subject - рдФрд░ рдХреНрд╡реЗрд░реА рднрд╛рд╡рдирд╛ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЖрд╡рд╢реНрдпрдХ рддреНрд░рд┐рдЧреБрдгреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рддреА рд╣реИ: рдПрдХ рдПрдХреНрд╕ рдвреВрдВрдвреЗрдВ рдЬреИрд╕реЗ рдХрд┐ p_55(X, q_33) рд╕рддреНрдп рд╣реИ - рдЬрд╣рд╛рдВ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, p_55 рдЖрдИрдбреА 55 рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕рдВрдмрдВрдз рд╣реИ, рдФрд░ q_33 рдПрдХ рд╣реИ рдЖрдИрдбреА 33 рдХреЗ рд╕рд╛рде рд╡рд╕реНрддреБ (рдпрд╣рд╛рдВ рдФрд░ рдкреВрд░реА рдХрд╣рд╛рдиреА, рдлрд┐рд░ рд╕реЗ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рд╡рд░рдгреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░)ред

рдбреЗрдЯрд╛ рдкреНрд░рд╕реНрддреБрддрд┐ рдХрд╛ рдЙрджрд╛рд╣рд░рдг:

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛
рдпрд╣рд╛рдВ рджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдЪрд┐рддреНрд░ рдФрд░ рдЙрджрд╛рд╣рд░рдг рдЕрдд:.

рдореВрд▓ рдХреНрд╡реЗрд░реА рдЙрджрд╛рд╣рд░рдг

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╣рдо рд╡рд┐рдзреЗрдп рдХреЗ рд▓рд┐рдП ?рджреЗрд╢ рдЪрд░ рдХрд╛ рдорд╛рди рдЬреНрдЮрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ
member_of, рдпрд╣ рд╕рдЪ рд╣реИ рдХрд┐ member_of(?country,q458) рдФрд░ q458 рдпреВрд░реЛрдкреАрдп рд╕рдВрдШ рдХреА рдЖрдИрдбреА рд╣реИред

рдкрд╛рдпрдерди рдЗрдВрдЬрди рдХреЗ рдЕрдВрджрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ SPARQL рдХреНрд╡реЗрд░реА рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛

рдЖрдорддреМрд░ рдкрд░, рдореБрдЭреЗ SPARQL рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрдЬрд╛рдп рдкрдврд╝рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ - рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдбреЗрдЯрд╛ рдХреИрд╕реЗ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХрдо рд╕реЗ рдХрдо рдмреБрдирд┐рдпрд╛рджреА рд╕реНрддрд░ рдкрд░ рднрд╛рд╖рд╛ рдХреЛ рд╕рдордЭрдирд╛ рдПрдХ рдЙрдкрдпреЛрдЧреА рдХреМрд╢рд▓ рд╣реЛрдЧрд╛ред 

рдСрдирд▓рд╛рдЗрди рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рд╛рдордЧреНрд░реА рд╣реИ: рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдБ рдпрд╣ ╨╕ рдпрд╣. рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбрд┐рдЬрд╝рд╛рдЗрди рдФрд░ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдЧреВрдЧрд▓ рдкрд░ рдЦреЛрдЬрддрд╛ рд╣реВрдВ рдФрд░ рдЕрднреА рдХреЗ рд▓рд┐рдП рдЗрддрдирд╛ рд╣реА рдХрд╛рдлреА рд╣реИред

рддрд╛рд░реНрдХрд┐рдХ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдПрдБ

рдЖрдк рдореЗрд░реЗ рд▓реЗрдЦ рдореЗрдВ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╣рд╛рдВ. рдФрд░ рдпрд╣рд╛рдВ, рд╣рдо рдХреЗрд╡рд▓ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдЬрд╛рдВрдЪ рдХрд░реЗрдВрдЧреЗ рдХрд┐ рддрд╛рд░реНрдХрд┐рдХ рднрд╛рд╖рд╛рдПрдВ рдкреНрд░рд╢реНрди рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдХреНрдпреЛрдВ рд╣реИрдВред рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ, рдЖрд░рдбреАрдПрдл рдлреЙрд░реНрдо рдкреА (рдПрдХреНрд╕) рдФрд░ рдПрдЪ (рдПрдХреНрд╕, рд╡рд╛рдИ) рдХреЗ рддрд╛рд░реНрдХрд┐рдХ рдХрдердиреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИ, рдФрд░ рдПрдХ рддрд╛рд░реНрдХрд┐рдХ рдХреНрд╡реЗрд░реА рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдлреЙрд░реНрдо рд╣реЛрддрд╛ рд╣реИ:

output(X) :- country(X), member_of(X,тАЬEUтАЭ).

рдпрд╣рд╛рдВ рд╣рдо рдПрдХ рдирдпрд╛ рд╡рд┐рдзреЗрдп рдЖрдЙрдЯрдкреБрдЯ/1 (/1 рдХрд╛ рдЕрд░реНрде рдпреВрдирд░реА) рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдмрд╢рд░реНрддреЗ рдХрд┐ рдПрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдпрд╣ рд╕рдЪ рд╣реИ рдХрд┐ рджреЗрд╢ (рдПрдХреНрд╕) - рдпрд╛рдиреА, рдПрдХреНрд╕ рдПрдХ рджреЗрд╢ рд╣реИ рдФрд░ рд╕рджрд╕реНрдп_рдСрдл (рдПрдХреНрд╕, "рдИрдпреВ") рднреА рд╣реИред

рдЕрд░реНрдерд╛рддреН, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдбреЗрдЯрд╛ рдФрд░ рдирд┐рдпрдо рджреЛрдиреЛрдВ рдПрдХ рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдмрд╣реБрдд рдЖрд╕рд╛рдиреА рд╕реЗ рдФрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдореЙрдбрд▓ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрдВрдбрд╕реНрдЯреНрд░реА рдореЗрдВ рдЖрдкрдХреА рдореБрд▓рд╛рдХрд╛рдд рдХрд╣рд╛рдВ рд╣реБрдИ?: рдПрдХ рдХрдВрдкрдиреА рдХреЗ рд╕рд╛рде рдПрдХ рдкреВрд░реА рдмрдбрд╝реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЬреЛ рдРрд╕реА рднрд╛рд╖рд╛ рдореЗрдВ рдкреНрд░рд╢реНрди рд▓рд┐рдЦрддреА рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдореВрд▓ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ - рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╡рд┐рджреЗрд╢реА рдЪреАрдЬрд╝ рд╣реИ, рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИред

рддрд╛рд░реНрдХрд┐рдХ рднрд╛рд╖рд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рдХрд┐рдбреЗрдЯрд╛ рдореЗрдВ рдХреЛрдб рдЦрдВрдб рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛

рд╕рд╛рдордЧреНрд░реА: рдореИрдВ рдпрд╣рд╛рдВ рдЖрдзреБрдирд┐рдХ рддрд╛рд░реНрдХрд┐рдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдЙрддреНрддрд░ рд╕реЗрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рдХреБрдЫ рд▓рд┐рдВрдХ рджреВрдВрдЧрд╛ - рдореИрдВ рдЗрд╕рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ:

рдбреЗрдЯрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХреЗ рдиреЛрдЯреНрд╕: рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдПрдХ рд╡реИрдпрдХреНрддрд┐рдХреГрдд рд╕рдореАрдХреНрд╖рд╛

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ