рдбреЗрдЯрд╛рдмреЗрд╕ рдбрд┐рдЬрд╛рдЗрди рдореВрд▓ рдмрд╛рддреЗрдВ - PostgreSQL, Cassandra, рдФрд░ MongoDB рддреБрд▓рдирд╛

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



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

рдЗрд╕ рдЖрд▓реЗрдЦ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдореЙрдбрд▓рд┐рдВрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбреЗрдЯрд╛ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ SQL рдФрд░ NoSQL рдХреЗ рдмреАрдЪ рд╕рд╣реА рд╡рд┐рдХрд▓реНрдк рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдирд╛ рд╣реИред рд╣рдо рдПрдХ SQL рдбреЗрдЯрд╛рдмреЗрд╕, рдЬреИрд╕реЗ PostgreSQL рдФрд░ рджреЛ NoSQL рдбреЗрдЯрд╛рдмреЗрд╕ - рдХреИрд╕рдВрдбреНрд░рд╛ рдФрд░ MongoDB, рдбреЗрдЯрд╛рдмреЗрд╕ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ, рдЬреИрд╕реЗ рдЯреЗрдмрд▓ рдмрдирд╛рдиреЗ, рдЙрдиреНрд╣реЗрдВ рдкреЙрдкреНрдпреБрд▓реЗрдЯ рдХрд░рдиреЗ, рдЯреЗрдмрд▓ рд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝рдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╣рдЯрд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рд╣рдо рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдиреБрдХреНрд░рдорд┐рдд, рд▓реЗрдирджреЗрди, JOINs, TTL рдирд┐рд░реНрджреЗрд╢реЛрдВ рдФрд░ JSON- рдЖрдзрд╛рд░рд┐рдд рдбреЗрдЯрд╛рдмреЗрд╕ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЛ рджреЗрдЦреЗрдВрдЧреЗред

SQL рдФрд░ NoSQL рдореЗрдВ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ?

SQL рдбреЗрдЯрд╛рдмреЗрд╕ ACID рдЯреНрд░рд╛рдВрдЬреЗрдХреНрд╢рдирд▓ рдЧрд╛рд░рдВрдЯреА рдХреЗ рд╕рд╛рде рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд▓рдЪреАрд▓реЗрдкрди рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдореМрдЬреВрджрд╛ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЙрдбрд▓ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдЕрдирдкреЗрдХреНрд╖рд┐рдд рддрд░реАрдХреЛрдВ рд╕реЗ JOIN рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рдХреНрд╡реЗрд░реА рдХрд░рдиреЗ рдХреА рдЙрдирдХреА рдХреНрд╖рдорддрд╛ред

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

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

NoSQL рдПрдХ рд╡рд┐рддрд░рд┐рдд рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдХрдИ рдбреЗрдЯрд╛рдмреЗрд╕ рдбрд┐рдЬрд╝рд╛рдЗрди рдЯреНрд░реЗрдб-рдСрдлрд╝ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рддрд░реНрдХ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд▓реЗрдирджреЗрди рд╣рд╛рдирд┐ ACID, JOIN рдФрд░ рд╕реБрд╕рдВрдЧрдд рд╡реИрд╢реНрд╡рд┐рдХ рджреНрд╡рд┐рддреАрдпрдХ рд╕реВрдЪрдХрд╛рдВрдХ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

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

рдирд┐рдореНрди рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ NoSQL рдореЗрдВ рдбреЗрдЯрд╛ рдореЙрдбрд▓рд┐рдВрдЧ SQL рд╕реЗ рдХреИрд╕реЗ рднрд┐рдиреНрди рд╣реЛрддрд╛ рд╣реИред



SQL рдФрд░ NoSQL: рджреЛрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ?

рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдЬреИрд╕реЗ Amazon.com, Netflix, Uber, рдФрд░ Airbnb рдХреЗ рд╕рд╛рде рд╡рд╛рд╕реНрддрд╡рд┐рдХ-рд╡рд┐рд╢реНрд╡ рдЕрдиреБрдкреНрд░рдпреЛрдЧ, рдЬрдЯрд┐рд▓, рдмрд╣реБ-рд╕реЙрд░реНрдЯ рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Amazon.com рдЬреИрд╕реЗ рдПрдХ рдИ-рдХреЙрдорд░реНрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╣рд▓реНрдХреЗ, рдЕрддреНрдпрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ, рдЙрддреНрдкрд╛рджреЛрдВ, рдЖрджреЗрд╢реЛрдВ, рдЪрд╛рд▓рд╛рдиреЛрдВ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде-рд╕рд╛рде рднрд╛рд░реА рд▓реЗрдХрд┐рди рдХрдо рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдбреЗрдЯрд╛, рдЬреИрд╕реЗ рдЙрддреНрдкрд╛рдж рд╕рдореАрдХреНрд╖рд╛, рд╕рдорд░реНрдерди рд╕рдВрджреЗрд╢ , рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЧрддрд┐рд╡рд┐рдзрд┐, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдореАрдХреНрд╖рд╛ рдФрд░ рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВред рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рдпреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХрдо рд╕реЗ рдХрдо рдПрдХ SQL рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдХрдо рд╕реЗ рдХрдо рдПрдХ NoSQL рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВред рдЕрдВрддрд░-рдХреНрд╖реЗрддреНрд░реАрдп рдФрд░ рд╡реИрд╢реНрд╡рд┐рдХ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдореЗрдВ, NoSQL рдбреЗрдЯрд╛рдмреЗрд╕ рдПрдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕реНрд░реЛрдд, SQL рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рднреВ-рд╡рд┐рддрд░рд┐рдд рдХреИрд╢ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдХрд┐рд╕реА рдПрдХ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

YugaByte DB SQL рдФрд░ NoSQL рдХреЛ рдХреИрд╕реЗ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ?

рд▓реЙрдЧ-рдУрд░рд┐рдПрдВрдЯреЗрдб рдорд┐рд╢реНрд░рд┐рдд рд╕реНрдЯреЛрд░реЗрдЬ рдЗрдВрдЬрди, рдСрдЯреЛ рд╢рд╛рд░реНрдбрд┐рдВрдЧ, рд╢рд╛рд░реНрдбрд┐рдВрдЧ рдбрд┐рд╕реНрдЯреНрд░реАрдмреНрдпреВрдЯреЗрдб рдХрдВрд╕реЗрдВрдЯ рдкреНрд░рддрд┐рдХреГрддрд┐, рдФрд░ ACID рдбрд┐рд╕реНрдЯреНрд░реАрдмреНрдпреВрдЯреЗрдб рдЯреНрд░рд╛рдВрдЬрд╝реЗрдХреНрд╢рди (Google рд╕реНрдкреИрдирд░ рджреНрд╡рд╛рд░рд╛ рдкреНрд░реЗрд░рд┐рдд) рдкрд░ рдирд┐рд░реНрдорд┐рдд, YugaByte DB рджреБрдирд┐рдпрд╛ рдХрд╛ рдкрд╣рд▓рд╛ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдбреЗрдЯрд╛рдмреЗрд╕ рд╣реИ рдЬреЛ рдПрдХ рд╕рд╛рде NoSQL (рдХреИрд╕реЗрдВрдбреНрд░рд╛ рдФрд░ рд░реЗрдбрд┐рд╕) рдХреЗ рдЕрдиреБрдХреВрд▓ рд╣реИред ) рдФрд░ SQL (PostgreSQL)ред рдЬреИрд╕рд╛ рдХрд┐ рдиреАрдЪреЗ рджреА рдЧрдИ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, YSQL, Cassandra- рд╕рдВрдЧрдд YugaByte DB API, NoSQL API рдХреЗ рд▓рд┐рдП рдПрдХрд▓ рдФрд░ рдмрд╣реБ-рдХреБрдВрдЬреА ACID рд▓реЗрди-рджреЗрди рдФрд░ рд╡реИрд╢реНрд╡рд┐рдХ рджреНрд╡рд┐рддреАрдпрдХ рдЕрдиреБрдХреНрд░рдорд┐рдд рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЯреНрд░рд╛рдВрдЬреЗрдХреНрд╢рдирд▓ NoF рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдпреБрдЧ рдЦреЛрд▓ рд░рд╣рд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, YSQL, рдПрдХ PostgreSQL рдЖрдЬреНрдЮрд╛рдХрд╛рд░реА YugaByte DB рдПрдкреАрдЖрдИ, SQL API рдХреЛ рд░реЗрдЦреАрдп рд░рд┐рдХреЙрд░реНрдб рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдФрд░ рд╕реНрд╡рдд: рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдХреА рдзрд╛рд░рдгрд╛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдЬреЛ рджреБрдирд┐рдпрд╛ рдореЗрдВ рд╡рд┐рддрд░рд┐рдд SQL рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ YugaByte DB рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд▓реЗрди-рджреЗрди рдХрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП NoSQL API рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдм рдорд┐рд╢рди-рдорд╣рддреНрд╡рдкреВрд░реНрдг рдбреЗрдЯрд╛ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред



рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, "YSQL рдХрд╛ рдкрд░рд┐рдЪрдп: YgByte DB рдХреЗ рд▓рд┐рдП рдПрдХ PostgreSQL рд╕рдВрдЧрдд рд╡рд┐рддрд░рд┐рдд SQL API" , YugaByte DB рдореЗрдВ SQL рдпрд╛ NoSQL рдХреЗ рдмреАрдЪ рдХрд╛ рдЪреБрдирд╛рд╡ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдореБрдЦреНрдп рдХрд╛рд░реНрдпрднрд╛рд░ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред

  • рдпрджрд┐ рдореБрдЦреНрдп рдХрд╛рд░реНрдпрднрд╛рд░ JOINs рдХреЗ рд╕рд╛рде рдмрд╣реБ-рдХреБрдВрдЬреА рд╕рдВрдЪрд╛рд▓рди рд╣реИ, рддреЛ YSQL рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╕рдордп, рдпрд╣ рд╕рдордЭреЗрдВ рдХрд┐ рдЖрдкрдХреА рдХреБрдВрдЬрд┐рдпрд╛рдБ рдХрдИ рдиреЛрдбреНрд╕ рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ NoSQL рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд▓рдВрдм рдФрд░ / рдпрд╛ рдирд┐рдореНрди рдкреНрд░рд╡рд╛рд╣ рд╣реЛрдЧрд╛ред
  • рдЕрдиреНрдпрдерд╛, рджреЛ NoSQL API рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ, рдпрд╣ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдХрд┐ рдЖрдк рдПрдХ рд╕рдордп рдореЗрдВ рдПрдХ рдиреЛрдб рд╕реЗ рд╕реЗрд╡рд╛ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рдХрд░реЗрдВрдЧреЗред YugaByte DB рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬрдЯрд┐рд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдХрд▓ рдкрд░рд┐рдЪрд╛рд▓рди рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЖрдкрдХреЛ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдХрдИ рдХрд╛рд░реНрдпрднрд╛рд░ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдЕрдЧрд▓реЗ рдЦрдВрдб рдореЗрдВ рдбреЗрдЯрд╛ рдореЙрдбрд▓рд┐рдВрдЧ рд▓реИрдм рд╕реНрд░реЛрдд рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╡рд┐рдкрд░реАрдд, PostgreSQL рдФрд░ Cassandra рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд YugaByte DB рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдПрдХ рд╣реА рдбреЗрдЯрд╛рдмреЗрд╕ рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдПрдкреАрдЖрдИ (рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдкрд░) рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХреА рдЖрд╕рд╛рдиреА рдкрд░ рдЬреЛрд░ рджреЗрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рдХреНрд▓рд╕реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд░реЛрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

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

рдбреЗрдЯрд╛ рдореЙрдбрд▓рд┐рдВрдЧ рд▓реИрдм

рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдерд╛рдкрдирд╛

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

PostgreSQL рдФрд░ Cassandra, YugaByte DB рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд

mkdir ~/yugabyte && cd ~/yugabyte wget https://downloads.yugabyte.com/yb-docker-ctl && chmod +x yb-docker-ctl docker pull yugabytedb/yugabyte ./yb-docker-ctl create --enable_postgres 

MongoDB

 docker run --name my-mongo -d mongo:latest 

рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдПрдХреНрд╕реЗрд╕

рдЖрдЗрдП рд╕рдВрдмрдВрдзрд┐рдд рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╢реЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред

PostgreSQL

psql PostgreSQL рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╢реЗрд▓ рд╣реИред рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рдиреА рдХреЗ рд▓рд┐рдП, YugaByte DB рдмрд┐рди рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реАрдзреЗ psql рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИред

 docker exec -it yb-postgres-n1 /home/yugabyte/postgres/bin/psql -p 5433 -U postgres 

рдХреИрд╕реЗрдВрдбреНрд░рд╛

cqlsh , рдХреИрд╕реЗрдВрдбреНрд░рд╛ рдФрд░ рдЗрд╕рдХреЗ рд╕рдВрдЧрдд рдбреЗрдЯрд╛рдмреЗрд╕ CQL (рдХреИрд╕реЗрдВрдбреНрд░рд╛ рдХреНрд╡реЗрд░реА рд▓реИрдВрдЧреНрд╡реЗрдЬ) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рд╢реЗрд▓ рд╣реИред рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рдиреА рдХреЗ рд▓рд┐рдП, YugaByte DB bin рдореЗрдВ cqlsh рд╕рд╛рде рдЖрддрд╛ рд╣реИред

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

 docker exec -it yb-tserver-n1 /home/yugabyte/bin/cqlsh 

MongoDB

рдореЛрдВрдЧреЛ MongoDB рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╢реЗрд▓ рд╣реИред рдпрд╣ MongoDB рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд┐рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

 docker exec -it my-mongo bash cd bin mongo 

рдЯреЗрдмрд▓ рдирд┐рд░реНрдорд╛рдг

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

PostgreSQL

 CREATE TABLE Music ( Artist VARCHAR(20) NOT NULL, SongTitle VARCHAR(30) NOT NULL, AlbumTitle VARCHAR(25), Year INT, Price FLOAT, Genre VARCHAR(10), CriticRating FLOAT, Tags TEXT, PRIMARY KEY(Artist, SongTitle) ); 

рдХреИрд╕реЗрдВрдбреНрд░рд╛

рдХреИрд╕реЗрдВрдбреНрд░рд╛ рдореЗрдВ рдПрдХ рдЯреЗрдмрд▓ рдмрдирд╛рдирд╛ PostgreSQL рдХреЗ рд╕рдорд╛рди рд╣реИред рдореБрдЦреНрдп рдЕрдВрддрд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдЕрдЦрдВрдбрддрд╛ рдХреА рдХрдореА рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, NULL рдирд╣реАрдВ), рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреА рдЬрд┐рдореНрдореЗрджрд╛рд░реА рд╣реИ, рди рдХрд┐ NoSQL рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА ред рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдореЗрдВ рдПрдХ рдЕрдиреБрднрд╛рдЧ рдХреБрдВрдЬреА (рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдХрд▓рд╛рдХрд╛рд░ рдХреЙрд▓рдо) рдФрд░ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ рдХреЙрд▓рдо рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ (рдиреАрдЪреЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ SongTitle рдХреЙрд▓рдо)ред рд╡рд┐рднрд╛рдЬрди рдХреБрдВрдЬреА рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ рдХрд┐рд╕ рд╡рд┐рднрд╛рдЬрди / рдкрдВрдХреНрддрд┐ рдХреЛ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЬрдЧрд╣ рджреА рдЬрд╛рдП рдФрд░ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ рдХреЙрд▓рдо рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рдХреЛ рд╡рд░реНрддрдорд╛рди рд╢рд╛рд░реНрдХ рдХреЗ рдЕрдВрджрд░ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

 CREATE KEYSPACE myapp; USE myapp; CREATE TABLE Music ( Artist TEXT, SongTitle TEXT, AlbumTitle TEXT, Year INT, Price FLOAT, Genre TEXT, CriticRating FLOAT, Tags TEXT, PRIMARY KEY(Artist, SongTitle) ); 

MongoDB

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

 use myNewDatabase; 

PostgreSQL рддрд╛рд▓рд┐рдХрд╛ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛

 \d Music Table "public.music" Column | Type | Collation | Nullable | Default --------------+-----------------------+-----------+----------+-------- artist | character varying(20) | | not null | songtitle | character varying(30) | | not null | albumtitle | character varying(25) | | | year | integer | | | price | double precision | | | genre | character varying(10) | | | criticrating | double precision | | | tags | text | | | Indexes: "music_pkey" PRIMARY KEY, btree (artist, songtitle) 

рдХреИрд╕реЗрдВрдбреНрд░рд╛

 DESCRIBE TABLE MUSIC; CREATE TABLE myapp.music ( artist text, songtitle text, albumtitle text, year int, price float, genre text, tags text, PRIMARY KEY (artist, songtitle) ) WITH CLUSTERING ORDER BY (songtitle ASC) AND default_time_to_live = 0 AND transactions = {'enabled': 'false'}; 

MongoDB

 use myNewDatabase; show collections; 

PostgreSQL рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдкреЛрд╕реНрдЯ рдХрд░рдирд╛

 INSERT INTO Music (Artist, SongTitle, AlbumTitle, Year, Price, Genre, CriticRating, Tags) VALUES( 'No One You Know', 'Call Me Today', 'Somewhat Famous', 2015, 2.14, 'Country', 7.8, '{"Composers": ["Smith", "Jones", "Davis"],"LengthInSeconds": 214}' ); INSERT INTO Music (Artist, SongTitle, AlbumTitle, Price, Genre, CriticRating) VALUES( 'No One You Know', 'My Dog Spot', 'Hey Now', 1.98, 'Country', 8.4 ); INSERT INTO Music (Artist, SongTitle, AlbumTitle, Price, Genre) VALUES( 'The Acme Band', 'Look Out, World', 'The Buck Starts Here', 0.99, 'Rock' ); INSERT INTO Music (Artist, SongTitle, AlbumTitle, Price, Genre, Tags) VALUES( 'The Acme Band', 'Still In Love', 'The Buck Starts Here', 2.47, 'Rock', '{"radioStationsPlaying": ["KHCR", "KBQX", "WTNR", "WJJH"], "tourDates": { "Seattle": "20150625", "Cleveland": "20150630"}, "rotation": Heavy}' ); 

рдХреИрд╕реЗрдВрдбреНрд░рд╛

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдХреИрд╕рдВрдбреНрд░рд╛ рдореЗрдВ INSERT рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ PostgreSQL рдореЗрдВ рдмрд╣реБрдд рд╕рдорд╛рди рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╢рдмреНрджрд╛рд░реНрде рдореЗрдВ рдПрдХ рдмрдбрд╝рд╛ рдЕрдВрддрд░ рд╣реИред рдХреИрд╕рдВрдбреНрд░рд╛ рдореЗрдВ, INSERT рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ UPSERT рдСрдкрд░реЗрд╢рди рд╣реИ рдЬрд╣рд╛рдВ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╣реЛрдиреЗ рдкрд░ рдкрд┐рдЫрд▓реЗ рдорд╛рди рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЬрд╛рддреЗ рд╣реИрдВред
рдбреЗрдЯрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдКрдкрд░ PostgreSQL INSERT рд╕рдорд╛рди рд╣реИ

MongoDB

рд╣рд╛рд▓рд╛рдВрдХрд┐ MongoDB рдПрдХ NoSQL рдбреЗрдЯрд╛рдмреЗрд╕ рд╣реИ, рдЬреИрд╕реЗ Cassandra, рдЗрд╕рдХреЗ рд╕рдореНрдорд┐рд▓рди рдСрдкрд░реЗрд╢рди рдХрд╛ Cassandra рдореЗрдВ рд╢рдмреНрджрд╛рд░реНрде рд╡реНрдпрд╡рд╣рд╛рд░ рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИред MongoDB рдореЗрдВ, рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реЗрдВ () рдореЗрдВ UPSERT рдХреНрд╖рдорддрд╛рдПрдВ рдирд╣реАрдВ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдпрд╣ PostgreSQL рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред _idspecified рдмрд┐рдирд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдбреЗрдЯрд╛ рдЬреЛрдбрд╝рдирд╛ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдПрдХ рдирдпрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред

db.music.insert( {
artist: "No One You Know",
songTitle: "Call Me Today",
albumTitle: "Somewhat Famous",
year: 2015,
price: 2.14,
genre: "Country",
tags: {
Composers: ["Smith", "Jones", "Davis"],
LengthInSeconds: 214
}
}
);
db.music.insert( {
artist: "No One You Know",
songTitle: "My Dog Spot",
albumTitle: "Hey Now",
price: 1.98,
genre: "Country",
criticRating: 8.4
}
);
db.music.insert( {
artist: "The Acme Band",
songTitle: "Look Out, World",
albumTitle:"The Buck Starts Here",
price: 0.99,
genre: "Rock"
}
);
db.music.insert( {
artist: "The Acme Band",
songTitle: "Still In Love",
albumTitle:"The Buck Starts Here",
price: 2.47,
genre: "Rock",
tags: {
radioStationsPlaying:["KHCR", "KBQX", "WTNR", "WJJH"],
tourDates: {
Seattle: "20150625",
Cleveland: "20150630"
},
rotation: "Heavy"
}
}
);


рддрд╛рд▓рд┐рдХрд╛ рдХреНрд╡реЗрд░реА

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

PostgreSQL

SQL рдбреЗрдЯрд╛рдмреЗрд╕ рджреНрд╡рд╛рд░рд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдП рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рддреАрди рдЙрджрд╛рд╣рд░рдг рдиреАрдЪреЗ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗред

  • рдХрд▓рд╛рдХрд╛рд░ рдХреЗ рд╕рднреА рдЧреАрддреЛрдВ рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ;
  • рдХрд▓рд╛рдХрд╛рд░ рдХреЗ рд╕рднреА рдЧреАрддреЛрдВ рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдЬреЛ рдирд╛рдо рдХреЗ рдкрд╣рд▓реЗ рднрд╛рдЧ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреЗ рд╣реИрдВ;
  • рдХрд▓рд╛рдХрд╛рд░ рдХреЗ рд╕рднреА рдЧреАрддреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░реЗрдВ, рдЬрд┐рдирдХреЗ рд╢реАрд░реНрд╖рдХ рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╢рдмреНрдж рд╣реИ рдФрд░ рдЬрд┐рд╕рдХреА рдХреАрдордд 1.00 рд╕реЗ рдХрдо рд╣реИред

 SELECT * FROM Music WHERE Artist='No One You Know'; SELECT * FROM Music WHERE Artist='No One You Know' AND SongTitle LIKE 'Call%'; SELECT * FROM Music WHERE Artist='No One You Know' AND SongTitle LIKE '%Today%' AND Price > 1.00; 

рдХреИрд╕реЗрдВрдбреНрд░рд╛

рдЙрдкрд░реЛрдХреНрдд PostgreSQL рдкреНрд░рд╢реНрдиреЛрдВ рдореЗрдВ рд╕реЗ, рдХреЗрд╡рд▓ рдкрд╣рд▓рд╛ рдХреИрд╕рдВрдбреНрд░рд╛ рдореЗрдВ рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ LIKE рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХреЛ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ рдХреЙрд▓рдо рдЬреИрд╕реЗ SongTitle рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХреЗрд╡рд▓ рдСрдкрд░реЗрдЯрд░реЛрдВ = рдФрд░ IN рдХреЛ рдЕрдиреБрдорддрд┐ рд╣реИред

 SELECT * FROM Music WHERE Artist='No One You Know'; SELECT * FROM Music WHERE Artist='No One You Know' AND SongTitle IN ('Call Me Today', 'My Dog Spot') AND Price > 1.00; 

MongoDB

рдЬреИрд╕рд╛ рдХрд┐ рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, MongoDB рдореЗрдВ рдкреНрд░рд╢реНрди рдмрдирд╛рдиреЗ рдХреА рдореБрдЦреНрдп рд╡рд┐рдзрд┐ db.collection.find () рд╣реИ ред рдЗрд╕ рдкрджреНрдзрддрд┐ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдВрдЧреНрд░рд╣ рдХрд╛ рдирд╛рдо рд╢рд╛рдорд┐рд▓ рд╣реИ (рдиреАрдЪреЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ music ), рдЗрд╕рд▓рд┐рдП рдХрдИ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдирд┐рд╖рд┐рджреНрдз рд╣реИред

 db.music.find( { artist: "No One You Know" } ); db.music.find( { artist: "No One You Know", songTitle: /Call/ } ); 

рд╕рднреА рддрд╛рд▓рд┐рдХрд╛ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдкрдврд╝реЗрдВ

рд╕рднреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рдирд╛ рдХреНрд╡реЗрд░реА рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХрд╛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛ рд╣реИ рдЬрд┐рд╕рдХреА рд╣рдордиреЗ рдкрд╣рд▓реЗ рдЬрд╛рдВрдЪ рдХреА рдереАред

PostgreSQL

 SELECT * FROM Music; 


рдХреИрд╕реЗрдВрдбреНрд░рд╛

рдКрдкрд░ PostgreSQL рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рдорд╛рдиред


MongoDB

 db.music.find( {} ); 

рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рд╕рдВрдкрд╛рджрди

PostgreSQL

PostgreSQL рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ UPDATE рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдореЗрдВ UPSERT рдХреНрд╖рдорддрд╛рдПрдВ рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдкрдВрдХреНрддрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЗрд╕ рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

 UPDATE Music SET Genre = 'Disco' WHERE Artist = 'The Acme Band' AND SongTitle = 'Still In Love'; 

рдХреИрд╕реЗрдВрдбреНрд░рд╛

рдХреИрд╕рдВрдбреНрд░рд╛ рдореЗрдВ рдкреЛрд╕реНрдЯрдЧреНрд░реИрд╕рдХреНрдпреВрдПрд▓ рдХреЗ рд╕рдорд╛рди рдПрдХ UPDATE ред UPDATE рдореЗрдВ INSERT рдХреЗ рд╕рдорд╛рди рд╣реА UPSERT рд╢рдмреНрджрд╛рд░реНрде рд╣реИред

рдКрдкрд░ PostgreSQL рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рдорд╛рдиред

MongoDB
MongoDB рдореЗрдВ рдЕрдкрдбреЗрдЯ () рдСрдкрд░реЗрд╢рди рдХрд┐рд╕реА рдореМрдЬреВрджрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдХреЗрд╡рд▓ рдХреБрдЫ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдЕрджреНрдпрддрди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ UPSERT рд╢рдмреНрджрд╛рд░реНрде UPSERT ред UPSERT рд╕рдорд╛рди рдХрдИ рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдФрд░ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдЕрджреНрдпрддрди рдХрд░рдирд╛ рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдЭрдВрдбреЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдПрдХ рд╡рд┐рд╢реЗрд╖ рдХрд▓рд╛рдХрд╛рд░ рдХреА рд╢реИрд▓реА рдХреЛ рдЙрд╕рдХреЗ рдЧреАрдд рджреНрд╡рд╛рд░рд╛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

 db.music.update( {"artist": "The Acme Band"}, { $set: { "genre": "Disco" } }, {"multi": true, "upsert": true} ); 

рдХрд┐рд╕реА рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдбреЗрдЯрд╛ рдирд┐рдХрд╛рд▓рдирд╛

PostgreSQL

 DELETE FROM Music WHERE Artist = 'The Acme Band' AND SongTitle = 'Look Out, World'; 

рдХреИрд╕реЗрдВрдбреНрд░рд╛

рдКрдкрд░ PostgreSQL рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рдорд╛рдиред

MongoDB

MongoDB рдХреЗ рдкрд╛рд╕ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рдСрдкрд░реЗрд╢рди рд╣реИрдВ - DeleteOne () / deleteMany () рдФрд░ remove () ред рджреЛрдиреЛрдВ рдкреНрд░рдХрд╛рд░ рдХреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рдгрд╛рдо рд▓реМрдЯрд╛рддреЗ рд╣реИрдВред

 db.music.deleteMany( { artist: "The Acme Band" } ); 

рддрд╛рд▓рд┐рдХрд╛ рд╣рдЯрд╛рдПрдВ

PostgreSQL

 DROP TABLE Music; 

рдХреИрд╕реЗрдВрдбреНрд░рд╛

рдКрдкрд░ PostgreSQL рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рдорд╛рдиред

MongoDB

 db.music.drop(); 

рдирд┐рд╖реНрдХрд░реНрд╖

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

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

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

рдбреЗрдЯрд╛рдмреЗрд╕ рдбрд┐рдЬрд╛рдЗрди рдХреА рдЪрд░реНрдЪрд╛ рдкрд░ рд▓реМрдЯрддреЗ рд╣реБрдП, рдпрд╣ рдХрд╣рдирд╛ рдЙрдЪрд┐рдд рд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА рдЬрдЯрд┐рд▓ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдПрдкреНрд░реЛрдЪ (SQL рдФрд░ NoSQL) рджреЛрдиреЛрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВред рдПрд╕рдХреНрдпреВрдПрд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг "рдбреЗрдЯрд╛ рдореЙрдбрд▓рд┐рдВрдЧ" рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЕрдзрд┐рдХ рдЖрд╕рд╛рдиреА рд╕реЗ рдмрджрд▓рддреА рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ NoSQL рджреГрд╖реНрдЯрд┐рдХреЛрдг "рдореЙрдбрд▓рд┐рдВрдЧ рдбреЗрдЯрд╛" рдЙрд╕реА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдХрдо рд╡рд┐рд▓рдВрдмрддрд╛ рдФрд░ рдЙрдЪреНрдЪ рдереНрд░реВрдкреБрдЯ рдХреЗ рд╕рд╛рде рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ рд╣реИ рдХрд┐ YugaByte DB рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдиреЗ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдХрд░реНрдиреЗрд▓ рдореЗрдВ SQL рдФрд░ NoSQL API рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, PostgreSQL рдФрд░ Cassandra рд╕рд╣рд┐рдд рд▓реЛрдХрдкреНрд░рд┐рдп рдбреЗрдЯрд╛рдмреЗрд╕ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрддрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдХреЗ, YugaByte DB рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╡рд┐рддрд░рд┐рдд, рд╕рдЦреНрддреА рд╕реЗ рд╕реБрд╕рдВрдЧрдд рдбреЗрдЯрд╛рдмреЗрд╕ рдЗрдВрдЬрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреВрд╕рд░реА рднрд╛рд╖рд╛ рд╕реАрдЦрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИред

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рд╣рдордиреЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдХрд┐ рдХреИрд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ PostgreSQL, Cassandra, рдФрд░ MongoDB рдореЗрдВ рднрд┐рдиреНрди рд╣реИрдВред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓реЗрдЦреЛрдВ рдореЗрдВ, рд╣рдо рдЙрдиреНрдирдд рдбрд┐рдЬрд╛рдЗрди рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдЬреИрд╕реЗ рдХрд┐ рдЕрдиреБрдХреНрд░рдорд┐рдд, рд▓реЗрдирджреЗрди, JOIN, TTL рдирд┐рд░реНрджреЗрд╢, рдФрд░ JSON рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдореЗрдВ рдЧреЛрддрд╛ рд▓рдЧрд╛рдПрдБрдЧреЗред

рд╣рдо рдЖрдкрдХреЛ рдмрд╛рдХреА рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдореЗрдВ рдПрдХ рд╢рд╛рдирджрд╛рд░ рдкреНрд░рд╡рд╛рд╕ рдХреА рдХрд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЛ рдПрдХ рдореБрдлреНрдд рд╡реЗрдмрд┐рдирд╛рд░ рдореЗрдВ рдЖрдордВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ 14 рдордИ рдХреЛ рдЖрдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

Source: https://habr.com/ru/post/hi451042/


All Articles