рдбреЗрд▓реНрдЯрд╛ рдЭреАрд▓ рдореЗрдВ рдЧреЛрддрд╛ рд▓рдЧрд╛рдПрдБ: рдкреНрд░рд╡рд░реНрддрди рдФрд░ рд╡рд┐рдХрд╛рд╕

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





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

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

рдЯреЗрдмрд▓ рд╕реНрдХреАрдореЛрдВ рдХреЛ рд╕рдордЭрдирд╛


рдЕрдкрд╛рдЪреЗ рд╕реНрдкрд╛рд░реНрдХ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдореЗрдВ рдПрдХ рд╕реНрдХреАрдорд╛ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдбреЗрдЯрд╛ рдлрд╝реЙрд░реНрдо, рдЬреИрд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░, рдХреЙрд▓рдо рдФрд░ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рдбреЗрд▓реНрдЯрд╛ рдЭреАрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдЯреЗрдмрд▓ рд╕реНрдХреАрдорд╛ рд▓реЗрди-рджреЗрди рд▓реЙрдЧ рдХреЗ рдЕрдВрджрд░ JSON рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╕реНрдХреАрдорд╛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдХреНрдпрд╛ рд╣реИ?


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

рд╕рд░реНрдХрд┐рдЯ рдХрд╛рдо рдХреИрд╕реЗ рдХрд░рддрд╛ рд╣реИ?


рд▓реЗрдЦрди рдХрд░рддреЗ рд╕рдордп рдбреЗрд▓реНрдЯрд╛ рдЭреАрд▓ рдПрдХ рд╕реНрдХреАрдорд╛ рдЬрд╛рдВрдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди рд▓рдХреНрд╖реНрдп рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕реНрдХреАрдорд╛ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрддрддрд╛ рдХреЗ рд▓рд┐рдП рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╕рднреА рдирдП рд░рд┐рдХреЙрд░реНрдб рдХреА рдЬрд╛рдВрдЪ рдХреА рдЬрд╛рддреА рд╣реИред рдпрджрд┐ рдпрд╣ рдпреЛрдЬрдирд╛ рдЕрд╕рдВрдЧрдд рд╣реИ, рддреЛ рдбреЗрд▓реНрдЯрд╛ рдЭреАрд▓ рд▓реЗрдирджреЗрди рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд░рджреНрдж рдХрд░ рджреЗрддреА рд╣реИ (рдбреЗрдЯрд╛ рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ) рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╡рд┐рд╕рдВрдЧрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдкрд╡рд╛рдж рдлреЗрдВрдХрддрд╛ рд╣реИред
рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рд░рд┐рдХреЙрд░реНрдб рд╕рдВрдЧрддрддрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдбреЗрд▓реНрдЯрд╛ рдЭреАрд▓ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдирд┐рдпрдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИред рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рдбреЗрдЯрд╛:

  • рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрддрдВрдн рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рдЬреЛ рд▓рдХреНрд╖реНрдп рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕реНрдХреАрдорд╛ рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВред рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рд╕рдм рдХреБрдЫ рдХреНрд░рдо рдореЗрдВ рд╣реИ рдпрджрд┐ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдмрд┐рд▓реНрдХреБрд▓ рд╕рднреА рдХреЙрд▓рдо рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ - рдпреЗ рдХреЙрд▓рдо рдмрд╕ рд╢реВрдиреНрдп рдорд╛рди рдЕрд╕рд╛рдЗрди рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред
  • , . StringType, DataFrame IntegerType, .
  • рд╕реНрддрдВрдн рдирд╛рдо рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдХреЗрд╡рд▓ рдорд╛рдорд▓реЗ рдореЗрдВ рднрд┐рдиреНрди рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╣реА рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд 'рдлреВ' рдФрд░ 'рдлреВ' рдирд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдХреЙрд▓рдо рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕реНрдкрд╛рд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╕-рд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рдпрд╛ рдХреЗрд╕-рдЗрдирд╕реЗрдиреНрд╕рд┐рдЯрд┐рд╡ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ) рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдбреЗрд▓реНрдЯрд╛ рд▓реЗрдХ рдХреЗрд╕-рд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╕-рдЗрдирд╕реЗрдЯрд┐рд╡ рд╣реИред рдХреЙрд▓рдо рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдФрд░ рд╡рд╛рдкрд╕ рдХрд░рддреЗ рд╕рдордп рд▓рдХрдбрд╝реА рдХреА рдЫрдд рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реИред рд╕рдВрднрд╛рд╡рд┐рдд рддреНрд░реБрдЯрд┐рдпреЛрдВ, рдбреЗрдЯрд╛ рднреНрд░рд╖реНрдЯрд╛рдЪрд╛рд░ рдпрд╛ рдбреЗрдЯрд╛ рд╣рд╛рдирд┐ (рдЬрд┐рд╕реЗ рд╣рдо рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдбреЗрдЯрд╛рдмреАрд░рд┐рдХ рдореЗрдВ рд╕рд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВ) рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдЗрд╕ рдкреНрд░рддрд┐рдмрдВрдз рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред

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

#  DataFrame ,       Delta Lake
loans = sql("""
            SELECT addr_state, CAST(rand(10)*count as bigint) AS count,
            CAST(rand(10) * 10000 * count AS double) AS amount
            FROM loan_by_state_delta
            """)

#    DataFrame
original_loans.printSchema()

root
  |-- addr_state: string (nullable = true)
  |-- count: integer (nullable = true)
 
#    DataFrame
loans.printSchema()
 
root
  |-- addr_state: string (nullable = true)
  |-- count: integer (nullable = true)
  |-- amount: double (nullable = true) # new column
 
#    DataFrame (  )   
loans.write.format("delta") \
           .mode("append") \
           .save(DELTALAKE_PATH)

Returns:

A schema mismatch detected when writing to the Delta table.
 
To enable schema migration, please set:
'.option("mergeSchema", "true")\'
 
Table schema:
root
-- addr_state: string (nullable = true)
-- count: long (nullable = true)
 
Data schema:
root
-- addr_state: string (nullable = true)
-- count: long (nullable = true)
-- amount: double (nullable = true)
 
If Table ACLs are enabled, these options will be ignored. Please use the ALTER TABLE command for changing the schema.

рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдирдП рдХреЙрд▓рдо рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдбреЗрд▓реНрдЯрд╛ рдЭреАрд▓ рдПрдХ рдЪрд╛рд░реНрдЯ рд▓рдЧрд╛рддреА рд╣реИ рдФрд░ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдмрдВрдж рдХрд░ рджреЗрддреА рд╣реИред рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреМрди рд╕рд╛ рдХреЙрд▓рдо (рдпрд╛ рдЙрдирдХреА рдмрд╣реБрд▓рддрд╛) рдмреЗрдореЗрд▓ рдХрд╛ рдХрд╛рд░рдг рд╣реИ, рд╕реНрдкрд╛рд░реНрдХ рддреБрд▓рдирд╛ рдХреЗ рд▓рд┐рдП рд╕реНрдЯреИрдХ рд╕реНрдЯреИрдХ рд╕реЗ рджреЛрдиреЛрдВ рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЦреАрдВрдЪрддрд╛ рд╣реИред

рдХрд┐рд╕реА рдпреЛрдЬрдирд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдХреНрдпрд╛ рдлрд╛рдпрджрд╛ рд╣реИ?


рдЪреВрдВрдХрд┐ рдПрдХ рд╕реНрдХреАрдорд╛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдПрдХ рдХрд╛рдлреА рдХрдареЛрд░ рдкрд░реАрдХреНрд╖рдг рд╣реИ, рдпрд╣ рдПрдХ рд╕реНрд╡рдЪреНрдЫ, рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдбреЗрдЯрд╛рд╕реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╣рд╛рди рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рдПрдХ рджреНрд╡рд╛рд░рдкрд╛рд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрддреНрдкрд╛рджрди рдпрд╛ рдЙрдкрднреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИред рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдпрд╣ рдЙрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рд╕реАрдзреЗ рдбреЗрдЯрд╛ рдХреА рдЖрдкреВрд░реНрддрд┐ рдХрд░рддреЗ рд╣реИрдВ:

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

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

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

рдбрд╛рдЯрд╛ рдерд┐рдирд┐рдВрдЧ рдкреНрд░рд┐рд╡реЗрдВрд╢рди


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

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

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

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

рд╕рд░реНрдХрд┐рдЯ рд╡рд┐рдХрд╛рд╕ рдХреНрдпрд╛ рд╣реИ?


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

рд╕рд░реНрдХрд┐рдЯ рд╡рд┐рдХрд╛рд╕ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?


рдкрд┐рдЫрд▓реЗ рдЕрдиреБрднрд╛рдЧ рд╕реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рдмрд╛рдж, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕реНрдХреАрдорд╛ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирдП рдХреЙрд▓рдо рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдкрд╣рд▓реЗ рд╕реНрдХреАрдорд╛ рдХреЗ рдмреЗрдореЗрд▓ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рджрд┐рдП рдЧрдП рдереЗред .option('mergeSchema', 'true')рдЖрдкрдХреА рд╕реНрдкрд╛рд░реНрдХ рдЯреАрдо рдХреЛ рдЬреЛрдбрд╝рдХрд░ рдпреЛрдЬрдирд╛ рд╡рд┐рдХрд╛рд╕ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ред.write .writeStream.

#   mergeSchema
loans.write.format("delta") \
           .option("mergeSchema", "true") \
           .mode("append") \
           .save(DELTALAKE_SILVER_PATH)

рдЧреНрд░рд╛рдлрд╝ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди рд╕реНрдкрд╛рд░реНрдХ SQL рдХреНрд╡реЗрд░реА рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ

#     ,  ,    
%sql
SELECT addr_state, sum(`amount`) AS amount
FROM loan_by_state_delta
GROUP BY addr_state
ORDER BY sum(`amount`)
DESC LIMIT 10

рдЫрд╡рд┐
рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдЖрдк spark.databricks.delta.schema.autoMerge = Trueрд╕реНрдкрд╛рд░реНрдХ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдЬреЛрдбрд╝рдХрд░ рдкреВрд░реЗ рд╕реНрдкрд╛рд░реНрдХ рд╕рддреНрд░ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЛ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред рд▓реЗрдХрд┐рди рд╕рд╛рд╡рдзрд╛рдиреА рдХреЗ рд╕рд╛рде рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рдпреЛрдЬрдирд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЕрдм рдЖрдкрдХреЛ рдпреЛрдЬрдирд╛ рдХреЗ рд╕рд╛рде рдЕрдирдЬрд╛рдиреЗ рд╡рд┐рд╕рдВрдЧрддрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рдирд╣реАрдВ рджреЗрдЧрд╛ред

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

рддрд┐рдерд┐ рдЗрдВрдЬреАрдирд┐рдпрд░ рдФрд░ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдкреБрд░рд╛рдиреЗ рдХреЙрд▓рдо рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдореМрдЬреВрджрд╛ рдореЙрдбрд▓ рдХреЛ рд╕реАрдЦрдиреЗ рдХреЗ рдмрд┐рдирд╛ рдЕрдкрдиреЗ рдореМрдЬреВрджрд╛ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдЙрддреНрдкрд╛рджрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рдирдП рдХреЙрд▓рдо (рд╢рд╛рдпрдж рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЯреНрд░реИрдХ рдХрд┐рдП рдЧрдП рдореАрдЯреНрд░рд┐рдХ рдпрд╛ рдЗрд╕ рдорд╣реАрдиреЗ рдХреА рдмрд┐рдХреНрд░реА рдореАрдЯреНрд░рд┐рдХ рдХрд╛ рдПрдХ рд╕реНрддрдВрдн) рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕реНрдХреАрдорд╛ рдкрд░рд┐рд╡рд░реНрддрди рдХрд┐рд╕реА рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдЬреЛрдбрд╝рддреЗ рдпрд╛ рдкреБрди: рд▓рд┐рдЦрддреЗ рд╕рдордп рд╕реНрдХреАрдорд╛ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдиреБрдореЗрдп рд╣реЛрддреЗ рд╣реИрдВ:

  • рдирдП рдХреЙрд▓рдо рдЬреЛрдбрд╝рдирд╛ (рдпрд╣ рд╕рдмрд╕реЗ рдЖрдо рдкрд░рд┐рджреГрд╢реНрдп рд╣реИ)
  • NullType рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдмрджрд▓реЗрдВ -> рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░ рдпрд╛ ByteType рд╕реЗ рдмрдврд╝рд╛рдПрдБ -> ShortType -> InteervType

рд╕реНрдХреАрдорд╛ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдиреНрдп рдкрд░рд┐рд╡рд░реНрддрди рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИрдВ рдХрд┐ рд╕реНрдХреАрдорд╛ рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдЬреЛрдбрд╝рдХрд░ рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдП .option("overwriteSchema", "true")ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЬрд╣рд╛рдВ "рдлреВ" рдХреЙрд▓рдо рдореВрд▓ рд░реВрдк рд╕реЗ рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ рдерд╛, рдФрд░ рдирдИ рдпреЛрдЬрдирд╛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рд╣реЛрдЧреА, рддреЛ рд╕рднреА Parquet (рдбреЗрдЯрд╛) рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдЗрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:

  • рдХреЙрд▓рдо рд╣рдЯрд╛рдПрдВ
  • рдореМрдЬреВрджрд╛ рдХреЙрд▓рдо рдХрд╛ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдмрджрд▓реЗрдВ (рд╕реНрдерд╛рди рдкрд░)
  • рдирд╛рдо рдмрджрд▓рдиреЗ рд╡рд╛рд▓реЗ рд╕реНрддрдВрдн рдЬреЛ рдХреЗрд╡рд▓ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реЛрддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "рдлреВ" рдФрд░ "рдлреВ")

рдЕрдВрдд рдореЗрдВ, рд╕реНрдкрд╛рд░реНрдХ 3.0 рдХреА рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде, рд╕реНрдкрд╖реНрдЯ DDL (ALTER TABLE рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ) рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдорд░реНрдерд┐рдд рд╣реЛрдЧрд╛, рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЯреЗрдмрд▓ рд╕реНрдХреАрдорд╛ рдкрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреНрд░рд┐рдпрд╛рдПрдВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛:

  • рдХреЙрд▓рдо рдЬреЛрдбрд╝рдирд╛
  • рдХреЙрд▓рдо рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рдмрджрд▓реЗрдВ
  • рддрд╛рд▓рд┐рдХрд╛ рдЧреБрдгреЛрдВ рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХрд░рдирд╛, рдЬреЛ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд▓реЗрдирджреЗрди рд▓реЙрдЧ рднрдВрдбрд╛рд░рдг рдХреА рдЕрд╡рдзрд┐ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ред

рд╕рд░реНрдХрд┐рдЯ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпрд╛ рд╣реИ?


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

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


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

рджреВрд╕рд░реА рдУрд░, рд╕рд░реНрдХрд┐рдЯ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдкреНрд░рд╡рд░реНрддрди рдХреЛ рдкреВрд░рдХ рдХрд░рддрд╛ рд╣реИ, рд╕рд░реНрдХрд┐рдЯ рдореЗрдВ рдХрдерд┐рдд рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╕рд░рд▓ рдХрд░рддрд╛ рд╣реИ ред рдЕрдВрдд рдореЗрдВ, рдПрдХ рдХреЙрд▓рдо рдЬреЛрдбрд╝рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

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

рд╣рдо рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдЙрдирдХреЗ рдпреЛрдЧрджрд╛рди рдХреЗ рд▓рд┐рдП рдореБрдХреБрд▓ рдореВрд░реНрддрд┐ рдФрд░ рдкреНрд░рдгрд╡ рдЖрдирдВрдж рдХреЛ рднреА рдзрдиреНрдпрд╡рд╛рдж рджреЗрдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗред

рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдЕрдиреНрдп рд▓реЗрдЦ:

рдбреЗрд▓реНрдЯрд╛ рдЭреАрд▓ рдореЗрдВ рдЧреЛрддрд╛ рд▓рдЧрд╛рдПрдБ: рдПрдХ рд▓реЗрди-рджреЗрди рд▓реЙрдЧ рдЦреЛрд▓рдирд╛



рд╕рдВрдмрдВрдзрд┐рдд рдЖрд▓реЗрдЦ


рдбреЗрд▓реНрдЯрд╛ рд▓реЗрдХ рдкреНрд░реЛрдбрдХреНрд╢рди рд▓реЗрд╡рд▓ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ

рдПрдХ рдбрд╛рдЯрд╛ рд▓реЗрдХ рдХреНрдпрд╛ рд╣реИ?



рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдиреЗрдВ



All Articles