PayPal рдиреЗ JunoDB DBMS рдХреЛрдб рдЙрдШрдбрд▓рд╛

PayPal рдиреЗ рдлреЙрд▓реНрдЯ-рд╕рд╣рд┐рд╖реНрдгреБ DBMS JunoDB рдЪрд╛ рд╕реНрддреНрд░реЛрдд рдХреЛрдб рдЙрдШрдбрд▓рд╛ рдЖрд╣реЗ, рдЬреЛ рдХреА-рд╡реНрд╣реЕрд▓реНрдпреВ рдлреЙрд░рдореЕрдЯрдордзреНрдпреЗ рдбреЗрдЯрд╛ рд╣рд╛рддрд╛рд│рддреЛ. рд╣реА рдкреНрд░рдгрд╛рд▓реА рд╕реБрд░реБрд╡рд╛рддреАрд▓рд╛ рдЙрдЪреНрдЪ рд╕реБрд░рдХреНрд╖рд╛, рдХреНрд╖реИрддрд┐рдЬ рдорд╛рдкрдирдХреНрд╖рдорддрд╛, рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЖрдгрд┐ рдЕрдВрджрд╛рдЬ рд▓рд╛рд╡рддрд╛ рдпреЗрдгреНрдпрд╛рдЬреЛрдЧреНрдпрд╛ рд╡рд┐рд▓рдВрдмрд╛рдВрдирд╛ рд▓рдХреНрд╖рд╛рдд рдШреЗрдКрди рд╢реЗрдХрдбреЛ рд╣рдЬрд╛рд░реЛ рдПрдХрд╛рдЪрд╡реЗрд│реА рдХрдиреЗрдХреНрд╢рди рд╣рд╛рддрд╛рд│рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛ рдпрд╛рд╕рд╣ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдд рдЖрд▓реА рд╣реЛрддреА. PayPal рд╡рд░, рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреНрдпрд╛ рд▓реЙрдЧрд┐рдирдкрд╛рд╕реВрди рддреЗ рдЖрд░реНрдерд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░рд╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рдкрд░реНрдпрдВрдд рдЬрд╡рд│рдЬрд╡рд│ рд╕рд░реНрд╡ рд╕реЗрд╡рд╛ JunoDB рд╢реА рдЬреЛрдбрд▓реЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд. рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб рдЧреЛ (рдПрдХ Java рдХреНрд▓рд╛рдпрдВрдЯ рд▓рд╛рдпрдмреНрд░рд░реА) рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ Apache 2.0 рд▓рд╛рдпрд╕рдиреНрд╕ рдЕрдВрддрд░реНрдЧрдд рд╡рд┐рддрд░рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рдкреБрдвреАрд▓ рд╡рд┐рдХрд╛рд╕ рд╕рдорд╛рдЬрд╛рдХрдбреВрди рджреБрд░реБрд╕реНрддреНрдпрд╛, рд╕реБрдзрд╛рд░рдгрд╛ рдЖрдгрд┐ рдмрджрд▓ рд╕реНрд╡реАрдХрд╛рд░реЗрд▓.

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

PayPal рдиреЗ JunoDB DBMS рдХреЛрдб рдЙрдШрдбрд▓рд╛

рдбреЗрдЯрд╛рдЪреЗ рд╡рд┐рднрд╛рдЬрди рдХреЗрд▓реЗ рдЬрд╛рддреЗ рдЖрдгрд┐ рд╣реЕрд╢рд┐рдВрдЧ рд╡рд╛рдкрд░реВрди рд╕реНрдЯреЛрд░реЗрдЬ рдиреЛрдбреНрд╕рд╢реА рд▓рд┐рдВрдХ рдХреЗрд▓реЗ рдЬрд╛рддреЗ, рдЬреНрдпрд╛рдореБрд│реЗ рдХреНрд▓рд╕реНрдЯрд░рдордзреАрд▓ рдиреЛрдбреНрд╕ рд╡рд╛рдврддрд╛рдд рдХрд┐рдВрд╡рд╛ рд▓рд╣рд╛рди рд╣реЛрддрд╛рдд рдореНрд╣рдгреВрди рдбреЗрдЯрд╛рдЪреА рд╣рд╛рд▓рдЪрд╛рд▓ рдХрдореА рд╣реЛрддреЗ. рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдбреЗрдЯрд╛рдЪрд╛ рдкреНрд░рддреНрдпреЗрдХ рднрд╛рдЧ рдЕрдиреЗрдХ рд╕реНрдЯреЛрд░реЗрдЬ рдиреЛрдбреНрд╕рд╡рд░ рдкреНрд░рддрд┐рд░реВрдкрд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ, рдЬреЗ рд╡реИрдпрдХреНрддрд┐рдХ рд╕рд░реНрд╡реНрд╣рд░ рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рд╡рд░ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдорд╛рд╣рд┐рддреА рдЬрддрди рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ. рднреМрдЧреЛрд▓рд┐рдХрджреГрд╖реНрдЯреНрдпрд╛ рд╡рд┐рддрд░рд┐рдд рд╕реНрдЯреЛрд░реЗрдЬрдЪреА рдирд┐рд░реНрдорд┐рддреА рд╕рдорд░реНрдерд┐рдд рдЖрд╣реЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ рдиреЛрдбреНрд╕рдЪреЗ рдЧрдЯ рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░рдордзреНрдпреЗ рд╕реНрдерд┐рдд рдЖрд╣реЗрдд.

PayPal рдиреЗ JunoDB DBMS рдХреЛрдб рдЙрдШрдбрд▓рд╛

рдбреЗрдЯрд╛ рд╕реНрдЯреЛрд░реЗрдЬ рдиреЛрдбреНрд╕рд╡рд░, рддреЗ RAM рдордзреНрдпреЗ рдХрд┐рдВрд╡рд╛ RocksDB рд▓рд╛рдпрдмреНрд░рд░реАрд╡рд░ рдЖрдзрд╛рд░рд┐рдд рд╕реНрдерд╛рдирд┐рдХ рд╕реНрдЯреЛрд░реЗрдЬрдордзреНрдпреЗ рдЕрд╕рддрд╛рдд. рдХрд╛рдпрдорд╕реНрд╡рд░реВрдкреА рд╕рдВрдЪрдпрд┐рдд рдХреЗрд▓реНрдпрд╛рд╡рд░, рдбреЗрдЯрд╛ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рд╕реНрд╡рд░реВрдкрд╛рдд рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ (рдПрдирдХреНрд░рд┐рдкреНрд╢рди рдХреА рдХреНрд▓рд╛рдпрдВрдЯрджреНрд╡рд╛рд░реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреЗрд▓реА рдЬрд╛рдК рд╢рдХрддреЗ рдХрд┐рдВрд╡рд╛ рдкреНрд░реЙрдХреНрд╕реА рд╕реНрддрд░рд╛рд╡рд░ рд╕реЗрдЯ рдХреЗрд▓реА рдЬрд╛рдК рд╢рдХрддреЗ).

PayPal рдиреЗ JunoDB DBMS рдХреЛрдб рдЙрдШрдбрд▓рд╛

рдЕреЕрдкреНрд▓рд┐рдХреЗрд╢рдиреНрд╕рдордзреВрди рдбреЗрдЯрд╛рдмреЗрд╕рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдХреНрд▓рд╛рдпрдВрдЯ рд▓рд╛рдпрдмреНрд░рд░реА рдкреБрд░рд╡рд▓реА рдЬрд╛рддреЗ рдЬреА Java, Go рдЖрдгрд┐ C++ рдордзреАрд▓ рдЕреЕрдкреНрд▓рд┐рдХреЗрд╢рдиреНрд╕рд╕рд╛рдареА API рдкреНрд░рджрд╛рди рдХрд░рддреЗ. рдХреНрд▓рд╛рдпрдВрдЯрдЪрд╛ рднрд╛рдЧ рд╢рдХреНрдп рддрд┐рддрдХрд╛ рд╕рд░рд▓реАрдХреГрдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ рдЖрдгрд┐ рдЬреЗрд╡реНрд╣рд╛ рд╢рдХреНрдп рдЕрд╕реЗрд▓ рддреЗрд╡реНрд╣рд╛ рдЬрдЯрд┐рд▓ рддрд░реНрдХрд╢рд╛рд╕реНрддреНрд░ рдЖрдгрд┐ рд╕реЗрдЯрд┐рдВрдЧреНрдЬ DBMS рдмрд╛рдЬреВрд▓рд╛ рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдХреЗрд▓реНрдпрд╛ рдЬрд╛рддрд╛рдд. рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдгрд┐ рдмреЕрд▓рдиреНрд╕рд░ рдХрд┐рдВрд╡рд╛ рдкреНрд░реЙрдХреНрд╕реА рдпрд╛рдВрдЪреНрдпрд╛рддреАрд▓ рдкрд░рд╕реНрдкрд░рд╕рдВрд╡рд╛рдж рдПрдирдХреНрд░рд┐рдкреНрдЯреЗрдб рдХрдореНрдпреБрдирд┐рдХреЗрд╢рди рдЪреЕрдиреЗрд▓рджреНрд╡рд╛рд░реЗ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рд╡рд┐рдирдВрддреНрдпрд╛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдкрд╛рдард╡рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣реА рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЗрдВрдЯрд░рдлреЗрд╕ рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛, рдЬреЗ рдХреНрд▓рд╛рдпрдВрдЯ API рдЪреНрдпрд╛ рд╕рд░реНрд╡ рдХреНрд╖рдорддрд╛рдВрдЪреА рдкреНрд░рддрд┐рдХреГрддреА рдмрдирд╡рддреЗ.

рд╕рд┐рд╕реНрдЯреАрдо рд╡рд┐рдирдВрддреНрдпрд╛рдВрдирд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд рдХрдореА рд╡рд┐рд▓рдВрдмрд╛рдВрд╕рд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдбрд┐рдЭрд╛рдЗрди рдХреЗрд▓реЗ рдЖрд╣реЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рддреАрди рд╕реНрдЯреЛрд░реЗрдЬ рдиреЛрдбреНрд╕рдЪрд╛ рдПрдХ рдХреНрд▓рд╕реНрдЯрд░ рдЖрдгрд┐ рдПрдХ рдкреНрд░реЙрдХреНрд╕реА, n1-highmem-32 рд╡рд╛рддрд╛рд╡рд░рдгрд╛рддреВрди (32 Intel Xeon 2.30GHz CPUs, 214G RAM рдЖрдгрд┐ 450G SSD-рдЖрдзрд╛рд░рд┐рдд рд╕реНрдЯреЛрд░реЗрдЬ) , 2.5 рд╣рдЬрд╛рд░ рдПрдХрд╛рдЪрд╡реЗрд│реА TLS рдХрдиреЗрдХреНрд╢рдирд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛рдирд╛ 95 ms рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рдирд╕рд▓реЗрд▓рд╛ рдирд┐рд╢реНрдЪрд┐рдд рд╡рд┐рд▓рдВрдм рдЖрдгрд┐ 16% рдордзреНрдпреЗ 99 ms рдЖрдгрд┐ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдж 200 рд╣рдЬрд╛рд░ рд╡рд┐рдирдВрддреНрдпрд╛рдВрдЪрд╛ рдкреНрд░рд╡рд╛рд╣ рдкреНрд░рджрд╛рди рдХрд░рдгреНрдпрд╛рдд рд╕рдХреНрд╖рдо рд╣реЛрддреЗ (15 рдПрдХрд╛рдЪрд╡реЗрд│реА рдХрдиреЗрдХреНрд╢рдирд╕рд╣ рдЖрдгрд┐ 3000 рд╣рдЬрд╛рд░ рд╡рд┐рдирдВрддреНрдпрд╛рдВрдЪреНрдпрд╛ рдкреНрд░рд╡рд╛рд╣рд╛рд╕рд╣ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдж, 80% рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ рд╡рд┐рд▓рдВрдм 6 ms рдЖрдгрд┐ 95% рдордзреНрдпреЗ 15 ms рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рдирд╡реНрд╣рддрд╛). PayPal рд╡рд░, JunoDB-рдЖрдзрд╛рд░рд┐рдд рд╕реЗрд╡рд╛ рджрд░рд░реЛрдЬ рд╕реБрдорд╛рд░реЗ 99 рдЕрдмреНрдЬ рд╡рд┐рдирдВрддреНрдпрд╛ рджреЗрддрд╛рдд.

PayPal рдиреЗ JunoDB DBMS рдХреЛрдб рдЙрдШрдбрд▓рд╛


рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛