рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рджреБрдирд┐рдпрд╛ рдХреА рд▓рдЧрднрдЧ рд╣рд░ рдХрдВрдкрдиреА рд╡реЗрдм рд╕рдВрд╕рд╛рдзрди рдкрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдЧрддрд┐рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдВрдХрдбрд╝реЗ рдПрдХрддреНрд░ рдХрд░рддреА рд╣реИред рдкреНрд░реЗрд░рдгрд╛ рд╕реНрдкрд╖реНрдЯ рд╣реИ - рдХрдВрдкрдирд┐рдпрд╛рдВ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддреА рд╣реИрдВ рдХрд┐ рдЙрдирдХреЗ рдЙрддреНрдкрд╛рдж/рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╡реЗ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╕рдордЭрддреЗ рд╣реИрдВред рдмреЗрд╢рдХ, рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдЬрд╛рд░ рдореЗрдВ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЙрдкрдХрд░рдг рдореМрдЬреВрдж рд╣реИрдВ - рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рд▓реЗрдХрд░ рдЬреЛ рдбреИрд╢рдмреЛрд░реНрдб рдФрд░ рдЧреНрд░рд╛рдлрд╝ рдХреЗ рд░реВрдк рдореЗрдВ рдбреЗрдЯрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП)
рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдПрдХ рдРрд╕реА рд╕рдорд╕реНрдпрд╛ рдорд┐рд▓реА рдЬрд┐рд╕рдХрд╛ рдЕрднреА рддрдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЬрдиреНрдо рд╣реБрдЖ
рд╣рдореЗрдВ рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рд╕реЗрд╡рд╛ рдХреНрдпреЛрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП?
рдпрд╣ рдирдмреНрдмреЗ рдХрд╛ рджрд╢рдХ рдерд╛, рд╣рдо рдЬреИрд╕реЗ-рддреИрд╕реЗ рдмрдЪ рд╕рдХреЗред 2019, рд╣рдордиреЗ рдПрдкреАрдЖрдИ рдлрд░реНрд╕реНрдЯ рдХрд╕реНрдЯрдорд░ рдбреЗрдЯрд╛ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдХреЗрд╕реЗрдВрд╕, рдЬрд┐рд╕рдиреЗ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг, рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдкрд╣рдЪрд╛рди рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рд╕реНрд░реЛрддреЛрдВ (рдлреЗрд╕рдмреБрдХ рд╡рд┐рдЬреНрдЮрд╛рдкрди, рд╕реНрдЯреНрд░рд╛рдЗрдк, рд╕реЗрд▓реНрд╕рдлреЛрд░реНрд╕, рдЧреВрдЧрд▓ рдкреНрд▓реЗ, рдЧреВрдЧрд▓ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕, рдЖрджрд┐) рд╕реЗ рдбреЗрдЯрд╛ рдПрдХрддреНрд░ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛ рджрд┐рдпрд╛ред рд╣рдордиреЗ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ рдХрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ Google Analytics (рдЗрд╕рдХреЗ рдмрд╛рдж GA)ред рд╣рдордиреЗ рдХреБрдЫ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ рдмрд╛рдд рдХреА рдФрд░ рдкрд╛рдпрд╛ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ рдЙрддреНрдкрд╛рдж рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдбреЗрдЯрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдЙрдиреНрд╣реЗрдВ GA рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди
рдЙрдиреНрд╣реЛрдВрдиреЗ рдЕрдкрдиреЗ рд╡реЗрдм рд╕рдВрд╕рд╛рдзрди рдкрд░ рдПрдХ рд╕реЗрдЧрдореЗрдВрдЯ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд┐рдХреНрд╕реЗрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдФрд░ рдЙрдирдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдбреЗрдЯрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдЬ)ред рд▓реЗрдХрд┐рди рд╕реЗрдЧрдореЗрдВрдЯ рдХрд╛ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рднреА рд╣реИ - рдХреАрдорддред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдХрд┐рд╕реА рд╡реЗрдм рд╕рдВрд╕рд╛рдзрди рдореЗрдВ 90,000 рдПрдордЯреАрдпреВ (рдорд╛рд╕рд┐рдХ рдЯреНрд░реИрдХ рдХрд┐рдП рдЧрдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛) рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдХреИрд╢рд┐рдпрд░ рдХреЛ рдкреНрд░рддрд┐ рдорд╛рд╣ ~1,000 рдбреЙрд▓рд░ рдХрд╛ рднреБрдЧрддрд╛рди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдПрдХ рддреАрд╕рд░реА рд╕рдорд╕реНрдпрд╛ рднреА рдереА - рдХреБрдЫ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдПрдХреНрд╕рдЯреЗрдВрд╢рди (рдЬреИрд╕реЗ рдПрдбрдмреНрд▓реЙрдХ) рдиреЗ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░ рджрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐... рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реЗ http рдЕрдиреБрд░реЛрдз GA рдФрд░ рд╕реЗрдЧрдореЗрдВрдЯ рдбреЛрдореЗрди рдкрд░ рднреЗрдЬреЗ рдЧрдП рдереЗред рдЕрдкрдиреЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреА рдЗрдЪреНрдЫрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдордиреЗ рдПрдХ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рд╕реЗрд╡рд╛ рдмрдирд╛рдИ рд╣реИ рдЬреЛ рдбреЗрдЯрд╛ рдХрд╛ рдкреВрд░рд╛ рд╕реЗрдЯ рдПрдХрддреНрд░ рдХрд░рддреА рд╣реИ (рдирдореВрдирд╛ рдХреЗ рдмрд┐рдирд╛), рдореБрдлрд╝реНрдд рд╣реИ рдФрд░ рд╣рдорд╛рд░реЗ рдЕрдкрдиреЗ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдкрд░ рдХрд╛рдо рдХрд░ рд╕рдХрддреА рд╣реИред
рд╕реЗрд╡рд╛ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ
рд╕реЗрд╡рд╛ рдореЗрдВ рддреАрди рднрд╛рдЧ рд╣реЛрддреЗ рд╣реИрдВ: рдПрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд┐рдХреНрд╕реЗрд▓ (рдЬрд┐рд╕реЗ рд╣рдордиреЗ рдмрд╛рдж рдореЗрдВ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛), рд╕рд░реНрд╡рд░ рднрд╛рдЧ рдХреЛ GO рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЗрди-рд╣рд╛рдЙрд╕ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ Redshift рдФрд░ BigQuery рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рдЧрдИ рдереА (рдмрд╛рдж рдореЗрдВ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛) рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдЬ, рдХреНрд▓рд┐рдХрд╣рд╛рдЙрд╕ рдФрд░ рд╕реНрдиреЛрдлреНрд▓реЗрдХ)ред
рдЬреАрдП рдФрд░ рд╕реЗрдЧрдореЗрдВрдЯ рдЗрд╡реЗрдВрдЯ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЧрдпрд╛ред рдмрд╕ рдЙрд╕ рд╡реЗрдм рд╕рдВрд╕рд╛рдзрди рд╕реЗ рд╕рднреА рдШрдЯрдирд╛рдУрдВ рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░рдирд╛ рдерд╛ рдЬрд╣рд╛рдВ рдкрд┐рдХреНрд╕реЗрд▓ рд╣рдорд╛рд░реЗ рдмреИрдХрдПрдВрдб рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдмрд╛рдж рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛, рдРрд╕рд╛ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд┐рдХреНрд╕реЗрд▓ рдиреЗ рдореВрд▓ GA рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╡рд┐рдзрд┐ рдХреЛ рдПрдХ рдирдП рд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░ рджрд┐рдпрд╛, рдЬрд┐рд╕рдиреЗ рд╣рдорд╛рд░реЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдИрд╡реЗрдВрдЯ рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░ рджрд┐рдпрд╛ред
//'ga' - ╤Б╤В╨░╨╜╨┤╨░╤А╤В╨╜╨╛╨╡ ╨╜╨░╨╖╨▓╨░╨╜╨╕╨╡ ╨┐╨╡╤А╨╡╨╝╨╡╨╜╨╜╨╛╨╣ Google Analytics
if (window.ga) {
ga(tracker => {
var originalSendHitTask = tracker.get('sendHitTask');
tracker.set('sendHitTask', (model) => {
var payLoad = model.get('hitPayload');
//╨╛╤В╨┐╤А╨░╨▓╨║╨░ ╨╛╤А╨╕╨│╨╕╨╜╨░╨╗╤М╨╜╨╛╨│╨╛ ╤Б╨╛╨▒╤Л╤В╨╕╤П ╨▓ GA
originalSendHitTask(model);
let jsonPayload = this.parseQuery(payLoad);
//╨╛╤В╨┐╤А╨░╨▓╨║╨░ ╤Б╨╛╨▒╤Л╤В╨╕╤П ╨▓ ╨╜╨░╤И ╤Б╨╡╤А╨▓╨╕╤Б
this.send3p('ga', jsonPayload);
});
});
}
рд╕реЗрдЧрдореЗрдВрдЯ рдкрд┐рдХреНрд╕реЗрд▓ рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ; рдЗрд╕рдореЗрдВ рдорд┐рдбрд▓рд╡реЗрдпрд░ рд╡рд┐рдзрд┐рдпрд╛рдБ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рд╣рдордиреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИред
//'analytics' - ╤Б╤В╨░╨╜╨┤╨░╤А╤В╨╜╨╛╨╡ ╨╜╨░╨╖╨▓╨░╨╜╨╕╨╡ ╨┐╨╡╤А╨╡╨╝╨╡╨╜╨╜╨╛╨╣ Segment
if (window.analytics) {
if (window.analytics.addSourceMiddleware) {
window.analytics.addSourceMiddleware(chain => {
try {
//╨┤╤Г╨▒╨╗╨╕╤А╨╛╨▓╨░╨╜╨╕╨╡ ╤Б╨╛╨▒╤Л╤В╨╕╤П ╨▓ ╨╜╨░╤И ╤Б╨╡╤А╨▓╨╕╤Б
this.send3p('ajs', chain.payload);
} catch (e) {
LOG.warn('Failed to send an event', e)
}
//╨╛╤В╨┐╤А╨░╨▓╨║╨░ ╨╛╤А╨╕╨│╨╕╨╜╨░╨╗╤М╨╜╨╛╨│╨╛ ╤Б╨╛╨▒╤Л╤В╨╕╤П ╨▓ Segment
chain.next(chain.payload);
});
} else {
LOG.warn("Invalid interceptor state. Analytics js initialized, but not completely");
}
} else {
LOG.warn('Analytics.js listener is not set.');
}
рдШрдЯрдирд╛рдУрдВ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдордиреЗ рдордирдорд╛рдирд╛ json рднреЗрдЬрдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝реА рд╣реИ:
//╨Ю╤В╨┐╤А╨░╨▓╨║╨░ ╤Б╨╛╨▒╤Л╤В╨╕╨╣ ╤Б ╨┐╤А╨╛╨╕╨╖╨▓╨╛╨╗╤М╨╜╤Л╨╝ json ╨╛╨▒╤К╨╡╨║╤В╨╛╨╝
eventN.track('product_page_view', {
product_id: '1e48fb70-ef12-4ea9-ab10-fd0b910c49ce',
product_price: 399.99,
price_currency: 'USD'
product_release_start: '2020-09-25T12:38:27.763000Z'
});
рдЖрдЧреЗ, рд╕рд░реНрд╡рд░ рдкрд╛рд░реНрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред рдмреИрдХрдПрдВрдб рдХреЛ http рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЙрдиреНрд╣реЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рд╕реЗ рднрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрд┐рдпреЛ рдбреЗрдЯрд╛ (рдзрдиреНрдпрд╡рд╛рдж)ред
//╨▓╤Е╨╛╨┤╤П╤Й╨╕╨╣ json
{
"field_1": {
"sub_field_1": "text1",
"sub_field_2": 100
},
"field_2": "text2",
"field_3": {
"sub_field_1": {
"sub_sub_field_1": "2020-09-25T12:38:27.763000Z"
}
}
}
//╤А╨╡╨╖╤Г╨╗╤М╤В╨░╤В
{
"field_1_sub_field_1": "text1",
"field_1_sub_field_2": 100,
"field_2": "text2",
"field_3_sub_field_1_sub_sub_field_1": "2020-09-25T12:38:27.763000Z"
}
рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╕рд░рдгрд┐рдпреЛрдВ рдХреЛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЗрд╡рд▓ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рджреЛрд╣рд░рд╛рдП рдЧрдП рдлрд╝реАрд▓реНрдб рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рд╡реИрдХрд▓реНрдкрд┐рдХ рдореИрдкрд┐рдВрдЧ рдирд┐рдпрдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлрд╝реАрд▓реНрдб рдирд╛рдо рдмрджрд▓рдирд╛ рдпрд╛ рдЙрдиреНрд╣реЗрдВ рд╣рдЯрд╛рдирд╛ рднреА рд╕рдВрднрд╡ рд╣реИред рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рд╡реЗ рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рд╕реНрдХреАрдорд╛ рдмрджрд▓рдиреЗ рдпрд╛ рдПрдХ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХреЛ рджреВрд╕рд░реЗ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдХрд┐рд╕реА json рдлрд╝реАрд▓реНрдб рдореЗрдВ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИ (рдлрд╝реАрд▓реНрдб_3_рдЙрдк_рдлрд╝реАрд▓реНрдб_1_рдЙрдк_рдЙрдк_рдлрд╝реАрд▓реНрдб_1 рдЙрдкрд░реЛрдХреНрдд рдЙрджрд╛рд╣рд░рдг рд╕реЗ), рдлрд┐рд░ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдПрдХ рдлрд╝реАрд▓реНрдб рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдПрдХ рдореИрдкрд┐рдВрдЧ рдирд┐рдпрдо рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдлрд╝реАрд▓реНрдб рдХрд╛ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдкрд╣рд▓реЗ json рдорд╛рди рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЯрд╛рдЗрдк рдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдирд┐рдпрдо (рдпрджрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдордиреЗ 4 рдореБрдЦреНрдп рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХреА рд╣реИ: STRING, FLOAT64, INT64 рдФрд░ TIMESTAMPред рдореИрдкрд┐рдВрдЧ рдФрд░ рдЯрд╛рдЗрдк рдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдирд┐рдпрдо рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддреЗ рд╣реИрдВ:
rules:
- "/field_1/subfield_1 -> " #╨┐╤А╨░╨▓╨╕╨╗╨╛ ╤Г╨┤╨░╨╗╨╡╨╜╨╕╤П ╨┐╨╛╨╗╤П
- "/field_2/subfield_1 -> /field_10/subfield_1" #╨┐╤А╨░╨▓╨╕╨╗╨╛ ╨┐╨╡╤А╨╡╨╜╨╛╤Б╨░ ╨┐╨╛╨╗╤П
- "/field_3/subfield_1/subsubfield_1 -> (timestamp) /field_20" #╨┐╤А╨░╨▓╨╕╨╗╨╛ ╨┐╨╡╤А╨╡╨╜╨╛╤Б╨░ ╨┐╨╛╨╗╤П ╨╕ ╨┐╤А╨╕╨▓╨╡╨┤╨╡╨╜╨╕╤П ╤В╨╕╨┐╨░
рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрд▓реНрдЧреЛрд░рд┐рджрдо:
- json рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕рдорддрд▓ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдмрджрд▓реЗрдВ
- рдорд╛рдиреЛрдВ рджреНрд╡рд╛рд░рд╛ рдлрд╝реАрд▓реНрдб рдХреЗ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХрд░рдирд╛
- рдореИрдкрд┐рдВрдЧ рдФрд░ рдЯрд╛рдЗрдк рдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдирд┐рдпрдо рд▓рд╛рдЧреВ рдХрд░рдирд╛
рдлрд┐рд░ рдЖрдиреЗ рд╡рд╛рд▓реА json рд╕рдВрд░рдЪрдирд╛ рд╕реЗ:
{
"product_id": "1e48fb70-ef12-4ea9-ab10-fd0b910c49ce",
"product_price": 399.99,
"price_currency": "USD",
"product_type": "supplies",
"product_release_start": "2020-09-25T12:38:27.763000Z",
"images": {
"main": "picture1",
"sub": "picture2"
}
}
рдбреЗрдЯрд╛ рд╕реНрдХреАрдорд╛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:
"product_id" character varying,
"product_price" numeric (38,18),
"price_currency" character varying,
"product_type" character varying,
"product_release_start" timestamp,
"images_main" character varying,
"images_sub" character varying
рд╣рдордиреЗ рдпрд╣ рднреА рд╕реЛрдЪрд╛ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдиреНрдп рдорд╛рдирджрдВрдбреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╡рд┐рднрд╛рдЬрди рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпрд╛ рдбреЗрдЯрд╛ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рддрд╛рд▓рд┐рдХрд╛ рдирд╛рдо рдХреЛ рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рд╕рд╛рде рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд▓рд╛рдЧреВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП
tableName: '{{.product_type}}_{{._timestamp.Format "2006_01"}}'
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЖрдиреЗ рд╡рд╛рд▓реА рдШрдЯрдирд╛рдУрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рд░рдирдЯрд╛рдЗрдо рдкрд░ рдмрджрд▓ рд╕рдХрддреА рд╣реИред рд╣рдордиреЗ рдореМрдЬреВрджрд╛ рддрд╛рд▓рд┐рдХрд╛ рдХреА рд╕рдВрд░рдЪрдирд╛ рдФрд░ рдЖрдиреЗ рд╡рд╛рд▓реА рдШрдЯрдирд╛ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИред рдпрджрд┐ рдХреЛрдИ рдЕрдВрддрд░ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдирдП рдлрд╝реАрд▓реНрдб рдХреЗ рд╕рд╛рде рдЕрджреНрдпрддрди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреИрдЪ SQL рдХреНрд╡реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:
#╨Я╤А╨╕╨╝╨╡╤А ╨┤╨╗╤П Postgres
ALTER TABLE "schema"."table" ADD COLUMN new_column character varying
рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░
рдЖрдкрдХреЛ рдЗрд╡реЗрдВрдЯ рдХреЛ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ, рди рдХрд┐ рдЙрдиреНрд╣реЗрдВ рд╕реАрдзреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдХреА? рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдкрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рд╣рдореЗрд╢рд╛ рдЕрдЪреНрдЫрд╛ рдкреНрд░рджрд░реНрд╢рди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ (
рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдФрд░ рднрд╡рд┐рд╖реНрдп рдХреА рдпреЛрдЬрдирд╛рдПрдБ
рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░, рд╕реЗрд╡рд╛ рдПрдХ рдкреВрд░реНрдг рдЙрддреНрдкрд╛рдж рдХреА рддрд░рд╣ рджрд┐рдЦрдиреЗ рд▓рдЧреА рдФрд░ рд╣рдордиреЗ рдЗрд╕реЗ рдУрдкрди рд╕реЛрд░реНрд╕ рдкрд░ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, Postgres, ClickHouse, BigQuery, Redshift, S3, рд╕реНрдиреЛрдлреНрд▓реЗрдХ рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕рднреА рдПрдХреАрдХрд░рдг рдбреЗрдЯрд╛ рд▓реЛрдбрд┐рдВрдЧ рдХреЗ рдмреИрдЪ рдФрд░ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдореЛрдб рджреЛрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред
рд╡рд░реНрддрдорд╛рди рдПрдХреАрдХрд░рдг рдпреЛрдЬрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рджрд┐рдЦрддреА рд╣реИ:
рд╣рд╛рд▓рд╛рдБрдХрд┐ рд╕реЗрд╡рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдбреЙрдХрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ), рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рднреА рд╣реИ
тЖТ
тЖТ
тЖТ
рдЕрдЧрд░ рдЗрд╡реЗрдВрдЯрдиреЗрдЯрд┐рд╡ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рддреЛ рд╣рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреА!
рдХреЗрд╡рд▓ рдкрдВрдЬреАрдХреГрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реА рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдореЗрдВ рднрд╛рдЧ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред
рдЖрдкрдХреА рдХрдВрдкрдиреА рдореЗрдВ рдХреМрди рд╕реА рд╕рд╛рдВрдЦреНрдпрд┐рдХреА рд╕рдВрдЧреНрд░рд╣рдг рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?
-
48,0% рддрдХ рдЧреВрдЧрд▓ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕12
-
4,0% рддрдХ рдЦрдВрдб 1
-
16,0% рддрдХ рдПрдХ рдФрд░ (рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд▓рд┐рдЦреЗрдВ)4
-
32,0% рддрдХ рдЕрдкрдиреА рд╕реЗрд╡рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреА8
25 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдиреЗ рдорддрджрд╛рди рдХрд┐рдпрд╛ред 6 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдиреБрдкрд╕реНрдерд┐рдд рд░рд╣реЗред
рд╕реНрд░реЛрдд: www.habr.com