рдпрд╣ рд▓реЗрдЦ рдХреИрд╕рдВрдбреНрд░рд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЕрдкрдирд╛ рдкрд╣рд▓рд╛ "рдЯреЗрдмрд▓" рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИредрдХреИрд╕рдВрдбреНрд░рд╛ рдХреЗ рдХрдИ рд░рд┐рд▓реАрдЬ рдкреЛрд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдЗрд╕ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рдиреА рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ рд╕рд╣реА рд╡реЗрдХреНрдЯрд░ рд▓рд┐рдпрд╛ред рдЗрд╕рдХреЗ рдлрд╛рдпрджреЗ, рдЬреИрд╕реЗ рдЧрддрд┐ рдФрд░ рдЧрд▓рддреА рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢рд╛рд╕рди рдФрд░ рд▓рд┐рдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдерд╛ред рдЕрдм рдПрдХ рддрдВрдмреВрд░рд╛ рдХреЗ рд╕рд╛рде рдиреГрддреНрдп рдХреА рд╕рдВрдЦреНрдпрд╛ рдЬрд┐рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдФрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреЛ рдХрдо рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ - рд╡рд┐рдВрдбреЛрдЬ рдореЗрдВ рдХреБрдЫ рдЖрджреЗрд╢ рдпрд╛ рдПрдХ .msiред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХреА рдЧрдИ CQL (рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛) рдиреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЬреАрд╡рди рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛ рджрд┐рдпрд╛, рдмрд╛рдЗрдирд░реА рдФрд░ рдЬрдЯрд┐рд▓ рднрд╛рд╖рд╛ рдереНрд░рд┐рдлреНрдЯ рдХреА рдЬрдЧрд╣ред
рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореБрдЭреЗ рдХрд╛рд╕рд╛рдВрджреНрд░рд╛ рдХреЗ рд▓рд┐рдП рд░реВрд╕реА-рднрд╛рд╖рд╛ рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╕рдмрд╕реЗ рдХрдард┐рди рд╡рд┐рд╖рдп рдореИрдВ рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдЙрдард╛рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред
рдлрд┐рд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреИрд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░реЗрдВ?рддреНрдпрд╛рдЧ
- рдпрд╣ рд▓реЗрдЦ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрднрд┐рдкреНрд░реЗрдд рдирд╣реАрдВ рд╣реИ рдЬреЛ рдкрд╣рд▓реА рдмрд╛рд░ рдХреИрд╕рдВрдбреНрд░рд╛ рд╢рдмреНрдж рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВред
- рд▓реЗрдЦ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рддрдХрдиреАрдХ рдХреА рд╡рд┐рдЬреНрдЮрд╛рдкрди рд╕рд╛рдордЧреНрд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
- рд▓реЗрдЦ рдХрд┐рд╕реА рдХреЛ рдХреБрдЫ рднреА рд╕рд╛рдмрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
- рдпрджрд┐ рд▓рд┐рдЦрдиреЗ / рдкрдврд╝рдиреЗ рдХреА рдЧрддрд┐ рдЗрддрдиреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ, рдФрд░ рдпрджрд┐ "100% рдЕрдкрдЯрд╛рдЗрдо" рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рдХреБрдЫ рдорд┐рд▓рд┐рдпрди рд░рд┐рдХреЙрд░реНрдб рд╣реИрдВ, рддреЛ рд╕рдВрднрд╡рддрдГ рдпрд╣ рд▓реЗрдЦ, рдФрд░ рд╕рдВрдкреВрд░реНрдг рдХреИрд╕рдВрдбреНрд░рд╛ рдПрдХ рд╕рдВрдкреВрд░реНрдг рдХреЗ рд░реВрдк рдореЗрдВ рд╣реИ, рдЬреЛ рдЖрдк рдирд╣реАрдВ рд╣реИрдВ рдХреА рдЬрд░реВрд░рдд рд╣реИред
рд╢реИрдХреНрд╖рд┐рдХ рдХрд╛рд░реНрдпрдХреНрд░рдо
- рдХреИрд╕реЗрдВрдбреНрд░рд╛ (рдЗрд╕рдХреЗ рдмрд╛рдж C * ) рдПрдХ рд╡рд┐рддрд░рд┐рдд NoSQL рдбреЗрдЯрд╛рдмреЗрд╕ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рднреА рдирд┐рд░реНрдгрдп "рдРрд╕рд╛ рдХреНрдпреЛрдВ, рдФрд░ рдЗрд╕ рддрд░рд╣ рдирд╣реАрдВ" рд╣рдореЗрд╢рд╛ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрдВрдЦ рдХреЗ рд╕рд╛рде рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
- CQL рдПрдХ SQL рдЬреИрд╕реА рднрд╛рд╖рд╛ рд╣реИред рд╕реА рдЕрд╕реЗрдВрджреНрд░рд╛ рдХреНрдпреВ uery рдПрд▓ рдкреАрдбрд╝рд╛ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреНрд╖рд┐рдкреНрддрд┐рдХрд░рдгред
- рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдиреЛрдб рдПрдХ C * рдЖрд╡реГрддреНрддрд┐ рдпрд╛ рдЬрд╛рд╡рд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред рдЖрдк рдПрдХ рд╣реА рдорд╢реАрди рдкрд░ рдХрдИ рдиреЛрдб рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПред
- рдмреБрдирд┐рдпрд╛рджреА рднрдВрдбрд╛рд░рдг рдЗрдХрд╛рдИ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИ ред рдкреВрд░реЗ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдиреЛрдбреНрд╕ рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддред рдРрд╕реА рдХреЛрдИ рд╕реНрдерд┐рддрд┐ рдирд╣реАрдВ рд╣реИ рдЬрдм рдПрдХ рдкрдВрдХреНрддрд┐ рдПрдХ рдиреЛрдб рдкрд░ рд╣реЛ, рдЖрдзреА рд░реЗрдЦрд╛ рджреВрд╕рд░реЗ рдкрд░ рд╣реЛред рдПрдХ рдкрдВрдХреНрддрд┐ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ 2 рдмрд┐рд▓рд┐рдпрди рдХреЙрд▓рдо рддрдХ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╣реЛ рд╕рдХрддреА рд╣реИред рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред
- cqlsh - CQL рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рд▓рд╛рдЗрдиред рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рд╕рднреА рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдЗрд╕рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рд╕реА * рд╡рд┐рддрд░рдг рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред
C * рдореЗрдВ рдмреЗрд╕рд┐рдХ рдбреЗрдЯрд╛ рдореЙрдбрд▓рд┐рдВрдЧ рдирд┐рдпрдо
рдХрд╛рд╕рд╛рдВрджреНрд░рд╛ рдЕрдзрд┐рдХрддрдо рд╡рд┐рддрд░рд┐рдд рд▓рд┐рдЦрдиреЗ рдФрд░ рдкрдврд╝рдиреЗ рдХреА рдЧрддрд┐ рдкрд░ рдЬреЛрд░ рджреЗрдиреЗ рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд┐рддрд░рд┐рдд рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ SELECT
рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ "рддрд╛рд▓рд┐рдХрд╛рдУрдВ" рдХреЛ рдореЙрдбрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ред
рдПрд╕рдХреНрдпреВрдПрд▓ рдореЗрдВ, рд╣рдо рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдлреЗрдВрдХрдиреЗ, рдЙрдирдХреЗ рдмреАрдЪ рд╕рдВрдмрдВрдзреЛрдВ рдФрд░ рдлрд┐рд░
SELECT ... JOIN ...
рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
SELECT ... JOIN ...
рд╣рдо рдХреНрдпрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рд╣рдо рдХреИрд╕реЗ рдЪрд╛рд╣рддреЗ рд╣реИрдВред RDBMS рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рд╛рде рдЬреЙрдЗрди рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛ рд╣реИред рд╡реЗ CQL рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВред
рдкрд╣рд▓рд╛ рдЙрджрд╛рд╣рд░рдгред
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрд┐рд╕реА рдХрдВрдкрдиреА рдХреЗ рдХрд░реНрдордЪрд╛рд░реА рд╣реИрдВред рдЖрдЗрдП рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рддреЗ рд╣реИрдВ (рдЬрд┐рд╕реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЙрд▓рдо рдкрд░рд┐рд╡рд╛рд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реАрдХреНрдпреВрдПрд▓ рдореЗрдВ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕реЗ рд╕реАрдХреНрдпреВрдПрд▓ рдореЗрдВ рд╕рдВрдХреНрд░рдордг рдХреА рдЖрд╕рд╛рдиреА рдХреЗ рд▓рд┐рдП) рд╕реАрдХреНрдпреВрдПрд▓ рдореЗрдВ рд╢рдмреНрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдбреЗрдЯрд╛ рд╕реЗ рднрд░реЗрдВ:
CREATE TABLE employees ( name text,
C * рдореЗрдВ рдЯреЗрдмрд▓реНрд╕ рдореЗрдВ рдПрдХ PRIMARY KEY рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдиреЛрдб рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛрддрд╛ рд╣реИред
рдбреЗрдЯрд╛ рдкрдврд╝реЗрдВ:
SELECT * FROM employees;
рдпрд╣ рдЪрд┐рддреНрд░ рдПрдХ рд╣рд╛рде рд╕реЗ рд╕рдЬрд╛рдпрд╛ cqlsh рдЖрдЙрдЯрдкреБрдЯ рд╣реИред
рдпрд╣ рдПрдХ рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдПрдХ рдирд┐рдпрдорд┐рдд рддрд╛рд▓рд┐рдХрд╛ рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИред C * рджреЛ рд▓рд╛рдЗрдиреЗрдВ рдмрдирд╛рдПрдЧрд╛ред
рдЪреЗрддрд╛рд╡рдиреА! рдпреЗ рджреЛ
рдЖрдВрддрд░рд┐рдХ рдкрдВрдХреНрддрд┐ рд╕рдВрд░рдЪрдирд╛рдПрдВ рд╣реИрдВ , рди рдХрд┐ рдЯреЗрдмрд▓ред рдпрджрд┐ рдереЛрдбрд╝рд╛ рдЪрд╛рд▓рд╛рдХ рд╣реИ, рддреЛ рд╣рдо рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдПрдХ рдЫреЛрдЯреА рдореЗрдЬ рдХреА рддрд░рд╣ рд╣реИред рдЖрдЧреЗ рд╕реНрдкрд╖реНрдЯ рд╣реИред
рджреВрд╕рд░рд╛ рдЙрджрд╛рд╣рд░рдгред
рдЬрдЯрд┐рд▓ред рдХрдВрдкрдиреА рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝реЗрдВред
CREATE TABLE employees ( company text, name text, age int, role text, PRIMARY KEY (company,name)
рдбреЗрдЯрд╛ рдкрдврд╝реЗрдВ:
SELECT * FROM employees;
рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред рдорд╛рдкрджрдВрдбреЛрдВ рдореЗрдВ рд╕реЗ
рдкрд╣рд▓рд╛ -
company
- рдПрдХ
рд╡рд┐рддрд░рдг рдХреБрдВрдЬреА рд╣реИ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рддрдм рд╕реЗ рдиреЛрдб рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рджреВрд╕рд░реА
name
рдХреБрдВрдЬреА рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ рдХреБрдВрдЬреА рд╣реИред рд╡рд╣ рдПрдХ рдХреЙрд▓рдо рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИред рдпрд╛рдиреА рд╣рдо рдбреЗрдЯрд╛ рдХреЛ рдХреЙрд▓рдо рдирд╛рдо рдореЗрдВ рдмрджрд▓рддреЗ рд╣реИрдВред рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рдЪрд╛рд░ рдмрд╛рдЗрдЯреНрд╕ рдХреЗ рд╕рд╛рде 'рдПрд░рд┐рдХ' рдерд╛, рдФрд░ рдХреЙрд▓рдо рдирд╛рдо рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрди рдЧрдпрд╛ред
рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЕрдм
рдЖрдВрддрд░рд┐рдХ рд╕рдВрд░рдЪрдирд╛ рджрд┐рдЦрддреА рд╣реИред
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рд╣рдорд╛рд░реЗ рд╕рд╛рде рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:
- рджреЛ рдХрдВрдкрдирд┐рдпрд╛рдВ -
OSC
рдФрд░ RKG
ред рдпрд╣рд╛рдВ рдХреЗрд╡рд▓ рджреЛ рд▓рд╛рдЗрдиреЗрдВ рдмрдирд╛рдИ рдЧрдИрдВред - рдЧреНрд░реАрди
eric
рдЕрдкрдиреА рдЙрдореНрд░ рдФрд░ рднреВрдорд┐рдХрд╛ рджреЛ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕реА рддрд░рд╣, рдмрд╛рдХреА рд╕рднреАред - рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд╕рд╛рде, рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рдХрдВрдкрдиреА (рд▓рд╛рдЗрди) рдореЗрдВ 1 рдмрд┐рд▓рд┐рдпрди рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдХреЙрд▓рдо рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рд╕реАрдорд╛ 2 рдмрд┐рд▓рд┐рдпрди рд╣реИ?
- рдРрд╕рд╛ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдЙрд╕реА рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпрд╣ рд╕рдЪ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реА * рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рд╕рд╣реА рдореЙрдбрд▓рд┐рдВрдЧ рдкреИрдЯрд░реНрди рд╣реИред
- C * рдореЗрдВ рдореЙрдбрд▓рд┐рдВрдЧ рдХрд░рддреЗ рд╕рдордп рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИред
рддреАрд╕рд░рд╛ рдЙрджрд╛рд╣рд░рдгред
рдФрд░ рднреА рдХрдард┐рдиред рдХреИрдкрд┐рдЯрд▓ рдЕрдХреНрд╖рд░ рдХреЙрд▓рдо рдХрд╛ рдирд╛рдо рд╣реИред рд▓реЛрдЕрд░рдХреЗрд╕ - рдбреЗрдЯрд╛ред
CREATE TABLE example ( A text, B text, C text, D text, E text, F text, PRIMARY KEY ((A,B), C, D));
рдбреЗрдЯрд╛ рдкрдврд╝реЗрдВ:
SELECT * FROM example;
рдЕрдм рд╣рдорд╛рд░реА
рд╡рд┐рддрд░рдг рдХреБрдВрдЬреА рд╕рдордЧреНрд░ рд╣реИ -
(A,B)
ред рдХреНрд▓рд╕реНрдЯрд░ рдХреБрдВрдЬреА рднреА рд╕рдордЧреНрд░ рд╣реИ - C, Dред
рдЖрдВрддрд░рд┐рдХ рд╕рдВрд░рдЪрдирд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реЛ рдЧрдИ рд╣реИред рдбреЗрдЯрд╛ рдЬреИрд╕реЗ
c, d, g, k, o, p, u, v
рдХреЙрд▓рдо рдирд╛рдореЛрдВ рдореЗрдВ рдИ рдФрд░ рдПрдл рдХреЗ рд╕рд╛рде рднрд╛рдЧ рд▓реЗрддреЗ рд╣реИрдВ:
- рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрдм рдП рдФрд░ рдмреА рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдЕрджреНрд╡рд┐рддреАрдп рд╕рдВрдпреЛрдЬрди рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рдПрдХ рдХреБрдВрдЬреА рд╣реИред
- рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рддреАрди рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд┐рддрд░рдг рдХреБрдВрдЬреА рд╣реИрдВ
a:b
, a:n
рдФрд░ s:t
ред - рдХреЙрд▓рдо рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рдЧреБрдгрдХред
a:b
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рддреАрди рдЕрджреНрд╡рд┐рддреАрдп рд╕рдВрдпреЛрдЬрди рд╣реИрдВ - c:d
, c:g
, j:k
- рдЬреЛ рдХреЙрд▓рдо рдИ рдФрд░ рдПрдл рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рддреЗ рд╣реИрдВ - e
рдФрд░ f
, h
рдФрд░ i
, l
рдФрд░ m
ред - рдЗрд╕реА рддрд░рд╣ рджреЛ рдЕрдиреНрдп рд▓рд╛рдЗрдиреЗрдВред
рдпрд╣ рдЗрддрдирд╛ рдЬрдЯрд┐рд▓ рдХреНрдпреЛрдВ рд╣реИ?
рдпрд╣ рд╡рд┐рддрд░рд┐рдд рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рдХреА рдЕрдирдВрдд рдорд╛рддреНрд░рд╛ рдХреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдФрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рддрд░реАрдХрд╛ рд╣реИред рд╕реА * рдХреЛ рдХреЗрд╡рд▓ рд▓рд┐рдЦрдиреЗ / рдкрдврд╝рдиреЗ рдХреА рдЧрддрд┐ рдкрд░ рдЬреЛрд░ рджреЗрдиреЗ рдХреЗ рд╕рд╛рде рдбрд┐рдЬрд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрд╣рд╛рдБ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
MongoDB, HBase рдФрд░ C * рдЧрддрд┐ рдХреА рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реИ ред
рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬреАрд╡рди рдЙрджрд╛рд╣рд░рдг
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреБрдЫ рдШрдЯрдирд╛рдПрдВ рд╣реИрдВ рдЬреЛ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб 1000 рдЧреБрдирд╛ рд╣реЛрддреА рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдВрдХреЗрддрдХ рд╢реЛрд░ рд╕реНрддрд░ рдХреЗ рд╕реЗрдВрд╕рд░ рд╕реЗ рд▓рд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред 10 рд╕реЗрдВрд╕рд░ред рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб 100 рдмрд╛рд░ рдбреЗрдЯрд╛ рднреЗрдЬрддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ 3 рдХрд╛рд░реНрдп рд╣реИрдВ:
- рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рд░реНрд╡рд░ (рдиреЛрдб) рдЕрдкрдирд╛ рдХрд╛рдо рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИ рддреЛ рд▓рд┐рдЦрдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВред
- 1000 рд╕реЗрдХрдВрдб рдореЗрдВ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдХреЛрдИ рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддрд╛ рд╣реИред
- рдХрд┐рд╕реА рднреА рдорд┐рд▓рд┐рд╕реЗрдХрдВрдб рдореЗрдВ рдХрд┐рд╕реА рднреА рджрд┐рди рдХрд┐рд╕реА рднреА рд╕реЗрдВрд╕рд░ рдХрд╛ рдЧреНрд░рд╛рдл рдкреНрд░рджрд╛рди рдХрд░реЗрдВред
- рдЬрд┐рддрдиреА рдЬрд▓реНрджреА рд╣реЛ рд╕рдХреЗ рдХрд┐рд╕реА рднреА рд╕рдордп рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рд╕реЗрдВрд╕рд░ рдХрд╛ рдЧреНрд░рд╛рдл рдкреНрд░рджрд╛рди рдХрд░реЗрдВред
рдкрд╣рд▓рд╛ рдФрд░ рджреВрд╕рд░рд╛ рдЕрдВрдХ рдЖрд╕рд╛рди рд╣реИрдВред
рд╣рдореЗрдВ рдХрдИ рдиреЛрдбреНрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рд╕реНрд╡рд╛рдпрддреНрдд рдмрдирд╛рдПрдВред рдпрд╣ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдмрд╛рджрд▓ рдореЗрдВ рднреА рд▓реЗ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рддреАрд╕рд░рд╛ рдмрд┐рдВрджреБ рдореБрдЦреНрдп рдЪрд╛рд▓ рд╣реИред
рд╣рдо рдПрдХ рджрд┐рди рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░реЗрдВрдЧреЗред
CREATE TABLE temperature_events_by_day ( day text,
рдЪреВрдВрдХрд┐ рд╡рд┐рддрд░рдг рдХреБрдВрдЬреА рджрд┐рди + рд╕реЗрдВрд╕рд░ рдХрд╛ рдПрдХ рдЕрдиреВрдард╛ рд╕рдВрдпреЛрдЬрди рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрдХ рджрд┐рди рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрдВрд╕рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд▓рд╛рдЗрди рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рдЕрдВрджрд░ рд░рд┐рд╡рд░реНрд╕ рд╕реЙрд░реНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд╣рдо "рдЙрдВрдЧрд▓рд┐рдпреЛрдВ рдкрд░" рд╣рдорд╛рд░реЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг (рдЕрдВрддрд┐рдо) рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВред
рдЪреВрдВрдХрд┐ рд╡рд┐рддрд░рдг рдХреБрдВрдЬреА (рджрд┐рди) рдХреА рдЦреЛрдЬ C * рдореЗрдВ рдПрдХ рдмрд╣реБрдд рддреЗрдЬ рд╕рдВрдЪрд╛рд▓рди рд╣реИ, рдЗрд╕рд▓рд┐рдП рддреАрд╕рд░реЗ рдмрд┐рдВрджреБ рдХреЛ рдкреВрд░рд╛ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЪреМрдерд╛ рдмрд┐рдВрджреБ
рдмреЗрд╢рдХ, рд╣рдо рдПрдХ рджрд┐рди / рджрд┐рди рдЦреЛрдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ рджрд┐рди рдХреЗ рдЕрдВрджрд░ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреА рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдХрдИ рджрд┐рди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдЖрдЦрд┐рд░рдХрд╛рд░, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ 10 рд╕реЗрдВрд╕рд░ рд╣реИрдВред рдХреНрдпрд╛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ? рдпрд╣ рд╕рдВрднрд╡ рд╣реИ, рдпрджрд┐ рдЖрдк рдХрд▓реНрдкрдирд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рд╕реЗрдВрд╕рд░ рдПрдХ рдкрдВрдХреНрддрд┐ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, C * рдбрд┐рд╕реНрдХ рдкрд░ рд╕рднреА рджрд╕ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд╕реНрдерд╛рди рдХреЛ рдпрд╛рдж рд░рдЦрддрд╛ рд╣реИред
рдЪрд▓реЛ рджреВрд╕рд░реА рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдВ рд╣рдо рд╕рдорд╛рди рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рджрд┐рдиреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░ред
CREATE TABLE temperature_events ( sensor_id uuid, event_time timestamp, temperature double, PRIMARY KEY (sensor_id, event_time)
рдФрд░ рдЬрдм рд╣рдо рдбреЗрдЯрд╛ рдбрд╛рд▓рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд▓ рдХреЗ рдЬреАрд╡рдирдХрд╛рд▓ рдХреЛ рд╕реАрдорд┐рдд рдХрд░ рджреЗрдВрдЧреЗ рддрд╛рдХрд┐ 2 рдмрд┐рд▓рд┐рдпрди рдХреЙрд▓рдо рдХреА рдЖрджрдд рди рдкрдбрд╝реЗред рд╣рдорд╛рд░реЗ рд╕рд╛рде, рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрдВрд╕рд░ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб 100 рд╕реЗ рдЕрдзрд┐рдХ рд░реАрдбрд┐рдВрдЧ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рдпрд╣рд╛рдБ рд╕реЗ:
2**31 / (24 * 60 * 60 * 100 /) = 2147483648 / (24 * 60 * 60 * 100) = 248.55
248 рджрд┐рдиреЛрдВ рдХреЗ рдмрд╛рдж, рд╕рдмрд╕реЗ рдкреБрд░рд╛рдирд╛ рдбреЗрдЯрд╛ рдЪреБрдкрдЪрд╛рдк рдФрд░ рдЪреБрдкрдЪрд╛рдк рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
INSERT INTO temperature_events (sensor_id, event_time, temperature) VALUES ('12341234-1234-1234-123412', 2535726623061, 36.6) TTL 21427200;
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб рдореЗрдВ, рдпрд╣ рд╢рд░реНрдд рд╕реЗрдЯ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ рдХрд┐ рдпрджрд┐ рдЕрдиреБрд░реЛрдзрд┐рдд рдбреЗрдЯрд╛ рдкрд┐рдЫрд▓реЗ 248 рджрд┐рдиреЛрдВ рд╕реЗ рдЖрдЧреЗ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдо рддрд╛рдкрдорд╛рди_рдХреЗрд╡рддреН___ рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдпрджрд┐ рдирд╣реАрдВ, рддреЛ
temperature_events
ред рдмрд╛рдж рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдХрд░рдирд╛ рдХрдИ рдорд┐рд▓реАрд╕реЗрдХрдВрдб рддреЗрдЬрд╝реА рд╕реЗ рд╣реЛрдЧрд╛ред
тАЬрдХреНрдпрд╛ рдмрдХрд╡рд╛рд╕ рд╣реИ! рдПрдХ рджреВрд╕рд░реА рдореЗрдЬ рдХреНрдпреЛрдВ? тАЭрдЖрдк рд╕реЛрдЪреЗрдВрдЧреЗ рдореИрдВ рджреЛрд╣рд░рд╛рддрд╛ рд╣реВрдВ: рд╕реА * рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдПрдХ рд╣реА рдореВрд▓реНрдп рдХреЛ рдХрдИ рдмрд╛рд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдЖрджрд░реНрд╢, рд╕рд╣реА рдореЙрдбрд▓ рд╣реИред рдЬреАрдд рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ:
- рджреВрд╕рд░реА рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдбреЗрдЯрд╛ рд▓рд┐рдЦрдирд╛ рдкрд╣рд▓реЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рддреЗрдЬрд╝ рд╣реИред рдХреИрд╕реЗрдВрдбреНрд░рд╛ рдХреЛ рдиреЛрдб (рдПрд╕) рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рджреЗрдЦрдирд╛ рд╣реЛрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдирдпрд╛ рдореВрд▓реНрдп рдЬреЛрдбрд╝рдирд╛ рд╣реИред рд╡рд╣ рдкрд╣рд▓реЗ рд╕реЗ рдЬрд╛рди рдЬрд╛рдПрдЧреАред
- рдбреЗрдЯрд╛ рдкрдврд╝рдирд╛ рднреА рдмрд╣реБрдд рддреЗрдЬ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдирд┐рдпрдорд┐рдд рдЕрдиреБрдХреНрд░рдорд┐рдд, рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд SQL рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдИ рдЧреБрдирд╛ рдмреЗрд╣рддрд░ рд╣реИред
рд╕реВрддреНрд░реЛрдВ рдХрд╛ рдХрд╣рдирд╛ рд╣реИ
рдореИрдВ рдЗрд╕реЗ рдЗрд╕ рдХреНрд░рдо рдореЗрдВ рджреЗрдЦрдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред
- рд╡реЗрдмрд┐рдирд╛рд░ - рдХреИрд╕реЗрдВрдбреНрд░рд╛ рдХреЗ рдЖрдВрддрд░рд┐рдХ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд▓рд┐рдП CQL3 рдореИрдкреНрд╕ рдХреЛ рд╕рдордЭрдирд╛ ред
- рд╡реЗрдмрд┐рдирд╛рд░ - рдж рдбреЗрдЯрд╛ рдореЙрдбрд▓ рдбреЗрдб, рд▓реЙрдиреНрдЧ рд▓рд╛рдЗрд╡ рдж рдбреЗрдЯрд╛ рдореЙрдбрд▓ рд╣реИ
- рд╡реЗрдмрд┐рдирд╛рд░ - рдПрдХ рд╕реБрдкрд░ рдореЙрдбрд▓рд░ рдмрдиреЗрдВ
- рд╡реЗрдмрд┐рдирд╛рд░ - рджреБрдирд┐рдпрд╛ рдХрд╛ рдЕрдЧрд▓рд╛ рд╢реАрд░реНрд╖ рдбреЗрдЯрд╛ рдореЙрдбрд▓
- рдкреВрд░реНрдг CQL3 рдкреНрд░рд▓реЗрдЦрди - рдХреИрд╕реЗрдВрдбреНрд░рд╛ рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ (CQL) v3
рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЕрдЧрд▓рд╛ рд▓реЗрдЦ ред
UPD: рд╢рдмреНрджрд╛рд╡рд▓реА рдХрд╛ рд╕реБрдзрд╛рд░ред "рд╡рд┐рддрд░рдг рдХреБрдВрдЬреА" рдХреЗ рд╕рд╛рде "рдорд╛рд╕реНрдЯрд░ рдХреБрдВрдЬреА" рд╢рдмреНрджреЛрдВ рдХреЛ рд╕рд╣реА рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ред рдХреБрдЫ рд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ "рдХреНрд▓рд╕реНрдЯрд░ рдХреБрдВрдЬреА" рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред