рдпрджрд┐ рддрдкрд╛рдЗрдБ рдЯрд╛рдЗрдо рд╕реАрд░реАрдЬ рдбрд╛рдЯрд╛рдмреЗрд╕ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ (timeseries db,
рддреНрдпрд╛рдЧ: рд╕реВрдЪреАрдмрджреНрдз рдореБрджреНрджрд╛рд╣рд░реВ InfluxDB рд╕рдВрд╕реНрдХрд░рдг 1.7.4 рдорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреНрдЫрдиреНред
рдХрд┐рди рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛?
рдкрд░рд┐рдпреЛрдЬрдирд╛рд▓реЗ рд╡рд┐рднрд┐рдиреНрди рдмреНрд▓рдХрдЪреЗрдирд╣рд░реВрдорд╛ рд▓реЗрдирджреЗрдирд╣рд░реВ рдЯреНрд░реНрдпрд╛рдХ рдЧрд░реНрдиреЗ рд░ рддрдереНрдпрд╛рдЩреНрдХрд╣рд░реВ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрдиреЗ рд╣реЛред рд╡рд┐рд╢реЗрд╖ рдЧрд░реА, рд╣рд╛рдореА рд╕реНрдерд┐рд░ рд╕рд┐рдХреНрдХрд╛рдХреЛ рдЙрддреНрд╕рд░реНрдЬрди рд░ рдЬрд▓рд╛рдЙрдиреЗ (
рд▓реЗрдирджреЗрдирдХреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЧрд░реНрджрд╛, рдПрдЙрдЯрд╛ рд╡рд┐рдЪрд╛рд░ рдЖрдпреЛ: рдореБрдЦреНрдп рднрдгреНрдбрд╛рд░рдгрдХреЛ рд░реВрдкрдорд╛ InfluxDB рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рдбрд╛рдЯрд╛рдмреЗрд╕ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиред рд▓реЗрдирджреЗрдирд╣рд░реВ рд╕рдордпрдХреЛ рдмрд┐рдиреНрджреБ рд╣реБрдиреН рд░ рддрд┐рдиреАрд╣рд░реВ рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЛрдбреЗрд▓рдорд╛ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рдлрд┐рдЯ рд╣реБрдиреНрдЫрдиреНред
рдПрдЧреНрд░реАрдЧреЗрд╢рди рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ рдкрдирд┐ рдзреЗрд░реИ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рджреЗрдЦрд┐рдиреНрдереЗ - рд▓рд╛рдореЛ рдЕрд╡рдзрд┐рдХреЛ рд╕рд╛рде рдЪрд╛рд░реНрдЯрд╣рд░реВ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдЖрджрд░реНрд╢ред рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд▓рд╛рдИ рдПрдХ рд╡рд░реНрд╖рдХреЛ рд▓рд╛рдЧрд┐ рдЪрд╛рд░реНрдЯ рдЪрд╛рд╣рд┐рдиреНрдЫ, рд░ рдбрд╛рдЯрд╛рдмреЗрд╕рдорд╛ рдкрд╛рдБрдЪ рдорд┐рдиреЗрдЯрдХреЛ рд╕рдордп рдлреНрд░реЗрдордХреЛ рд╕рд╛рде рдбрд╛рдЯрд╛ рд╕реЗрдЯ рд╣реБрдиреНрдЫред рдЙрд╣рд╛рдБрд▓рд╛рдИ рд╕рдмреИ рдПрдХ рд▓рд╛рдЦ рдереЛрдкреНрд▓рд╛рд╣рд░реВ рдкрдард╛рдЙрдиреБ рд╡реНрдпрд░реНрде рдЫ - рд▓рд╛рдореЛ рдкреНрд░рд╢реЛрдзрди рдмрд╛рд╣реЗрдХ, рддрд┐рдиреАрд╣рд░реВ рд╕реНрдХреНрд░рд┐рдирдорд╛ рдкрдирд┐ рдлрд┐рдЯ рд╣реБрдиреЗрдЫреИрдирдиреНред рддрдкрд╛рдИрдВ рд╕рдордп рд╕реАрдорд╛ рдмрдврд╛рдЙрдиреЗ рдЖрдлреНрдиреИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд▓реЗрдЦреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рд╡рд╛ Influx рдорд╛ рдирд┐рд░реНрдорд┐рдд рдПрдХрддреНрд░реАрдХрд░рдг рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рддрд┐рдиреАрд╣рд░реВрдХреЛ рдорджреНрджрддрд▓реЗ, рддрдкрд╛рдИрдВ рджрд┐рдирдХреЛ рдЖрдзрд╛рд░рдорд╛ рдбреЗрдЯрд╛ рд╕рдореВрд╣ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рдЖрд╡рд╢реНрдпрдХ 365 рдЕрдВрдХрд╣рд░реВ рдкрдард╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред
рдпреЛ рдереЛрд░реИ рднреНрд░рдордкреВрд░реНрдг рдерд┐рдпреЛ рдХрд┐ рддреНрдпрд╕реНрддрд╛ рдбрд╛рдЯрд╛рдмреЗрд╕рд╣рд░реВ рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рд╕рдЩреНрдХрд▓рди рдЧрд░реНрдиреЗ рдЙрджреНрджреЗрд╢реНрдпрдХрд╛ рд▓рд╛рдЧрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред рд╕рд░реНрднрд░рд╣рд░реВрдХреЛ рдирд┐рдЧрд░рд╛рдиреА, тАЛтАЛiot рдЙрдкрдХрд░рдгрд╣рд░реВ, рд╕рдмреИ рдЪреАрдЬрд╣рд░реВ рдЬрд╕рдмрд╛рдЯ рдлрд╛рд░рдо "рдкреНрд░рд╡рд╛рд╣" рдХреЛ рд▓рд╛рдЦреМрдВ рдмрд┐рдиреНрджреБрд╣рд░реВ: [<time> - <metric value>]ред рддрд░ рдпрджрд┐ рдбрд╛рдЯрд╛рдмреЗрд╕рд▓реЗ рдареВрд▓реЛ рдбрд╛рдЯрд╛ рдкреНрд░рд╡рд╛рд╣рдХреЛ рд╕рд╛рде рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрджрдЫ рднрдиреЗ, рддреНрдпрд╕реЛ рднрдП рдХрд┐рди рд╕рд╛рдиреЛ рднреЛрд▓реНрдпреБрдорд▓реЗ рд╕рдорд╕реНрдпрд╛ рдирд┐рдореНрддреНрдпрд╛рдЙрдиреБ рдкрд░реНрдЫ? рдпрд╕рд▓рд╛рдИ рджрд┐рдорд╛рдЧрдорд╛ рд░рд╛рдЦреЗрд░, рд╣рд╛рдореАрд▓реЗ InfluxDB рд▓рд╛рдИ рдХрд╛рдо рдЧрд░реНрди рд▓рдЧреНрдпреМрдВред
InfluxDB рдорд╛ рдЕрд░реВ рдХреЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЫ
рдЙрд▓реНрд▓реЗрдЦрд┐рдд рдПрдХрддреНрд░реАрдХрд░рдг рдХрд╛рд░реНрдпрд╣рд░реВ рдмрд╛рд╣реЗрдХ, рддреНрдпрд╣рд╛рдБ рдЕрд░реНрдХреЛ рдареВрд▓реЛ рдХреБрд░рд╛ рдЫ - рдирд┐рд░рдиреНрддрд░ рдкреНрд░рд╢реНрдирд╣рд░реВ (
рдкрдирд┐ рдЫ рдЕрд╡рдзрд╛рд░рдг рдиреАрддрд┐рд╣рд░реВ (
- рдЕрд░реНрдХреЛ рддрд╛рд▓рд┐рдХрд╛рдорд╛ рдбреЗрдЯрд╛ рдЬрдореНрдорд╛ рдЧрд░реНрди рдирд┐рд░рдиреНрддрд░ рдХреНрд╡реЗрд░реА рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН;
- рдкрд╣рд┐рд▓реЛ рддрд╛рд▓рд┐рдХрд╛рдХреЛ рд▓рд╛рдЧрд┐, рддреНрдпрд╣реА рд╣рдкреНрддрд╛ рднрдиреНрджрд╛ рдкреБрд░рд╛рдиреЛ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдореЗрдЯрд╛рдЙрдиреЗ рдиреАрддрд┐ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрдиреБрд╣реЛрд╕реНред
рд░ Influx рд▓реЗ рд╕реНрд╡рддрдиреНрддреНрд░ рд░реВрдкрдорд╛ рдбрд╛рдЯрд╛рдХреЛ рдЖрдХрд╛рд░ рдШрдЯрд╛рдЙрдиреЗрдЫ рд░ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЪреАрдЬрд╣рд░реВ рдореЗрдЯрд╛рдЙрдиреЗрдЫред
рднрдгреНрдбрд╛рд░рдг рдбрд╛рдЯрд╛ рдмрд╛рд░реЗ
рдзреЗрд░реИ рдбрд╛рдЯрд╛ рднрдгреНрдбрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫреИрди: рд▓рдЧрднрдЧ 70 рд╣рдЬрд╛рд░ рд▓реЗрдирджреЗрди рд░ рдмрдЬрд╛рд░ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧ рдЕрд░реНрдХреЛ рдорд┐рд▓рд┐рдпрди рдЕрдВрдХред рдирдпрд╛рдБ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рд╣рд░реВ рдердкреНрджреИ - рдкреНрд░рддрд┐ рджрд┐рди 3000 рдЕрдВрдХ рднрдиреНрджрд╛ рдмрдвреАред рддреНрдпрд╣рд╛рдБ рд╕рд╛рдЗрдЯрдХреЛ рд▓рд╛рдЧрд┐ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдкрдирд┐ рдЫрдиреН, рддрд░ рддреНрдпрд╣рд╛рдБ рдереЛрд░реИ рдбрд╛рдЯрд╛ рдЫ рд░, рдЕрд╡рдзрд╛рд░рдг рдиреАрддрд┐ рдЕрдиреБрд╕рд╛рд░, рддрд┐рдиреАрд╣рд░реВ рдПрдХ рдорд╣рд┐рдирд╛ рднрдиреНрджрд╛ рдмрдвреАрдХреЛ рд▓рд╛рдЧрд┐ рднрдгреНрдбрд╛рд░рдг рдЧрд░рд┐рдПрдХрд╛ рдЫрдиреНред
рд╕рдорд╕реНрдпрд╛рд╣рд░реВ
рд╕реЗрд╡рд╛рдХреЛ рд╡рд┐рдХрд╛рд╕ рд░ рдкрдЫрд┐рд▓реНрд▓реЛ рдкрд░реАрдХреНрд╖рдгрдХреЛ рдХреНрд░рдордорд╛, InfluxDB рдХреЛ рд╕рдЮреНрдЪрд╛рд▓рдирдорд╛ рдЕрдзрд┐рдХ рд░ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рджреЗрдЦрд╛ рдкрд░реНрдпреЛред
1. рдбрд╛рдЯрд╛ рдореЗрдЯрд╛рдЙрдБрджреИ
рд▓реЗрдирджреЗрди рд╕рдВрдЧ рдбреЗрдЯрд╛ рдХреЛ рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдЫ:
SELECT time, amount, block, symbol FROM transactions WHERE symbol='USDT'
рдкрд░рд┐рдгрд╛рдо:
рдо рдбрд╛рдЯрд╛ рдореЗрдЯрд╛рдЙрди рдЖрджреЗрд╢ рдкрдард╛рдЙрдБрджреИ рдЫреБ:
DELETE FROM transactions WHERE symbol=тАЩUSDTтАЩ
рддреНрдпрд╕рдкрдЫрд┐ рдо рдкрд╣рд┐рд▓реЗ рдиреИ рдореЗрдЯрд╛рдЗрдПрдХреЛ рдбрд╛рдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдЕрдиреБрд░реЛрдз рдЧрд░реНрджрдЫреБред рд░ рдЦрд╛рд▓реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдХреЛ рд╕рдЯреНрдЯрд╛, Influx рд▓реЗ рдбреЗрдЯрд╛рдХреЛ рдЕрдВрд╢ рдлрд░реНрдХрд╛рдЙрдБрдЫ рдЬреБрди рдореЗрдЯрд╛рдЙрдиреБрдкрд░реНрджрдЫред
рдо рд╕рдореНрдкреВрд░реНрдг рддрд╛рд▓рд┐рдХрд╛ рдореЗрдЯрд╛рдЙрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрджреИрдЫреБ:
DROP MEASUREMENT transactions
рдо рддрд╛рд▓рд┐рдХрд╛ рдореЗрдЯрд╛рдЙрдиреЗ рдЬрд╛рдБрдЪ рдЧрд░реНрдЫреБ:
SHOW MEASUREMENTS
рдо рд╕реВрдЪреАрдорд╛ рддрд╛рд▓рд┐рдХрд╛ рджреЗрдЦреНрджрд┐рди, рддрд░ рдирдпрд╛рдБ рдбреЗрдЯрд╛ рдХреНрд╡реЗрд░реАрд▓реЗ рдЕрдЭреИ рдкрдирд┐ рд▓реЗрдирджреЗрдирдХреЛ рд╕рдорд╛рди рд╕реЗрдЯ рдлрд░реНрдХрд╛рдЙрдБрдЫред
рд╕рдорд╕реНрдпрд╛ рдорд▓рд╛рдИ рдПрдХ рдкрдЯрдХ рдорд╛рддреНрд░ рдЖрдпреЛ, рдХрд┐рдирдХрд┐ рдореЗрдЯрд╛рдЙрдиреЗ рдорд╛рдорд▓рд╛ рдПрдХ рдЕрд▓рдЧ рдорд╛рдорд▓рд╛ рдерд┐рдпреЛред рддрд░ рдбрд╛рдЯрд╛рдмреЗрд╕рдХреЛ рдпреЛ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдкрдорд╛ "рд╕рд╣реА" рд╕рдЮреНрдЪрд╛рд▓рдирдХреЛ рдврд╛рдБрдЪрд╛рдорд╛ рдлрд┐рдЯ рд╣реБрдБрджреИрдиред рдкрдЫрд┐ рдореИрд▓реЗ рдпрд╕рд▓рд╛рдИ github рдорд╛ рдЦреБрд▓рд╛ рдкрд╛рдП
рдирддрд┐рдЬрд╛рдХреЛ рд░реВрдкрдорд╛, рдореЗрдЯрд╛рдЙрди рд░ рддреНрдпрд╕рдкрдЫрд┐ рд╕рдореНрдкреВрд░реНрдг рдбрд╛рдЯрд╛рдмреЗрд╕ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрдпреЛред
2. рдлреНрд▓реЛрдЯрд┐рдВрдЧ рдмрд┐рдиреНрджреБ рдирдореНрдмрд░рд╣рд░реВ
InfluxDB рдорд╛ рдирд┐рд░реНрдорд┐рдд рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрд╛ рдЧрдгрд┐рдд рдЧрдгрдирд╛рд╣рд░реВрдорд╛ рд╕рдЯреАрдХрддрд╛ рддреНрд░реБрдЯрд┐рд╣рд░реВ рдЫрдиреНред рдпреЛ рдЕрд╕рд╛рдорд╛рдиреНрдп рдХреБрд░рд╛ рд╣реЛрдЗрди, рддрд░ рдпреЛ рдЕрдкреНрд░рд┐рдп рдЫред
рдореЗрд░реЛ рдорд╛рдорд▓рд╛рдорд╛, рдбреЗрдЯрд╛рдорд╛ рд╡рд┐рддреНрддреАрдп рдШрдЯрдХ рдЫ рд░ рдо рдпрд╕рд▓рд╛рдИ рдЙрдЪреНрдЪ рд╕рдЯреАрдХрддрд╛рдХрд╛ рд╕рд╛рде рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрди рдЪрд╛рд╣рдиреНрдЫреБред рдпрд╕ рдХрд╛рд░рдг, рд╣рд╛рдореА рдирд┐рд░рдиреНрддрд░ рдкреНрд░рд╢реНрдирд╣рд░реВ рддреНрдпрд╛рдЧреНрди рдпреЛрдЬрдирд╛ рдмрдирд╛рдЙрдБрдЫреМрдВред
3. рдирд┐рд░рдиреНрддрд░ рдкреНрд░рд╢реНрдирд╣рд░реВ рд╡рд┐рднрд┐рдиреНрди рд╕рдордп рдХреНрд╖реЗрддреНрд░рд╣рд░реВрдорд╛ рдЕрдиреБрдХреВрд▓рд┐рдд рдЧрд░реНрди рд╕рдХрд┐рдБрджреИрди
рд╕реЗрд╡рд╛рд╕рдБрдЧ рджреИрдирд┐рдХ рд▓реЗрдирджреЗрди рддрдереНрдпрд╛рдЩреНрдХрд╣рд░реВрдХреЛ рд╕рд╛рде рддрд╛рд▓рд┐рдХрд╛ рдЫред рдкреНрд░рддреНрдпреЗрдХ рджрд┐рдирдХреЛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ рддреНрдпреЛ рджрд┐рдирдХреЛ рд▓рд╛рдЧрд┐ рд╕рдмреИ рд▓реЗрдирджреЗрдирд╣рд░реВ рд╕рдореВрд╣рдмрджреНрдз рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред рддрд░ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рдХреЛ рджрд┐рди рдлрд░рдХ рд╕рдордпрдорд╛ рд╕реБрд░реБ рд╣реБрдиреЗрдЫ, рд░ рддреНрдпрд╕реИрд▓реЗ рд▓реЗрдирджреЗрдирдХреЛ рд╕реЗрдЯ рдлрд░рдХ рд╣реБрдиреЗрдЫред UTC рджреНрд╡рд╛рд░рд╛ рд╣реЛ
InfluxDB рдорд╛, рд╕рдордп рдЕрдиреБрд╕рд╛рд░ рд╕рдореВрд╣рдмрджреНрдз рдЧрд░реНрджрд╛, рддрдкрд╛рдЗрдБ рдердк рд░реВрдкрдорд╛ рдПрдХ рд╢рд┐рдлреНрдЯ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐ рдорд╕реНрдХреЛ рд╕рдордп (UTC+3):
SELECT MEAN("supply") FROM transactions GROUP BY symbol, time(1d, 3h) fill(previous)
рддрд░ рдХреНрд╡реЗрд░реА рдкрд░рд┐рдгрд╛рдо рдЧрд▓рдд рд╣реБрдиреЗрдЫред рдХреЗрд╣реА рдХрд╛рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рджрд┐рдирдХреЛ рдЖрдзрд╛рд░рдорд╛ рд╕рдореВрд╣рдмрджреНрдз рдЧрд░рд┐рдПрдХреЛ рдбреЗрдЯрд╛ 1677 рдорд╛ рдлрд┐рд░реНрддрд╛ рд╕реБрд░реБ рд╣реБрдиреЗрдЫ (InfluxDB рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд░реВрдкрдорд╛ рдпрд╕ рд╡рд░реНрд╖рдмрд╛рдЯ рд╕рдордп рдЕрд╡рдзрд┐рд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ):
рдпрд╕ рд╕рдорд╕реНрдпрд╛рдХреЛ рд╡рд░рд┐рдкрд░рд┐ рдХрд╛рдо рдЧрд░реНрди, рд╣рд╛рдореАрд▓реЗ рдЕрд╕реНрдерд╛рдпреА рд░реВрдкрдорд╛ рд╕реЗрд╡рд╛рд▓рд╛рдИ UTC+0 рдорд╛ рд╕реНрд╡рд┐рдЪ рдЧрд░реНрдпреМрдВред
4. рдкреНрд░рджрд░реНрд╢рди
рдЗрдиреНрдЯрд░рдиреЗрдЯрдорд╛ рдзреЗрд░реИ рдмреЗрдиреНрдЪрдорд╛рд░реНрдХрд╣рд░реВ рдЫрдиреН рдЬрд╕рд▓реЗ InfluxDB рд░ рдЕрдиреНрдп рдбрд╛рдЯрд╛рдмреЗрд╕рд╣рд░реВ рддреБрд▓рдирд╛ рдЧрд░реНрджрдЫред рдкрд╣рд┐рд▓реЛ рдирдЬрд░рдорд╛, рддрд┐рдиреАрд╣рд░реВ рдорд╛рд░реНрдХреЗрдЯрд┐рдВрдЧ рд╕рд╛рдордЧреНрд░реА рдЬрд╕реНрддреЛ рджреЗрдЦрд┐рдиреНрдереЗ, рддрд░ рдЕрдм рдорд▓рд╛рдИ рд▓рд╛рдЧреНрдЫ рдХрд┐ рддрд┐рдиреАрд╣рд░реВрдорд╛ рдХреЗрд╣реА рд╕рддреНрдпрддрд╛ рдЫред
рдо рддрд┐рдореАрд▓рд╛рдИ рдореЗрд░реЛ рдорд╛рдорд▓рд╛ рдмрддрд╛рдЙрдЫреБред
рд╕реЗрд╡рд╛рд▓реЗ рдЕрдиреНрддрд┐рдо рджрд┐рдирдХреЛ рддрдереНрдпрд╛рдЩреНрдХ рдлрд┐рд░реНрддрд╛ рдЧрд░реНрдиреЗ API рд╡рд┐рдзрд┐ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред рдЧрдгрдирд╛рд╣рд░реВ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрджрд╛, рд╡рд┐рдзрд┐рд▓реЗ рдирд┐рдореНрди рдкреНрд░рд╢реНрдирд╣рд░реВрд╕рдБрдЧ рдбрд╛рдЯрд╛рдмреЗрд╕рд▓рд╛рдИ рддреАрди рдкрдЯрдХ рд╕реЛрдзреНрдЫ:
SELECT * FROM coins_info WHERE time <= NOW() GROUP BY symbol ORDER BY time DESC LIMIT 1
SELECT * FROM dominance_info ORDER BY time DESC LIMIT 1
SELECT * FROM transactions WHERE time >= NOW() - 24h ORDER BY time DESC
рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг:
- рдкрд╣рд┐рд▓реЛ рдЕрдиреБрд░реЛрдзрдорд╛, рд╣рд╛рдореАрд▓реЗ рдмрдЬрд╛рд░ рдбреЗрдЯрд╛рдХреЛ рд╕рд╛рде рдкреНрд░рддреНрдпреЗрдХ рд╕рд┐рдХреНрдХрд╛рдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреНрддрд┐рдо рдЕрдВрдХрд╣рд░реВ рдкрд╛рдЙрдБрдЫреМрдВред рдореЗрд░реЛ рдорд╛рдорд▓рд╛ рдорд╛ рдЖрда рд╕рд┐рдХреНрдХрд╛ рд▓рд╛рдЧрд┐ рдЖрда рдЕрдВрдХред
- рджреЛрд╕реНрд░реЛ рдЕрдиреБрд░реЛрдзрд▓реЗ рд╕рдмреИрднрдиреНрджрд╛ рдирдпрд╛рдБ рдмрд┐рдиреНрджреБрд╣рд░реВ рдордзреНрдпреЗ рдПрдХ рдкрд╛рдЙрдБрдЫред
- рддреЗрд╕реНрд░реЛрд▓реЗ рдкрдЫрд┐рд▓реНрд▓реЛ XNUMX рдШрдгреНрдЯрд╛рдХреЛ рд▓реЗрдирджреЗрдирдХреЛ рд╕реВрдЪреА рдЕрдиреБрд░реЛрдз рдЧрд░реНрджрдЫ; рддреНрдпрд╣рд╛рдБ рддреА рдордзреНрдпреЗ рдзреЗрд░реИ рд╕рдп рд╣реБрди рд╕рдХреНрдЫрдиреНред
рдорд▓рд╛рдИ рд╕реНрдкрд╖реНрдЯ рдЧрд░реНрди рджрд┐рдиреБрд╣реЛрд╕реН рдХрд┐ InfluxDB рд▓реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рдЯреНрдпрд╛рдЧ рд░ рд╕рдордпрдХреЛ рдЖрдзрд╛рд░рдорд╛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдмрдирд╛рдЙрдБрдЫ, рдЬрд╕рд▓реЗ рдкреНрд░рд╢реНрдирд╣рд░реВрдХреЛ рдЧрддрд┐ рдмрдврд╛рдЙрдБрдЫред рдкрд╣рд┐рд▓реЛ рдЕрдиреБрд░реЛрдзрдорд╛ рдкреНрд░рддреАрдХ рдЯреНрдпрд╛рдЧ рдЫред
рдореИрд▓реЗ рдпрд╕ API рд╡рд┐рдзрд┐рдорд╛ рддрдирд╛рд╡ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдПрдХреЛ рдЫреБред 25 RPS рдХреЛ рд▓рд╛рдЧрд┐, рд╕рд░реНрднрд░рд▓реЗ рдЫ CPU рд╣рд░реВрдХреЛ рдкреВрд░реНрдг рд▓реЛрдб рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНтАНрдпреЛ:
рдПрдХреИ рд╕рдордпрдорд╛, NodeJs рдкреНрд░рдХреНрд░рд┐рдпрд╛рд▓реЗ рдХреБрдиреИ рдкрдирд┐ рд▓реЛрдб рдкреНрд░рджрд╛рди рдЧрд░реНрджреИрдиред
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрддрд┐ рдкрд╣рд┐рд▓реЗ рдиреИ 7-10 RPS рджреНрд╡рд╛рд░рд╛ рдШрдЯреЗрдХреЛ рдЫ: рдпрджрд┐ рдПрдХ рдЧреНрд░рд╛рд╣рдХрд▓реЗ 200 ms рдорд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рд╕рдХреНрдЫ рднрдиреЗ, рддреНрдпрд╕рдкрдЫрд┐ 10 рдЧреНрд░рд╛рд╣рдХрд╣рд░реВрд▓реЗ рдПрдХ рд╕реЗрдХреЗрдиреНрдб рдкрд░реНрдЦрдиреБ рдкрд░реНрдиреЗ рдерд┐рдпреЛред 25 RPS рддреНрдпреЛ рд╕реАрдорд╛ рд╣реЛ рдЬрд╕рдорд╛ рд╕реНрдерд┐рд░рддрд╛рд▓реЗ рднреЛрдЧреЗрдХреЛ рдерд┐рдпреЛ; 500 рддреНрд░реБрдЯрд┐рд╣рд░реВ рдЧреНрд░рд╛рд╣рдХрд╣рд░реВрд▓рд╛рдИ рдлрд┐рд░реНрддрд╛ рдЧрд░рд┐рдпреЛред
рдпрд╕реНрддреЛ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрдЧ рд╣рд╛рдореНрд░реЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдорд╛ Influx рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдЕрд╕рдореНрднрд╡ рдЫред рдпрд╕рдмрд╛рд╣реЗрдХ: рдПрдЙрдЯрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдорд╛ тАЛтАЛрдЬрд╣рд╛рдБ рдЕрдиреБрдЧрдорди рдзреЗрд░реИ рдЧреНрд░рд╛рд╣рдХрд╣рд░реВрд▓рд╛рдИ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рджреЗрдЦрд╛ рдкрд░реНрди рд╕рдХреНрдЫрдиреН рд░ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рд╕рд░реНрднрд░ рдУрднрд░рд▓реЛрдб рд╣реБрдиреЗрдЫред
рдирд┐рд╖реНрдХрд░реНрд╖рдорд╛
рдкреНрд░рд╛рдкреНрдд рдЕрдиреБрднрд╡рдмрд╛рдЯ рд╕рдмреИрднрдиреНрджрд╛ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдирд┐рд╖реНрдХрд░реНрд╖ рдпреЛ рд╣реЛ рдХрд┐ рддрдкрд╛рдЗрдБ рдкрд░реНрдпрд╛рдкреНрдд рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдмрд┐рдирд╛ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдорд╛ тАЛтАЛрдЕрдЬреНрдЮрд╛рдд рдкреНрд░рд╡рд┐рдзрд┐ рд▓рд┐рди рд╕рдХреНрдиреБрд╣реБрдиреНрдиред Github рдорд╛ рдЦреБрд▓рд╛ рдореБрджреНрджрд╛рд╣рд░реВрдХреЛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕реНрдХреНрд░реАрдирд┐рдВрдЧрд▓реЗ InfluxDB рд▓рд╛рдИ рдореБрдЦреНрдп рдбрд╛рдЯрд╛ рд╕реНрдЯреЛрд░рдХреЛ рд░реВрдкрдорд╛ рдЫрдиреМрдЯ рдЧрд░реНрдирдмрд╛рдЯ рдмрдЪреНрди рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдЧрд░реНрди рд╕рдХреНрдЫред
InfluxDB рдореЗрд░реЛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рдХрд╛рд░реНрдпрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд░рд╛рдореНрд░реЛ рдлрд┐рдЯ рд╣реБрдиреБрдкрд░реНрджрдЫ, рддрд░ рдЕрднреНрдпрд╛рд╕рд▓реЗ рджреЗрдЦрд╛рдПрдХреЛ рд░реВрдкрдорд╛, рдпреЛ рдбрд╛рдЯрд╛рдмреЗрд╕рд▓реЗ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реВ рдкреВрд░рд╛ рдЧрд░реНрджреИрди рд░ рдпрд╕рдорд╛ рдзреЗрд░реИ рдмрдЧрд╣рд░реВ рдЫрдиреНред
рддрдкрд╛рдИрдВрд▓реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рднрдгреНрдбрд╛рд░рдорд╛ рдкрд╣рд┐рд▓реЗ рдиреИ рд╕рдВрд╕реНрдХрд░рдг 2.0.0-beta рдлреЗрд▓рд╛ рдкрд╛рд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ; рд╣рд╛рдореА рдХреЗрд╡рд▓ рдЖрд╢рд╛ рдЧрд░реНрди рд╕рдХреНрдЫреМрдВ рдХрд┐ рджреЛрд╕реНрд░реЛ рд╕рдВрд╕реНрдХрд░рдгрдорд╛ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рд╕реБрдзрд╛рд░ рд╣реБрдиреЗрдЫред рдпрд╕ рдмреАрдЪрдорд╛, рдо TimescaleDB рдХрд╛рдЧрдЬрд╛рдд рдЕрдзреНрдпрдпрди рдЧрд░реНрди рдЬрд╛рдиреЗрдЫреБред
рд╕реНрд░реЛрдд: www.habr.com