рд╡рд┐рддрд░рд┐рдд рдбреЗрдЯрд╛рдмреЗрд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЕрджреНрд╡рд┐рддреАрдп рдХреБрдВрдЬреА

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


рдХреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ (рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдХреЗ рдЕрд▓рд╛рд╡рд╛) рдЪрд╛рдмрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ?



рдХреБрдВрдЬреА рдХреЛ рдиреАрд░рд╕рддрд╛ рд╕реЗ рдмрдврд╝рд╛рдирд╛ рдЪрд╛рд╣рд┐рдП
рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ:

рдЙрдкрд░реЛрдХреНрдд рдХреЗрд╡рд▓ рдкреЗрдбрд╝реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЕрдиреБрдХреНрд░рдорд┐рддреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИред

рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд╛рдЗрдб рдкрд░ рдХреБрдВрдЬреА рдмрдирдиреА рдЪрд╛рд╣рд┐рдП
рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ:


рдореБрдЦреНрдп рдЖрдХрд╛рд░ рд╕реАрдорд╛ (рдЙрджрд╛ред рдХреЗрд╡рд▓ 64 рдмрд┐рдЯреНрд╕)
рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ:


рдЕрджреНрд╡рд┐рддреАрдп рдХреБрдВрдЬреА рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреНрдпрд╛ рд╣реИрдВ?



рдПрдкреНрд▓рд┐рдХреЗрд╢рди-рд╕рд╛рдЗрдб рдЖрдИрдбреА рдкреАрдврд╝реА (UUID, рдЖрджрд┐)

UUID рдХреЗ рд╕рд╛рде , рд╕рдм рдХреБрдЫ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕рд░рд▓ рд╣реИ - рд╣рдо рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд▓реЗрддреЗ рд╣реИрдВ рдФрд░ рдЖрд╡реЗрджрди рдкрдХреНрд╖ рдкрд░ рдЪрд╛рдмрд┐рдпрд╛рдБ рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВред UUID рдХрд╛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдХрдИ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдореВрд▓реНрдп рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрдирддрд╛ рд╣реИ рдХрд┐ рдЯрдХрд░рд╛рд╡ рдЕрд╕рдВрднрд╡ рд╣реИред

рд╡рд┐рдкрдХреНрд╖:
тАв рдорд╛рдирдХ рдпреВрдпреВрдЖрдИрдбреА рдХреА рд▓рдВрдмрд╛рдИ 128 рдмрд┐рдЯреНрд╕ рд╣реИ (рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЖрдк рдЕрдХреНрд╕рд░ рд╣реЗрдХреНрд╕рд╛рдбреЗрд╕рд┐рдорд▓ рдЕрдВрдХреЛрдВ рдХреА рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реАрдзреЗ рд╕реНрдЯреЛрд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ 32 рдмрд╛рдЗрдЯреНрд╕ рд╣реИ)
тАв рдЖрдорддреМрд░ рдкрд░, рдПрдХ UUID рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреА рдПрдХ рдкреНрд░рд╛рдХреГрддрд┐рдХ рдЫрдБрдЯрд╛рдИ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

рдкреНрд░рдореБрдЦ рдкреАрдврд╝реА рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рд╕реЗрд╡рд╛

рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдлреНрд▓рд┐рдХ рдФрд░ рдЯреНрд╡рд┐рдЯрд░ рджреНрд╡рд╛рд░рд╛ред

рд╡рд┐рдкрдХреНрд╖:
тАв рдЕрддрд┐рд░рд┐рдХреНрдд рдШрдЯрдХреЛрдВ рдХреА рд╢реБрд░реВрдЖрдд рдХреЗ рдХрд╛рд░рдг рдкреНрд░рдгрд╛рд▓реА рдХреА рдЬрдЯрд┐рд▓рддрд╛
тАв рдореБрдЦреНрдп рдЬрдирд░реЗрдЯрд░ рдХреА рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рд╡рд┐рдлрд▓рддрд╛ рдХрд╛ рдПрдХ рдмрд┐рдВрджреБ рдпрд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ

рдореВрд▓реНрдп рд╕реАрдорд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдУрд░ рдСрдЯреЛ-рд╡реГрджреНрдзрд┐

рдорд╛рдиреЛрдВ рдХреА рдкреВрд░реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рдЙрдкрдЧреНрд░рд╣реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рд╢рд░реНрдб (рдХреНрд▓рд╕реНрдЯрд░ рдиреЛрдб) рдЕрдкрдиреА рд╕реАрдорд╛ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
     1 - 0 .. 3FFFFFFF,
     2 - 40,000,000 .. 7FFFFFFF,
     3 - 80000000 .. BFFFFFFF,
     4 - C0000000 .. FFFFFFFF

рд╡рд┐рдкрдХреНрд╖:
тАв рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдСрдЯреЛ-рдЗрдиреНрдХреНрд░реАрдореЗрдВрдЯ (рдХрдИ NoSQL рд╕реНрдЯреЛрд░реЗрдЬ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдирд╣реАрдВ) рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП
рдкреНрд░рд╛рдХреГрддрд┐рдХ рдЫрдВрдЯрд╛рдИ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ
тАв рдЧреНрд░рд╛рд╣рдХ "рд╡рд╕реНрддреБ рдХреЛ рдбрд╛рд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХреБрдВрдЬреА" рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИред рдХреБрдВрдЬреА рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдПрдХ рдЕрд▓рдЧ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
тАв рдХреНрд▓рд╕реНрдЯрд░ рдиреЛрдбреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХрд░рдирд╛ рд▓рдЧрднрдЧ рдЕрд╕рдВрднрд╡ рд╣реИ

рдЗрдВрд╕реНрдЯрд╛рдЧреНрд░рд╛рдо рдСрдЯреЛ рдЗрдВрдХреНрд░реАрдореЗрдВрдЯ

рдпрд╣ рдирд┐рд░реНрдгрдп рдЗрдВрд╕реНрдЯрд╛рдЧреНрд░рд╛рдо рдЯреАрдо рдХреЗ рддрдХрдиреАрдХреА рдмреНрд▓реЙрдЧ (рдлреЛрдЯреЛ рд╢реЗрдпрд░рд┐рдВрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди) рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рд╡реЗ 64-рдмрд┐рдЯ рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдбреЗрдЯрд╛рдмреЗрд╕ (PostgreSQL) рдХреА рдУрд░ рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдмрд┐рдЯ рдлрд╝реАрд▓реНрдб рд╣реЛрддреЗ рд╣реИрдВ

63 31 0 |======|======|======|======|======|======|======|======| | CUSTOM TIMESTAMP | SHARD ID | AUTO | 

рдЬрд╣рд╛рдБ
- CUSTOM TIMESTAMP (41 рдмрд┐рдЯреНрд╕) - 2011-01-01 00:00:00 рд╕реЗ рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдореЗрдВ рд╕рдордп
- SHARD ID (13 рдмрд┐рдЯреНрд╕) - рддрд╛рд░реНрдХрд┐рдХ рд╡рд┐рднрд╛рдЬрди рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ ( SHARD ID рдХреА рд╕рдВрдЦреНрдпрд╛ рднреМрддрд┐рдХ рдиреЛрдбреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ)
- AUTO (10 рдмрд┐рдЯ) - рдПрдХ рдЕрдиреБрдХреНрд░рдо (рдЕрдиреБрдХреНрд░рдо), рддрд╛рд░реНрдХрд┐рдХ рд╡рд┐рднрд╛рдЬрди (рд╢рд╛рд░реНрдж) рдХреЗ рднреАрддрд░ рдЕрджреНрд╡рд┐рддреАрдп

рдкреЗрд╢реЗрд╡рд░реЛрдВ (рд╕реАрдорд╛рдУрдВ рдкрд░ рдСрдЯреЛ-рд╡реЗрддрди рд╡реГрджреНрдзрд┐ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ):
тАв рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд╛рд▓рд╛рдиреБрдХреНрд░рдорд┐рдХ рдЫрдВрдЯрд╛рдИ

рдФрд░ рдЖрдк рдХреНрдпрд╛ рд╡рд┐рдХрд▓реНрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ?

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


All Articles