ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ
ืื™ืš ื–ืึธื’ืŸ ืื™ืจ ืคึฟื•ืŸ ืคึผืขืจื–ืขื ืœืขืš ื“ืขืจืคืึทืจื•ื ื’ ื•ื•ืึธืก ืื™ื– ื ื•ืฆื™ืง ื•ื•ื• ืื•ืŸ ื•ื•ืขืŸ. ืขืก ืื™ื– ืึทืŸ ืื™ื‘ืขืจื‘ืœื™ืง ืื•ืŸ ื˜ืขื–ื™ืก, ืึทื–ื•ื™ ืึทื– ืขืก ืื™ื– ืงืœืึธืจ ื•ื•ืึธืก ืื•ืŸ ื•ื•ื• ืื™ืจ ืงืขื ืขืŸ ื’ืจืึธื‘ืŸ ื•ื•ื™ื™ึทื˜ืขืจ - ืึธื‘ืขืจ ื“ืึธ ืื™ืš ื”ืึธื‘ืŸ ืื•ื™ืกืฉืœื™ืกืœืขืš ืกืึทื‘ื“ื–ืฉืขืงื˜ื™ื•ื• ืคึผืขืจื–ืขื ืœืขืš ื“ืขืจืคืึทืจื•ื ื’, ื˜ืึธืžืขืจ ืึทืœืฅ ืื™ื– ื’ืึธืจ ืึทื ื“ืขืจืฉ ืคึฟืึทืจ ืื™ืจ.

ืคืืจื•ื•ืืก ืื™ื– ืขืก ื•ื•ื™ื›ื˜ื™ืง ืฆื• ื•ื•ื™ืกืŸ ืื•ืŸ ืงืขื ืขืŸ ืฆื• ื ื•ืฆืŸ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ? ืื™ืŸ ื–ื™ื™ืŸ ื”ืึทืจืฅ, Data Science ื”ืื˜ ืขื˜ืœืขื›ืข ื•ื•ื™ื›ื˜ื™ืง ืกื˜ืึทื’ืขืก ืคื•ืŸ ืึทืจื‘ืขื˜, ืื•ืŸ ื“ืขืจ ืขืจืฉื˜ืขืจ ืื•ืŸ ืžืขืจืกื˜ ื•ื•ื™ื›ื˜ื™ืง (ืึธืŸ ืขืก, ืึทื•ื•ืึทื“ืข ื’ืึธืจื ื™ืฉื˜ ื•ื•ืขื˜ ืึทืจื‘ืขื˜ืŸ!) ืื™ื– ื‘ืืงื•ืžืขืŸ ืึธื“ืขืจ ืขืงืกื˜ืจืึทืงื˜ ื“ืึทื˜ืŸ. ืจื•ื‘ึฟ ืึธืคื˜, ื“ื™ ื“ืึทื˜ืŸ ื–ื™ืฆืŸ ืขืจื’ืขืฅ ืื™ืŸ ืขื˜ืœืขื›ืข ืคืึธืจืขื ืื•ืŸ ื“ืึทืจืฃ ื–ื™ื™ืŸ "ืจื™ื˜ืจื™ื•ื•ื“" ืคึฟื•ืŸ ื“ืึธืจื˜. 

ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ ืœืึธื–ืŸ ืื™ืจ ืฆื• ืขืงืกื˜ืจืึทืงื˜ ื“ื™ ื–ื™ื™ืขืจ ื“ืึทื˜ืŸ! ืื•ืŸ ื”ื™ื™ึทื ื˜ ืื™ืš ื•ื•ืขืœ ื–ืึธื’ืŸ ืื™ืจ ื•ื•ืขื’ืŸ ื“ื™ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ ื•ื•ืึธืก ื”ืึธื‘ืŸ ื’ืขื•ื•ืขืŸ ื ื•ืฆื™ืง ืคึฟืึทืจ ืžื™ืจ ืื•ืŸ ืื™ืš ื•ื•ืขืœ ื–ืึธื’ืŸ ืื™ืจ ืื•ืŸ ื•ื•ื™ื™ึทื–ืŸ ืื™ืจ ื•ื•ื• ืื•ืŸ ื•ื•ื™ ืคึผื•ื ืงื˜ - ื•ื•ืึธืก ืขืก ืื™ื– ื“ืืจืฃ ืฆื• ืœืขืจื ืขืŸ.

ืขืก ื•ื•ืขื˜ ื–ื™ื™ืŸ ื“ืจื™ื™ ื”ื•ื™ืคึผื˜ ื‘ืœืึทืงืก ืคื•ืŸ ื“ืึทื˜ืŸ ืึธื ืคึฟืจืขื’ ื˜ื™ื™ืคึผืก, ื•ื•ืึธืก ืžื™ืจ ื•ื•ืขืœืŸ ื“ื™ืกืงื•ื˜ื™ืจืŸ ืื™ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ:

  • "ืกื˜ืึทื ื“ืึทืจื“" ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ ื–ืขื ืขืŸ ื•ื•ืึธืก ืื™ื– ืึธืคื˜ ืคืืจืฉื˜ืื ืขืŸ ื•ื•ืขืŸ ืžืขืŸ ืจืขื“ื˜ ื•ื•ืขื’ืŸ ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทืš, ืึทื–ืึท ื•ื•ื™ ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืœื’ืขื‘ืจืึท ืึธื“ืขืจ ืกืงืœ.
  • ืกืงืจื™ืคึผื˜ื™ื ื’ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ: ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, Python ื˜ื™ื ื’ื– ืคึผืึทื ื“ืึทืก, ื ืึทืžืคึผื™ ืึธื“ืขืจ ืฉืึธืœ ืกืงืจื™ืคึผื˜ื™ื ื’.
  • ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ ืคึฟืึทืจ ื•ื•ื™ืกืŸ ื’ืจืึทืคืก ืื•ืŸ ื’ืจืึทืคื™ืง ื“ืึทื˜ืึทื‘ื™ื™ืกื™ื–.

ืึทืœืฅ ื’ืขืฉืจื™ื‘ืŸ ื“ืึธ ืื™ื– ื ืึธืจ ืึท ืคืขืจื–ืขื ืœืขื›ืข ื“ืขืจืคืึทืจื•ื ื’, ื•ื•ืึธืก ืื™ื– ื ื•ืฆืœืขืš, ืžื™ื˜ ืึท ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ ืคื•ืŸ ืกื™ื˜ื•ืึทื˜ื™ืึธื ืก ืื•ืŸ "ื•ื•ืึธืก ืขืก ืื™ื– ื“ืืจืฃ" - ืึทืœืขืžืขืŸ ืงืขื ืขืŸ ืคึผืจื•ื‘ื™ืจืŸ ื•ื•ื™ ืขื ืœืขืš ืกื™ื˜ื•ืึทื˜ื™ืึธื ืก ืงืขื ืขืŸ ืงื•ืžืขืŸ ื“ื™ื™ืŸ ื•ื•ืขื’ ืื•ืŸ ืคึผืจื•ื‘ื™ืจืŸ ืฆื• ืฆื•ื’ืจื™ื™ื˜ืŸ ืคึฟืึทืจ ื–ื™ื™ ืื™ืŸ ืฉื˜ื™ื™ึทื’ืŸ ื“ื•ืจืš ืคึฟืึทืจืฉื˜ื™ื™ืŸ ื“ื™ ืฉืคึผืจืึทื›ืŸ ืื™ื™ื“ืขืจ ืื™ืจ ื”ืึธื‘ืŸ ืฆื• ืฆื•ืœื™ื™ื’ืŸ (ืขืจื“ื–ืฉืึทื ื˜ืœื™) ืื•ื™ืฃ ืึท ืคึผืจื•ื™ืขืงื˜ ืึธื“ืขืจ ืืคื™ืœื• ื‘ืึทืงื•ืžืขืŸ ืฆื• ืึท ืคึผืจื•ื™ืขืงื˜ ื•ื•ื• ื–ื™ื™ ื–ืขื ืขืŸ ื“ืืจืฃ.

"ืกื˜ืึทื ื“ืึทืจื“" ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ

ื ืึธืจืžืึทืœ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ ื–ืขื ืขืŸ ืคึผื•ื ืงื˜ ืื™ืŸ ื“ืขื ื–ื™ื ืขืŸ ืึทื– ืžื™ืจ ื™ื•ื–ืฉืึทื•ื•ืึทืœื™ ื˜ืจืึทื›ื˜ืŸ ื•ื•ืขื’ืŸ ื–ื™ื™ ื•ื•ืขืŸ ืžื™ืจ ืจืขื“ืŸ ื•ื•ืขื’ืŸ ืคึฟืจืื’ืŸ.

ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืœื’ืขื‘ืจืึท

ืคืืจื•ื•ืืก ืื™ื– ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืœื’ืขื‘ืจืึท ื“ืืจืฃ ื”ื™ื™ึทื ื˜? ื›ึผื“ื™ ืฆื• ื”ืึธื‘ืŸ ืึท ื’ื•ื˜ืข ืคืืจืฉื˜ืื ื“ ืคื•ืŸ ื•ื•ืึธืก ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ ื–ืขื ืขืŸ ืกื˜ืจืึทืงื˜ืฉืขืจื“ ืื™ืŸ ืึท ื–ื™ื›ืขืจ ื•ื•ืขื’ ืื•ืŸ ื ื•ืฆืŸ ื–ื™ื™ ืงืึทื ืฉืึทืกืœื™, ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืคึฟืึทืจืฉื˜ื™ื™ืŸ ื“ื™ ื”ืึทืจืฅ ืคื•ืŸ ื–ื™ื™.

ื•ื•ืึธืก ืื™ื– ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืœื’ืขื‘ืจืึท?

ื“ื™ ืคืึธืจืžืึทืœ ื“ืขืคึฟื™ื ื™ืฆื™ืข ืื™ื– ื•ื•ื™ ื’ื™ื™ื˜: ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืœื’ืขื‘ืจืึท ืื™ื– ืึท ืคืืจืžืื›ื˜ ืกื™ืกื˜ืขื ืคื•ืŸ ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืื•ื™ืฃ ื‘ืึทืฆื™ื•ื ื’ืขืŸ ืื™ืŸ ืึท ืจื™ืœื™ื™ืฉืึทื ืึทืœ ื“ืึทื˜ืŸ ืžืึธื“ืขืœ. ืฆื• ืœื™ื™ื’ืŸ ืขืก ืึท ื‘ื™ืกืœ ืžืขืจ ืžืขื ื˜ืฉืœื™, ื“ืึธืก ืื™ื– ืึท ืกื™ืกื˜ืขื ืคื•ืŸ ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืื•ื™ืฃ ื˜ื™ืฉืŸ ืึทื–ื•ื™ ืึทื– ื“ืขืจ ืจืขื–ื•ืœื˜ืึทื˜ ืื™ื– ืฉื˜ืขื ื“ื™ืง ืึท ื˜ื™ืฉ.

ื–ืขืŸ ืึทืœืข ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืื™ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ ืคึฟื•ืŸ Habr - ื“ืึธ ืžื™ืจ ื‘ืึทืฉืจื™ื™ึทื‘ืŸ ื•ื•ืึธืก ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ื•ื•ื™ืกืŸ ืื•ืŸ ื•ื•ื• ืขืก ืงื•ืžื˜ ืื™ืŸ ื”ืึทื ื˜ื™ืง.

ืคืืจื•ื•ืืก?

ืึธื ื”ื™ื™ื‘ ืฆื• ืคึฟืึทืจืฉื˜ื™ื™ืŸ ื•ื•ืึธืก ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ ื–ืขื ืขืŸ ืึทืœืข ื•ื•ืขื’ืŸ ืื•ืŸ ื•ื•ืึธืก ืึทืคึผืขืจื™ื™ืฉืึทื ื– ื–ืขื ืขืŸ ื”ื™ื ื˜ืขืจ ืื•ื™ืกื“ืจื•ืงืŸ ืื™ืŸ ืกืคึผืขืฆื™ืคื™ืฉ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ ืึธืคื˜ ื’ื™ื˜ ืึท ื“ื™ืคึผืขืจ ืคืืจืฉื˜ืื ื“ ืคื•ืŸ ื•ื•ืึธืก ืึทืจื‘ืขื˜ ืื™ืŸ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ ืื•ืŸ ื•ื•ื™.

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ
ื’ืขื ื•ืžืขืŸ ืคื•ืŸ ื“ืขื ืืจื˜ื™ืงืœืขืŸ. ืึท ื‘ื™ื™ืฉืคึผื™ืœ ืคื•ืŸ ืึทืŸ ืึธืคึผืขืจืึทืฆื™ืข: ืคืึทืจื‘ื™ื ื“ืŸ, ื•ื•ืึธืก ืคืึทืจื‘ื™ื ื“ืŸ ื˜ื™ืฉืŸ.

ืžืึทื˜ืขืจื™ืึทืœืก ืคึฟืึทืจ ืœืขืจื ืขืŸ:

ื’ื•ื˜ ื™ื ื˜ืจืึทื“ืึทืงื˜ืขืจื™ ืงื•ืจืก ืคื•ืŸ Stanford. ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ, ืขืก ื–ืขื ืขืŸ ืึท ืคึผืœืึทืฅ ืคื•ืŸ ืžืึทื˜ืขืจื™ืึทืœืก ืื•ื™ืฃ ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืœื’ืขื‘ืจืึท ืื•ืŸ ื˜ืขืึธืจื™ืข - Coursera, Udacity. ืขืก ืื™ื– ืื•ื™ืš ืึท ืจื™ื–ื™ืง ืกื•ืžืข ืคื•ืŸ โ€‹โ€‹ืžืึทื˜ืขืจื™ืึทืœ ืึธื ืœื™ื™ืŸ, ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ื’ื•ื˜ ืึทืงืึทื“ืขืžื™ืง ืงืึธืจืกืึทื–. ืžื™ื™ึทืŸ ืคึผืขืจื–ืขื ืœืขืš ืขืฆื”: ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืคึฟืึทืจืฉื˜ื™ื™ืŸ ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืœื’ืขื‘ืจืึท ื–ื™ื™ืขืจ ื’ื•ื˜ - ื“ืึธืก ืื™ื– ื“ื™ ื™ืงืขืจ ืคื•ืŸ ื“ื™ ื‘ืึทืกื™ืงืก.

ืกืงืœ

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ
ื’ืขื ื•ืžืขืŸ ืคื•ืŸ ื“ืขื ืืจื˜ื™ืงืœืขืŸ.

SQL ืื™ื– ื‘ื™ื™ืกื™ืงืœื™ ืึทืŸ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืœื’ืขื‘ืจืึท - ืžื™ื˜ ืึท ื•ื•ื™ื›ื˜ื™ืง ืงื™ื™ื•ื•ื™ืึทื˜, SQL ืื™ื– ื“ืขืงืœืึทืจืึทื˜ื™ื•ื•ืข! ื“ืึธืก ื”ื™ื™ืกื˜, ื•ื•ืขืŸ ืื™ืจ ืฉืจื™ื™ื‘ื˜ ืึท ืึธื ืคึฟืจืขื’ ืื™ืŸ ื“ืขืจ ืฉืคึผืจืึทืš ืคื•ืŸ ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืœื’ืขื‘ืจืึท, ืื™ืจ ื˜ืึทืงืข ื–ืึธื’ืŸ ื•ื•ื™ ืฆื• ืจืขื›ืขื ืขืŸ - ืึธื‘ืขืจ ืžื™ื˜ SQL ืื™ืจ ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื•ื•ืึธืก ืื™ืจ ื•ื•ื™ืœืŸ ืฆื• ืขืงืกื˜ืจืึทืงื˜, ืื•ืŸ ื“ืึทืŸ ื“ื™ DBMS ื“ื–ืฉืขื ืขืจื™ื™ืฅ ืฉื•ื™ืŸ (ืขืคืขืงื˜ื™ื•ื•) ืื•ื™ืกื“ืจื•ืงืŸ ืื™ืŸ ื“ื™ ืฉืคึผืจืึทืš ืคื•ืŸ ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืœื’ืขื‘ืจืึท (ื–ื™ื™ืขืจ) ืขืงื•ื•ื™ื•ื•ืึทืœืึทื ืก ืื™ื– ื‘ืืงืื ื˜ ืฆื• ืื•ื ื“ื– ื•ื•ื™ ืงืึธื•ื“ ืก ื˜ืขืึธืจืขื).

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ
ื’ืขื ื•ืžืขืŸ ืคื•ืŸ ื“ืขื ืืจื˜ื™ืงืœืขืŸ.

ืคืืจื•ื•ืืก?

ืจื™ืœื™ื™ืฉืึทื ืึทืœ DBMSs: Oracle, Postgres, SQL Server, ืขื˜ืง ื–ืขื ืขืŸ ื ืึธืš ื›ืžืขื˜ ืื•ืžืขื˜ื•ื ืื•ืŸ ืขืก ืื™ื– ืึทืŸ ื™ื ืงืจืขื“ืึทื‘ืœื™ ื”ื•ื™ืš ื’ืขืœืขื’ื ื”ื™ื™ึทื˜ ืึทื– ืื™ืจ ื•ื•ืขื˜ ื”ืึธื‘ืŸ ืฆื• ื™ื ื˜ืขืจืึทืงื˜ ืžื™ื˜ ื–ื™ื™, ื•ื•ืึธืก ืžื™ื˜ืœ ืื™ืจ ื•ื•ืขื˜ ื”ืึธื‘ืŸ ืฆื• ืœื™ื™ืขื ืขืŸ SQL (ื•ื•ืึธืก ืื™ื– ื–ื™ื™ืขืจ ืžืกืชึผืžื) ืึธื“ืขืจ ืฉืจื™ื™ึทื‘ืŸ ืขืก ( ืื•ื™ืš ื ื™ืฉื˜ ืึทื ืœื™ื™ืงืœื™).

ื•ื•ืึธืก ืฆื• ืœื™ื™ืขื ืขืŸ ืื•ืŸ ืœืขืจื ืขืŸ

ืœื•ื™ื˜ ื“ื™ ื–ืขืœื‘ืข ืœื™ื ืงืก ืื•ื™ื‘ืŸ (ื•ื•ืขื’ืŸ ืจื™ืœื™ื™ืฉืึทื ืึทืœ ืึทืœื’ืขื‘ืจืึท), ืขืก ืื™ื– ืึทืŸ ื’ืœื™ื™ื‘ืŸ ืกื•ืžืข ืคื•ืŸ โ€‹โ€‹ืžืึทื˜ืขืจื™ืึทืœ, ืœืžืฉืœ, this.

ื“ื•ืจืš ื“ืขื ื•ื•ืขื’, ื•ื•ืึธืก ืื™ื– 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 ืกื™ืกื˜ืขืžืขืŸ ื–ืขื ืขืŸ ื‘ื ื™ืžืฆื ื•ื•ืึธืก ื•ื•ืึธืœื˜ ืคึผืึทืกื™ืง ื“ืขื ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ - ืื•ืŸ ื“ืขืžืึธืœื˜ ืึธื ื”ื™ื™ื‘ืŸ ืœืขืจื ืขืŸ ื“ืขื ืกื™ืกื˜ืขื.

ืกืงืจื™ืคึผื˜ื™ื ื’ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ

ืื™ืŸ ืขืจืฉื˜ืขืจ, ืขืก ืžื™ื™ื ื˜, ื•ื•ืึธืก ื˜ื•ื˜ Python ื”ืึธื‘ืŸ ืฆื• ื˜ืึธืŸ ืžื™ื˜ ืื™ื ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ - ืขืก ืื™ื– ืึท ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทืš ืื•ืŸ ื ื™ืฉื˜ ื•ื•ืขื’ืŸ ืคึฟืจืื’ืŸ.

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ

  • ืคึผืึทื ื“ืึทืก ืื™ื– ืžืžืฉ ืึท ืฉื•ื•ื™ื™ืฆืขืจ ืึทืจืžื™ื™ ืžืขืกืขืจ ืคื•ืŸ ื“ืึทื˜ืึท ื•ื•ื™ืกื ืฉืึทืคึฟื˜; ืึท ืจื™ื–ื™ืง ืกื•ืžืข ืคื•ืŸ โ€‹โ€‹ื“ืึทื˜ืŸ ื˜ืจืึทื ืกืคืึธืจืžืึทืฆื™ืข, ืึทื’ื’ืจืขื’ืึทื˜ื™ืึธืŸ, ืขื˜ืง ื›ืึทืคึผืึทื ื– ืื™ืŸ ืขืก.
  • ื ืึทืžืคึผื™ - ื•ื•ืขืงื˜ืึธืจ ื—ืฉื‘ื•ื ื•ืช, ืžืึทื˜ืจื™ืฅ ืื•ืŸ ืœื™ื ืขืึทืจ ืึทืœื’ืขื‘ืจืึท ื“ืึธืจื˜.
  • Scipy - ืขืก ืื™ื– ืึท ืคึผืœืึทืฅ ืคื•ืŸ ืžืื˜ืขืžืื˜ื™ืง ืื™ืŸ ื“ืขื ืคึผืขืงืœ, ืกืคึผืขืฆื™ืขืœ ืกื˜ืึทืฅ.
  • Jupyter ืœืึทื‘ - ืึท ืคึผืœืึทืฅ ืคื•ืŸ ื™ืงืกืคึผืœืึธืจืึทื˜ืึธืจื™ ื“ืึทื˜ืŸ ืึทื ืึทืœื™ืกื™ืก ืคื™ืฅ ื’ืขื–ื•ื ื˜ ืื™ืŸ ืœืึทืคึผื˜ืึทืคึผืก - ื ื•ืฆื™ืง ืฆื• ื•ื•ื™ืกืŸ.
  • ืจื™ืงื•ื•ืขืก - ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ื™ ื ืขืฅ.
  • Pyspark ืื™ื– ื–ื™ื™ืขืจ ืคืึธืœืงืก ืฆื•ื•ื™ืฉืŸ ื“ืึทื˜ืŸ ืขื ื“ื–ืฉืึทื ื™ืจื–, ืจื•ื‘ึฟ ืžืกืชึผืžื ืื™ืจ ื•ื•ืขื˜ ื”ืึธื‘ืŸ ืฆื• ื™ื ื˜ืขืจืึทืงื˜ ืžื™ื˜ ื“ืขื ืึธื“ืขืจ Spark, ืคืฉื•ื˜ ืจืขื›ื˜ ืฆื• ื–ื™ื™ืขืจ ืคึผืึธืคึผื•ืœืึทืจื™ื˜ืขื˜.
  • * ืกืขืœืขื ื™ื•ื - ื–ื™ื™ืขืจ ื ื•ืฆื™ืง ืคึฟืึทืจ ืงืึทืœืขืงื˜ื™ื ื’ ื“ืึทื˜ืŸ ืคื•ืŸ ื–ื™ื™ื˜ืœืขืš ืื•ืŸ ืจืขืกื•ืจืกืŸ, ืžืืœ ืขืก ืื™ื– ืคืฉื•ื˜ ืงื™ื™ืŸ ืื ื“ืขืจืข ื•ื•ืขื’ ืฆื• ื‘ืึทืงื•ืžืขืŸ ื“ื™ ื“ืึทื˜ืŸ.

ืžื™ื™ืŸ ื”ื•ื™ืคึผื˜ ืขืฆื”: ืœืขืจื ืขืŸ ืคึผื™ื˜ื”ืึธืŸ!

ืคึผืึทื ื“ืึทืก

ืœืึธืžื™ืจ ื ืขืžืขืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ืงืึธื“ ื•ื•ื™ ืึท ื‘ื™ื™ึทืฉืคึผื™ืœ:

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'}))

ื™ืกืขื ืฉืึทืœื™, ืžื™ืจ ื–ืขืŸ ืึทื– ื“ื™ ืงืึธื“ ืคื™ืฅ ืื™ืŸ ื“ืขืจ ืงืœืึทืกื™ืฉ ืกืงืœ ืžื•ืกื˜ืขืจ.

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

ืึธื‘ืขืจ ื“ืขืจ ื•ื•ื™ื›ื˜ื™ืง ื˜ื™ื™ืœ ืื™ื– ืึทื– ื“ืขืจ ืงืึธื“ ืื™ื– ื˜ื™ื™ืœ ืคื•ืŸ ื“ื™ ืฉืจื™ืคื˜ ืื•ืŸ ื“ื™ ืจืขืจื  - ืœื™ื ื™ืข; ืื™ืŸ ืคืึทืงื˜, ืžื™ืจ ื–ืขื ืขืŸ ืขืžื‘ืขื“ื™ื ื’ ืงื•ื•ื™ืจื™ื– ืื™ืŸ ื“ื™ ืคึผื™ื˜ื”ืึธืŸ ืจืขืจื  - ืœื™ื ื™ืข. ืื™ืŸ ื“ืขื ืกื™ื˜ื•ืึทืฆื™ืข, ื“ื™ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทืš ืงื•ืžื˜ ืฆื• ืื•ื ื“ื– ืคึฟื•ืŸ ืœื™ื™ื‘ืจืขืจื™ื– ืึทื–ืึท ื•ื•ื™ ืคึผืึทื ื“ืึทืก ืึธื“ืขืจ pySpark.

ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ, ืื™ืŸ pySpark ืžื™ืจ ื–ืขืŸ ืึท ืขื ืœืขืš ื˜ื™ืคึผ ืคื•ืŸ ื“ืึทื˜ืŸ ื˜ืจืึทื ืกืคืึธืจืžืึทืฆื™ืข ื“ื•ืจืš ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทืš ืื™ืŸ ื“ืขื ื’ื™ื™ืกื˜ ืคื•ืŸ:

df.filter(df.trip_type = โ€œreturnโ€)
  .groupby(โ€œdayโ€)
  .agg({duration: 'mean'})
  .sort()

ื•ื•ื• ืื•ืŸ ื•ื•ืึธืก ืฆื• ืœื™ื™ืขื ืขืŸ

ืื•ื™ืฃ ืคึผื™ื˜ื”ืึธืŸ ื–ื™ืš ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ ื ื™ืฉื˜ ืึท ืคึผืจืึธื‘ืœืขื ื’ืขืคึฟื™ื ืขืŸ ืžืึทื˜ืขืจื™ืึทืœืก ืฆื• ืœืขืจื ืขืŸ. ืขืก ื–ืขื ืขืŸ ืึท ืจื™ื–ื™ืง ื ื•ืžืขืจ ืคื•ืŸ ื˜ื•ื˜ืึธืจื™ืึทืœื– ืึธื ืœื™ื™ืŸ pandas, pySpark ืื•ืŸ ืงืึธืจืกืึทื– ืื•ื™ืฃ ืึธื ืฆื™ื ื“ืŸ (ืื•ืŸ ืื•ื™ืš ืึทืœื™ื™ืŸ DS). ืงื•ื™ืœืขืœื“ื™ืง, ื“ืขืจ ืื™ื ื”ืึทืœื˜ ื“ืึธ ืื™ื– ื’ืจื•ื™ืก ืคึฟืึทืจ ื’ืึธื•ื’ืœื™ื ื’, ืื•ืŸ ืื•ื™ื‘ ืื™ืš ื”ืึธื‘ืŸ ืฆื• ืงืœื™ื™ึทื‘ืŸ ืื™ื™ืŸ ืคึผืขืงืœ ืฆื• ืคืึธืงื•ืก ืื•ื™ืฃ, ื“ืึธืก ื•ื•ืึธืœื˜ ื–ื™ื™ืŸ ืคึผืึทื ื“ืึทืก, ื“ืึธืš. ืื•ื™ืš ื•ื•ืขื’ืŸ ื“ื™ ืงืึธืžื‘ื™ื ืึทืฆื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹DS + Python ืžืึทื˜ืขืจื™ืึทืœืก ื–ื™ื™ืขืจ ืคื™ืœ.

ืฉืึธืœ ื•ื•ื™ ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทืš

ื’ืึทื ืฅ ืึท ื‘ื™ืกืœ ื“ืึทื˜ืŸ ืคึผืจืึทืกืขืกื™ื ื’ ืื•ืŸ ืึทื ืึทืœื™ืกื™ืก ืคึผืจืึทื“ื–ืฉืขืงืก ื•ื•ืึธืก ืื™ืš ื”ืึธื‘ืŸ ื’ืขืืจื‘ืขื˜ ืžื™ื˜ ื–ืขื ืขืŸ, ืื™ืŸ ืคืึทืงื˜, ืฉืึธืœ ืกืงืจื™ืคึผืก ื•ื•ืึธืก ืจื•ืคืŸ ืงืึธื“ ืื™ืŸ Python, Java, ืื•ืŸ ื“ื™ ืฉืึธืœ ืงืึทืžืึทื ื“ื– ื–ื™ืš. ื“ืขืจื™ื‘ืขืจ, ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ, ืื™ืจ ืงืขื ืขืŸ ื‘ืึทื˜ืจืึทื›ื˜ืŸ ืคึผื™ื™ืคึผืœื™ื™ื ื– ืื™ืŸ bash/zsh/etc ื•ื•ื™ ืึท ืกืึธืจื˜ ืคื•ืŸ ื”ื•ื™ืš-ืžื“ืจื’ื” ืึธื ืคึฟืจืขื’ (ืื™ืจ ืงืขื ืขืŸ, ืคื•ืŸ ืงื•ืจืก, ืฉื˜ืึธืคึผืŸ ืœื•ืคึผืก ืื™ืŸ ื“ืึธืจื˜, ืึธื‘ืขืจ ื“ืึธืก ืื™ื– ื ื™ืฉื˜ ื˜ื™ืคึผื™ืฉ ืคึฟืึทืจ DS ืงืึธื“ ืื™ืŸ ืฉืึธืœ ืฉืคึผืจืึทื›ืŸ), ืœืึธื–ืŸ ืื•ื ื“ื– ื’ืขื‘ืŸ ื ืคืฉื•ื˜ืข ื‘ื™ื™ืฉืคื™ืœ - ืื™ืš ื”ืื‘ ื’ืขื“ืืจืคื˜ ืžืื›ืŸ ื QID ืžืืคื™ื ื’ ืคื•ืŸ ื•ื•ื™ืงื™ื“ืื˜ืŸ ืื•ืŸ ืคื•ืœืข ืคืืจื‘ื™ื ื“ื•ื ื’ืขืŸ ืฆื• ื“ื™ ืจื•ืกื™ืฉืข ืื•ืŸ ืขื ื’ืœื™ืฉืข ื•ื•ื™ืงื™'ืก, ื“ืขืจืคืืจ ื”ืื‘ ืื™ืš ื’ืขืฉืจื™ื‘ืŸ ื ืคืฉื•ื˜ืข ื‘ืงืฉื” ืคื•ืŸ ื“ื™ ืงืืžืื ื“ืŸ ืื™ืŸ ื“ืขืจ ื‘ืืฉ ืื•ืŸ ืคืืจ ื“ื™ ืื•ื™ืกื’ืื‘ืข ื”ืื‘ ืื™ืš ื’ืขืฉืจื™ื‘ืŸ ื ืคืฉื•ื˜ืข ืฉืจื™ืคื˜ ืื™ืŸ Python, ื•ื•ืืก ืื™ืš ื”ืื‘ ื’ืขืฉืจื™ื‘ืŸ ืฉื˜ืขืœืŸ ืฆื•ื–ืึทืžืขืŸ ื•ื•ื™ ื“ืึธืก:

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")' 

ื“ืึธืก ืื™ื–, ืื™ืŸ ืคืึทืงื˜, ื“ื™ ื’ืื ืฆืข ืจืขืจื  - ืœื™ื ื™ืข ื•ื•ืึธืก ื‘ืืฉืืคืŸ ื“ื™ ืคืืจืœืื ื’ื˜ ืžืึทืคึผื™ื ื’; ื•ื•ื™ ืžื™ืจ ื–ืขืŸ, ืึทืœืฅ ื’ืขืืจื‘ืขื˜ ืื™ืŸ ืกื˜ืจื™ื ืžืึธื“ืข:

  • pv filepath - ื’ื™ื˜ ืึท ืคึผืจืึธื’ืจืขืก ื‘ืึทืจ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื˜ืขืงืข ื’ืจื™ื™ืก ืื•ืŸ ืคึผืึทืกื™ื– ื“ื™ ืื™ื ื”ืึทืœื˜ ืึทื ื•ื•ืขืจื“ื–
  • unpigz -c ืœื™ื™ืขื ืขืŸ ื˜ื™ื™ืœ ืคื•ืŸ ื“ื™ ืึทืจืงื™ื™ื•ื• ืื•ืŸ ื’ืขื’ืขื‘ืŸ ืขืก ืฆื• jq
  • jq ืžื™ื˜ ื“ื™ ืฉืœื™ืกืœ - ืกื˜ืจื™ื ื’ืœื™ื™ืš ื’ืขืฉืืคืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ ืื•ืŸ ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ืขืก ืฆื• ื“ื™ ืคึผืึธืกื˜ืคึผืจืึทืกืขืกืขืจ (ื–ืขืœื‘ื™ืงืขืจ ื•ื•ื™ ืžื™ื˜ ื“ืขืจ ืขืจืฉื˜ืขืจ ื‘ื™ื™ึทืฉืคึผื™ืœ) ืื™ืŸ ืคึผื™ื˜ื”ืึธืŸ
  • ืื™ื ืขื•ื•ื™ื™ื ื™ืง, ื“ื™ ืคึผืึธืกื˜ืคึผืจืึทืกืขืกืขืจ ืื™ื– ื’ืขื•ื•ืขืŸ ืึท ืคึผืฉื•ื˜ ืฉื˜ืึทื˜ ืžืึทืฉื™ืŸ ื•ื•ืึธืก ืคืึธืจืžืึทื˜ื˜ืขื“ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ 

ืื™ืŸ ื’ืึทื ืฅ, ืึท ืงืึธืžืคึผืœืขืงืก ืจืขืจื  - ืœื™ื ื™ืข ืืจื‘ืขื˜ืŸ ืื™ืŸ ืœื•ื™ืคืŸ ืžืึธื“ืข ืื•ื™ืฃ ื’ืจื•ื™ืก ื“ืึทื˜ืŸ (0.5 ื˜ื‘), ืึธืŸ ื‘ืึทื˜ื™ื™ึทื˜ื™ืง ืจืขืกื•ืจืกืŸ ืื•ืŸ ื’ืขืžืื›ื˜ ืคื•ืŸ ืึท ืคึผืฉื•ื˜ ืจืขืจื  - ืœื™ื ื™ืข ืื•ืŸ ืึท ืคึผืึธืจ ืคื•ืŸ ืžื›ืฉื™ืจื™ื.

ืืŸ ืื ื“ืขืจ ื•ื•ื™ื›ื˜ื™ืง ืขืฆื”: ืงืขื ืขืŸ ืฆื• ืึทืจื‘ืขื˜ืŸ ื’ืขื–ื•ื ื˜ ืื•ืŸ ื™ืคืขืงื˜ื™ื•ื•ืœื™ ืื™ืŸ ื“ื™ ื•ื•ืึธืงื–ืึทืœ ืื•ืŸ ืฉืจื™ื™ึทื‘ืŸ ื‘ืึทืฉ / ื–ืฉ / ืขื˜ืง.

ื•ื•ืื• ื•ื•ืขื˜ ืขืก ื–ื™ื™ืŸ ื ื•ืฆื™ืง? ื™ืึธ, ื›ึผืžืขื˜ ืื•ืžืขื˜ื•ื - ื•ื•ื™ื“ืขืจ, ืขืก ื–ืขื ืขืŸ ืึท ืคึผืœืึทืฅ ืคื•ืŸ ืžืึทื˜ืขืจื™ืึทืœืก ืฆื• ืœืขืจื ืขืŸ ืื•ื™ืฃ ื“ื™ ืื™ื ื˜ืขืจื ืขื˜. ืกืคึผืขืฆื™ืขืœ ื“ืึธ ื“ืขื ืžื™ื™ืŸ ืคืจื™ืขืจื“ื™ืงืŸ ืึทืจื˜ื™ืงืœ.

ืจ ืกืงืจื™ืคึผื˜ื™ื ื’

ื•ื•ื™ื“ืขืจ, ื“ืขืจ ืœื™ื™ืขื ืขืจ ืงืขืŸ ืื•ื™ืกืจื•ืคืŸ - ื ื•, ื“ืึธืก ืื™ื– ืึท ื’ืึทื ืฅ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทืš! ืื•ืŸ ืคื•ืŸ ืงื•ืจืก, ืขืจ ื•ื•ืขื˜ ื–ื™ื™ืŸ ืจืขื›ื˜. ืึธื‘ืขืจ, ืื™ืš ื™ื•ื–ืฉืึทื•ื•ืึทืœื™ ื’ืขื˜ืจืึธืคืŸ ืจ ืื™ืŸ ืึทื–ืึท ืึท ืงืึธื ื˜ืขืงืกื˜ ืึทื–, ืื™ืŸ ืคืึทืงื˜, ืขืก ืื™ื– ื’ืขื•ื•ืขืŸ ื–ื™ื™ืขืจ ืขื ืœืขืš ืฆื• ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทืš.

R ืื™ื– ืึท ืกื˜ืึทื˜ื™ืกื˜ื™ืฉ ืงืึทืžืคึผื™ื•ื˜ื™ื ื’ ืกื•ื•ื™ื•ื•ืข ืื•ืŸ ืฉืคึผืจืึทืš ืคึฟืึทืจ ืกื˜ืึทื˜ื™ืง ืงืึทืžืคึผื™ื•ื˜ื™ื ื’ ืื•ืŸ ื•ื•ื™ื–ืฉื•ื•ืึทืœืึทื–ื™ื™ืฉืึทืŸ (ืœื•ื™ื˜ ืฆื• ื“ืขื).

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ
ื’ืขื ื•ืžืขืŸ ืคื•ื  ื“ืึทื ืขื˜. ื“ื•ืจืš ื“ืขื ื•ื•ืขื’, ืื™ืš ืจืขืงืึธืžืขื ื“ื™ืจืŸ ืขืก, ื’ื•ื˜ ืžืึทื˜ืขืจื™ืึทืœ.

ืคืืจื•ื•ืืก ื“ืึทืจืฃ ืึท ื“ืึทื˜ืŸ ื’ืขืœืขืจื ื˜ืขืจ ื•ื•ื™ืกืŸ ืจ? ืื™ืŸ ืžื™ื ื“ืกื˜ืขืจ, ื•ื•ื™ื™ึทืœ ืขืก ืื™ื– ืึท ืจื™ื–ื™ืง ืฉื™ื›ื˜ืข ืคื•ืŸ โ€‹โ€‹ื ื™ื˜-ืขืก ืžืขื ื˜ืฉืŸ ื•ื•ืึธืก ืึทื ืึทืœื™ื™ื– ื“ืึทื˜ืŸ ืื™ืŸ ืจ. ืื™ืš ื’ืขืคึฟื•ื ืขืŸ ืขืก ืื™ืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ืขืจื˜ืขืจ:

  • ืคืึทืจืžืึทืกื•ื˜ื™ืงืึทืœ ืกืขืงื˜ืึธืจ.
  • ื‘ื™ืึธืœืึธื’ื™ืกืฅ.
  • ืคื™ื ืึทื ืฆื™ืขืœ ืกืขืงื˜ืึธืจ.
  • ืžืขื ื˜ืฉืŸ ืžื™ื˜ ืึท ืจื™ื™ืŸ ืžืึทื˜ืึทืžืึทื˜ื™ืงืึทืœ ื‘ื™ืœื“ื•ื ื’ ื•ื•ืึธืก ื”ืึทื ื“ืœืขืŸ ืžื™ื˜ ืกื˜ืึทื˜ื™ืกื˜ื™ืง.
  • ืกืคึผืขืกื™ืึทืœื™ื–ืขื“ ืกื˜ืึทื˜ื™ืกื˜ื™ืฉ ืžืึธื“ืขืœืก ืื•ืŸ ืžืึทืฉื™ืŸ ืœืขืจื ืขืŸ ืžืึธื“ืขืœืก (ื•ื•ืึธืก ืงืขื ืขืŸ ืึธืคื˜ ื‘ืœื•ื™ื– ื–ื™ื™ืŸ ื’ืขืคึฟื•ื ืขืŸ ืื™ืŸ ื“ืขืจ ืžื—ื‘ืจ 'ืก ื•ื•ืขืจืกื™ืข ื•ื•ื™ ืึท 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"))

ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ, ืคื™ืœืข ื™ื™ื“ื™ืึทื– ืคื•ืŸ ืจ ื”ืึธื‘ืŸ ืžื™ื™ื’ืจื™ื™ื˜ื™ื“ ืื™ืŸ ืคึผื™ื˜ื”ืึธืŸ ืคึผืึทืงืึทื“ื–ืฉืึทื– ืึทื–ืึท ื•ื•ื™ ืคึผืึทื ื“ืึทืก, ื ืึทืžืคึผื™ ืึธื“ืขืจ ืกื™ืคึผื™, ื•ื•ื™ ื“ืึทื˜ืึทืคืจืึทืžืขืก ืื•ืŸ ื“ืึทื˜ืŸ ื•ื•ืขืงื˜ืึธืจื™ื–ืึทื˜ื™ืึธืŸ - ืึทื–ื•ื™ ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ, ืึท ืคึผืœืึทืฅ ืคื•ืŸ ื˜ื™ื ื’ื– ืื™ืŸ R ื•ื•ืขื˜ ื•ื™ืกืงื•ืžืขืŸ ื‘ืึทืงืึทื ื˜ ืื•ืŸ ื‘ืึทืงื•ื•ืขื ืคึฟืึทืจ ืื™ืจ.

ืขืก ื–ืขื ืขืŸ ืคื™ืœืข ืžืงื•ืจื™ื ืฆื• ืœืขืจื ืขืŸ, ืœืžืฉืœ, this.

ื•ื•ื™ืกืŸ ื’ืจืึทืคืก

ื“ืึธ ืื™ืš ื”ืึธื‘ืŸ ืึท ื‘ื™ืกืœ ื•ืžื’ืขื•ื•ื™ื™ื ื˜ืœืขืš ื“ืขืจืคืึทืจื•ื ื’, ื•ื•ื™ื™ึทืœ ืื™ืš ืึธืคื˜ ื”ืึธื‘ืŸ ืฆื• ืึทืจื‘ืขื˜ืŸ ืžื™ื˜ ื•ื•ื™ืกืŸ ื’ืจืึทืคืก ืื•ืŸ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ ืคึฟืึทืจ ื’ืจืึทืคืก. ื“ืขืจื™ื‘ืขืจ, ืœืึธื–ืŸ ืก ื ืึธืจ ื‘ืขืงื™ืฆืขืจ ื’ื™ื™ืŸ ืื™ื‘ืขืจ ื“ื™ ื‘ืึทืกื™ืงืก, ื•ื•ื™ื™ึทืœ ื“ืขื ื˜ื™ื™ืœ ืื™ื– ืึท ื‘ื™ืกืœ ืžืขืจ ืขืงื–ืึธื˜ื™ืฉ.

ืื™ืŸ ืงืœืืกื™ืฉืข ืจื™ืœื™ื™ืฉืึทื ืึทืœ ื“ืึทื˜ืึทื‘ื™ื™ืกื™ื– ืžื™ืจ ื”ืึธื‘ืŸ ืึท ืคืึทืจืคืขืกื˜ื™ืงื˜ ืกื˜ืฉืขืžืึท, ืึธื‘ืขืจ ื“ืึธ ื“ื™ ืกื˜ืฉืขืžืึท ืื™ื– ืคืœืขืงืกืึทื‘ืึทืœ, ื™ืขื“ืขืจ ืคึผืจืขื“ื™ืงืึทื˜ ืื™ื– ืคืืงื˜ื™ืฉ ืึท "ื–ื™ื™ึทืœ" ืื•ืŸ ืืคื™ืœื• ืžืขืจ.

ื™ืžืึทื“ื–ืฉืึทืŸ ืึทื– ืื™ืจ ื”ืึธื˜ ืžืึธื“ืขืœื™ื ื’ ืึท ืžืขื ื˜ืฉ ืื•ืŸ ื’ืขื•ื•ืืœื˜ ืฆื• ื‘ืึทืฉืจื™ื™ึทื‘ืŸ ืฉืœื™ืกืœ ื–ืื›ืŸ, ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืœืึธืžื™ืจ ื ืขืžืขืŸ ืึท ืกืคึผืขืฆื™ืคื™ืฉ ืžืขื ื˜ืฉ, ื“ืึธื•ื’ืœืึทืก ืึทื“ืึทืžืก, ืื•ืŸ ื ื•ืฆืŸ ื“ืขื ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ ื•ื•ื™ ืึท ื™ืงืขืจ.

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ
www.wikidata.org/wiki/Q42

ืื•ื™ื‘ ืžื™ืจ ื’ืขื•ื•ื™ื™ื ื˜ ืึท ืจื™ืœื™ื™ืฉืึทื ืึทืœ ื“ืึทื˜ืึทื‘ื™ื™ืก, ืžื™ืจ ื•ื•ืึธืœื˜ ื”ืึธื‘ืŸ ืฆื• ืฉืึทืคึฟืŸ ืึท ืจื™ื–ื™ืง ื˜ื™ืฉ ืึธื“ืขืจ ื˜ื™ืฉืŸ ืžื™ื˜ ืึท ืจื™ื–ื™ืง ื ื•ืžืขืจ ืคื•ืŸ ืฉืคืืœื˜ืŸ, ืจื•ื‘ึฟ ืคื•ืŸ ื•ื•ืึธืก ื•ื•ืึธืœื˜ ื–ื™ื™ืŸ NULL ืึธื“ืขืจ ืึธื ื’ืขืคื™ืœื˜ ืžื™ื˜ ืขื˜ืœืขื›ืข ืคืขืœื™ืงื™ื™ึทื˜ ืคืึทืœืฉ ื•ื•ืขืจื˜, ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืขืก ืื™ื– ืึทื ืœื™ื™ืงืœื™ ืึทื– ืคื™ืœืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ืื•ื ื“ื– ื”ืึธื‘ืŸ ืึท ืคึผืึธื–ื™ืฆื™ืข ืื™ืŸ ื“ื™ ืงืึธืจืขื™ึดืฉ ื ืืฆื™ืื ืืœืข ื‘ื™ื‘ืœื™ืึธื˜ืขืง - ืคื•ืŸ ืงื•ืจืก, ืžื™ืจ ืงืขืŸ ืฉื˜ืขืœืŸ ื–ื™ื™ ืื™ืŸ ื‘ืึทื–ื•ื ื“ืขืจ ื˜ื™ืฉืŸ, ืึธื‘ืขืจ ื“ืึธืก ื•ื•ืึธืœื˜ ืœืขืกืึธืฃ ื–ื™ื™ืŸ ืึทืŸ ืคึผืจื•ื•ื•ืŸ ืฆื• ืžืึธื“ืขืœ ืึท ืคืœืขืงืกืึทื‘ืึทืœ ืœืึทื“ื–ืฉื™ืงืึทืœ ืงืจื™ื™ึทื– ืžื™ื˜ ืคึผืจืขื“ื™ืงืึทืฅ ื ื™ืฆืŸ ืึท ืคืึทืจืคืขืกื˜ื™ืงื˜ ืจื™ืœื™ื™ืฉืึทื ืึทืœ.

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ
ืึทื–ื•ื™ ื™ืžืึทื“ื–ืฉืึทืŸ ืึทื– ืึทืœืข ื“ืึทื˜ืŸ ื–ืขื ืขืŸ ืกื˜ืึธืจื“ ื•ื•ื™ ืึท ื’ืจืึทืคื™ืง ืึธื“ืขืจ ื•ื•ื™ ื‘ื™ื™ื ืขืจื™ ืื•ืŸ ื•ื ืึทืจื™ ื‘ื•ืœื™ืึทืŸ ืื•ื™ืกื“ืจื•ืงืŸ.

ื•ื•ืื• ืงืขืŸ ืžืขืŸ ื“ืืก ืืคื™ืœื• ื˜ืจืขืคืŸ? ืขืจืฉื˜ืขืจ, ืึทืจื‘ืขื˜ ืžื™ื˜ ื“ืึทื˜ืŸ ื•ื•ื™ืงื™, ืื•ืŸ ืžื™ื˜ ืงื™ื™ืŸ ื’ืจืึทืคื™ืง ื“ืึทื˜ืึทื‘ื™ื™ืกื™ื– ืึธื“ืขืจ ืคืืจื‘ื•ื ื“ืŸ ื“ืึทื˜ืŸ.

ื“ื™ ืคืืœื’ืขื ื“ืข ื–ืขื ืขืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ ื•ื•ืึธืก ืื™ืš ื”ืึธื‘ืŸ ื’ืขื•ื•ื™ื™ื ื˜ ืื•ืŸ ื’ืขืืจื‘ืขื˜ ืžื™ื˜.

SPARQL

ื•ื•ื™ืงื™:
SPARQL (ืจืขืงื•ืจืกื™ื•ื•ืข ืึทืงืจืึทื ื™ื ืคื•ืŸ ืขื ื’ืœื™ืฉ SPARQL ืคึผืจืึธื˜ืึธืงืึธืœ ืื•ืŸ RDF ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทืš) - ื“ืึทื˜ืŸ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทืš, ืจืขืคึผืจื™ื–ืขื ื˜ื™ื“ ื“ื•ืจืš ื“ื™ ืžืึธื“ืขืœ ืจ.ืค.ื“.ืื•ืŸ ืคึผืจืึธื˜ืึธืงืึธืœ ืฆื• ืึทืจื™ื‘ืขืจืคื™ืจืŸ ื“ื™ ืจื™ืงื•ื•ืขืก ืื•ืŸ ืจื™ืกืคึผืึทื ื“ ืฆื• ื–ื™ื™. SPARQL ืื™ื– ืึท ืจืขืงืึธืžืขื ื“ืึทืฆื™ืข W3C ืงืึธื ืกืึธืจื˜ื™ื•ื ืื•ืŸ ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ื˜ืขืงื ืึทืœืึทื“ื–ืฉื™ื– ืกืขืžืึทื ื˜ื™ืง ื•ื•ืขื‘.

ืื‘ืขืจ ืื™ืŸ ืคืึทืงื˜ ืขืก ืื™ื– ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทืš ืคึฟืึทืจ ืœืึทื“ื–ืฉื™ืงืึทืœ ื•ื ืึทืจื™ ืื•ืŸ ื‘ื™ื™ื ืขืจื™ ืคึผืจืขื“ื™ืงืึทืฅ. ืื™ืจ ื–ืขื ื˜ ืคืฉื•ื˜ ืงืึทื ื“ื™ืฉืึทื ืึทืœื™ ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื•ื•ืึธืก ืื™ื– ืคืึทืจืคืขืกื˜ื™ืงื˜ ืื™ืŸ ืึท ื‘ื•ืœื™ืึทืŸ ืื•ื™ืกื“ืจื•ืง ืื•ืŸ ื•ื•ืึธืก ืื™ื– ื ื™ืฉื˜ (ื–ื™ื™ืขืจ ืกื™ืžืคึผืœืึทืคื™ื™ื“).

ื“ื™ RDF (Resource Description Framework) ื‘ืึทื–ืข ื–ื™ืš, ืื™ื‘ืขืจ ื•ื•ืึธืก SPARQL ืงื•ื•ื™ืจื™ื– ื–ืขื ืขืŸ ืขืงืกืึทืงื™ื•ื˜ืึทื“, ืื™ื– ืึท ื“ืจื™ื™ึทื™ืง object, predicate, subject - ืื•ืŸ ื“ื™ ืึธื ืคึฟืจืขื’ ืกืึทืœืขืงืฅ ื“ื™ ืคืืจืœืื ื’ื˜ ื˜ืจื™ืคึผืึทืœื– ืœื•ื™ื˜ ื“ื™ ืกืคึผืขืกื™ืคื™ืขื“ ืจื™ืกื˜ืจื™ืงืฉืึทื ื– ืื™ืŸ ื“ื™ ื’ื™ื™ืกื˜: ื’ืขืคึฟื™ื ืขืŸ ืึทืŸ X ืึทื–ื•ื™ ืึทื– p_55(X, q_33) ืื™ื– ืืžืช - ื•ื•ื•, ืคื•ืŸ ืงื•ืจืก, p_55 ืื™ื– ืึท ืžื™ืŸ ืคื•ืŸ ื‘ืึทืฆื™ื•ื ื’ ืžื™ื˜ ID 55, ืื•ืŸ q_33 ืื™ื– ืึทืŸ ืึธื‘ื™ืขืงื˜ ืžื™ื˜ ID 33 (ื“ืึธ ืื•ืŸ ื“ื™ ื’ืื ืฆืข ื’ืขืฉื™ื›ื˜ืข, ื•ื•ื™ื“ืขืจ ืื™ื‘ืขืจืœืึธื–ืŸ ืึทืœืข ืกืึธืจืฅ ืคื•ืŸ ืคึผืจื˜ื™ื).

ื‘ื™ื™ึทืฉืคึผื™ืœ ืคื•ืŸ ื“ืึทื˜ืŸ ืคึผืจืขื–ืขื ื˜ื™ืจื•ื ื’:

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ
ื‘ื™ืœื“ืขืจ ืื•ืŸ ื‘ื™ื™ืฉืคึผื™ืœ ืžื™ื˜ ืœืขื ื“ืขืจ ื“ืึธ ืคื•ื  ื“ืึทื ืขื˜.

ื‘ื™ื™ืกื™ืงืœื™ ืึธื ืคึฟืจืขื’ ื‘ื™ื™ึทืฉืคึผื™ืœ

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ

ืื™ืŸ ืคืึทืงื˜, ืžื™ืจ ื•ื•ื™ืœืŸ ืฆื• ื’ืขืคึฟื™ื ืขืŸ ื“ื™ ื•ื•ืขืจื˜ ืคื•ืŸ ื“ื™ ืœืึทื ื“ ื•ื•ืขืจื™ืึทื‘ืึทืœ ืึทื–ื•ื™ ืึทื– ืคึฟืึทืจ ื“ื™ ืคึผืจืขื“ื™ืงืึทื˜
member_of, ืขืก ืื™ื– ืืžืช ืึทื– member_of(?country,q458) ืื•ืŸ q458 ืื™ื– ื“ื™ ID ืคื•ืŸ ื“ื™ ืื™ื™ืจืืคืขื™ืฉืข ื™ื•ื ื™ืึทืŸ.

ืึท ื‘ื™ื™ืฉืคึผื™ืœ ืคื•ืŸ ืึท ืคืึทืงื˜ื™ืฉ SPARQL ืึธื ืคึฟืจืขื’ ืื™ืŸ ื“ื™ ืคึผื™ื˜ื”ืึธืŸ ืžืึธื˜ืึธืจ:

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ

ื˜ื™ืคึผื™ืงืึทืœืœื™, ืื™ืš ื”ืึธื‘ืŸ ืฆื• ืœื™ื™ืขื ืขืŸ SPARQL ืืœื ื•ื•ื™ ืฉืจื™ื™ึทื‘ืŸ ืขืก - ืื™ืŸ ืึทื– ืกื™ื˜ื•ืึทืฆื™ืข, ืขืก ื•ื•ืึธืœื˜ ื–ื™ื™ืŸ ืึท ื ื•ืฆื™ืง ื‘ืงื™ืขืก ืฆื• ืคึฟืึทืจืฉื˜ื™ื™ืŸ ื“ื™ ืฉืคึผืจืึทืš ืื™ืŸ ืžื™ื ื“ืกื˜ืขืจ ื‘ื™ื™ ืึท ื™ืงืขืจื“ื™ืง ืžื“ืจื’ื” ืฆื• ืคึฟืึทืจืฉื˜ื™ื™ืŸ ืคึผื•ื ืงื˜ ื•ื•ื™ ื“ืึทื˜ืŸ ื–ืขื ืขืŸ ืจื™ื˜ืจื™ื•ื•ื“. 

ืขืก ืื™ื– ืึท ืคึผืœืึทืฅ ืคื•ืŸ ืžืึทื˜ืขืจื™ืึทืœ ืฆื• ืœืขืจื ืขืŸ ืึธื ืœื™ื™ืŸ: ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ื“ืึธ this ะธ this. ืื™ืš ื™ื•ื–ืฉืึทื•ื•ืึทืœื™ ื’ื•ื’ืœ ืกืคึผืขืฆื™ืคื™ืฉ ื“ื™ื–ื™ื™ื ื– ืื•ืŸ ื‘ื™ื™ืฉืคื™ืœืŸ ืื•ืŸ ื“ืึธืก ืื™ื– ื’ืขื ื•ื’ ืคึฟืึทืจ ืื™ืฆื˜.

ืœืึทื“ื–ืฉื™ืงืึทืœ ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ

ืื™ืจ ืงืขื ื˜ ืœื™ื™ืขื ืขืŸ ืžืขืจ ื•ื•ืขื’ืŸ ื“ืขื ื˜ืขืžืข ืื™ืŸ ืžื™ื™ืŸ ืึทืจื˜ื™ืงืœ ื“ืึธ. ืื•ืŸ ื“ืึธ, ืžื™ืจ ื•ื•ืขืœืŸ ื‘ืœื•ื™ื– ื‘ืขืงื™ืฆืขืจ ื•ื ื˜ืขืจื–ื•ื›ืŸ ื•ื•ืึธืก ืœืึทื“ื–ืฉื™ืงืึทืœ ืฉืคึผืจืึทื›ืŸ ื–ืขื ืขืŸ ื’ืขื–ื•ื ื˜ ืคึผืึทืกื™ืง ืคึฟืึทืจ ืฉืจื™ื™ื‘ืŸ ืคึฟืจืื’ืŸ. ื™ืกืขื ืฉืึทืœื™, RDF ืื™ื– ื‘ืœื•ื™ื– ืึท ืกื›ื•ื ืคื•ืŸ ืœืึทื“ื–ืฉื™ืงืึทืœ ืกื˜ื™ื™ื˜ืžืึทื ืฅ ืคื•ืŸ ื“ื™ ืคืึธืจืขื ืคึผ (X) ืื•ืŸ ื” (X, Y), ืื•ืŸ ืึท ืœืึทื“ื–ืฉื™ืงืึทืœ ืึธื ืคึฟืจืขื’ ื”ืื˜ ื“ื™ ืคืืœื’ืขื ื“ืข ืคืึธืจืขื:

output(X) :- country(X), member_of(X,โ€œEUโ€).

ื“ืึธ ืžื™ืจ ื–ืขื ืขืŸ ื’ืขืจืขื“ื˜ ื•ื•ืขื’ืŸ ืงืจื™ื™ื™ื˜ื™ื ื’ ืึท ื ื™ื™ึท ืคึผืจืขื“ื™ืงืึทื˜ ืจืขื–ื•ืœื˜ืึทื˜ / 1 (/1 ืžื™ื˜ืœ ื•ื ืึทืจื™), ืฆื•ื’ืขืฉื˜ืขืœื˜ ืึทื– ืคึฟืึทืจ X ืขืก ืื™ื– ืืžืช ืึทื– ืœืึทื ื“ (X) - ื“"ื” X ืื™ื– ืึท ืœืึทื ื“ ืื•ืŸ ืื•ื™ืš ืžื™ื˜ื’ืœื™ื“_ืคื•ืŸ (X,"EU ").

ืึทื– ืื™ื–, ืื™ืŸ ื“ืขื ืคืึทืœ, ื‘ื™ื™ื“ืข ื“ื™ ื“ืึทื˜ืŸ ืื•ืŸ ื“ื™ ื›ึผืœืœื™ื ื–ืขื ืขืŸ ื“ืขืจืœืื ื’ื˜ ืื™ืŸ ื“ื™ ื–ืขืœื‘ืข ื•ื•ืขื’, ื•ื•ืึธืก ืึทืœืึทื•ื– ืื•ื ื“ื– ืฆื• ืžืึธื“ืขืœ ืคึผืจืึธื‘ืœืขืžืก ื–ื™ื™ืขืจ ืœื™ื™ื›ื˜ ืื•ืŸ ื’ืขื–ื•ื ื˜.

ื•ื•ืื• ื”ืืกื˜ื• ื–ื™ืš ื‘ืื’ืขื’ื ื˜ ืื™ืŸ ื“ื™ ืื™ื ื“ื•ืกื˜ืจื™ืข?: ืึท ื’ืึทื ืฅ ื’ืจื•ื™ืก ืคึผืจื•ื™ืขืงื˜ ืžื™ื˜ ืึท ืคื™ืจืžืข ื•ื•ืึธืก ืฉืจื™ื™ื‘ื˜ ืงื•ื•ื™ืจื™ื– ืื™ืŸ ืึทื–ืึท ืึท ืฉืคึผืจืึทืš, ื•ื•ื™ ื’ืขื–ื•ื ื˜ ื•ื•ื™ ืื•ื™ืฃ ื“ื™ ืงืจืึทื ื˜ ืคึผืจื•ื™ืขืงื˜ ืื™ืŸ ื“ื™ ื”ืึทืจืฅ ืคื•ืŸ ื“ื™ ืกื™ืกื˜ืขื - ืขืก ื•ื•ืึธืœื˜ ื•ื™ืกืงื•ืžืขืŸ ืึทื– ื“ืึธืก ืื™ื– ืึท ื’ืึทื ืฅ ืขืงื–ืึธื˜ื™ืฉ ื–ืึทืš, ืึธื‘ืขืจ ืžืืœ ืขืก ื›ืึทืคึผืึทื ื–.

ืึท ื‘ื™ื™ืฉืคึผื™ืœ ืคื•ืŸ ืึท ืงืึธื“ ืคืจืึทื’ืžืขื ื˜ ืื™ืŸ ืึท ืœืึทื“ื–ืฉื™ืงืึทืœ ืฉืคึผืจืึทืš ืคึผืจืึทืกืขืกื™ื ื’ ื•ื•ื™ืงื™ื“ืึทื˜ืึท:

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ

ืžืึทื˜ืขืจื™ืึทืœืก: ืื™ืš ื•ื•ืขื˜ ื’ืขื‘ืŸ ื“ืึธ ืึท ืคึผืึธืจ ืคื•ืŸ ืœื™ื ืงืก ืฆื• ื“ื™ ืžืึธื“ืขืจืŸ ืœืึทื“ื–ืฉื™ืงืึทืœ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทืš ืขื ื˜ืคืขืจ ืกืขื˜ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ - ืื™ืš ืจืขืงืึธืžืขื ื“ื™ืจืŸ ืฆื• ืœืขืจื ืขืŸ ืขืก:

ื“ืึทื˜ืึท ืกืกื™ืขื ื˜ื™ืกื˜ ืก ื”ืขืจื•ืช: ืึท ืคืขืจื–ืขื ืœื™ื›ืขืŸ ืจืขืฆืขื ื–ื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืึทื˜ืึท ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทื›ืŸ

ืžืงื•ืจ: www.habr.com

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’