Cardano-db-sync: рдХрд╛рд░реНрдбрд╛рдиреЛ-рдХреНрд▓реА рдФрд░ рдбреАрдмреА-рд╕рд┐рдВрдХ 243 рдпреБрдЧ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдкреБрд░рд╕реНрдХрд╛рд░реЛрдВ рдХреЛ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 21 рдЬрдире░ 2021  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: input-output-hk/cardano-db-sync

рдХреБрдЫ рдЗрдирд╛рдо рдкрддреЛрдВ рдХреЗ рд▓рд┐рдП 243 рдпреБрдЧ рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░ рдХрд╛рд░реНрдбрд╛рдиреЛ-рдХреНрд▓реА рдФрд░ рдбреАрдмреА-рд╕рд┐рдВрдХ рдкреБрд░рд╕реНрдХрд╛рд░реЛрдВ рдХреА рдПрдХ рдЕрд▓рдЧ рд╕рдВрдЦреНрдпрд╛ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕реНрдЯреЗрдХ1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0

рдХрд╛рд░реНрдбрд╛рдиреЛ-рдХреНрд▓реА

$ cardano-cli query stake-address-info --cardano-mode --mainnet --allegra-era --address stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0
[
    {
        "address": "stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0",
        "delegation": "pool14ku0z9rx9yx34zl00jtxtpyv6ehytfl8fewztavx7qvju7nrtr8",
        "rewardAccountBalance": 13258955846
    }
]

рдФрд░ рдбреАрдмреА-рд╕рд┐рдВрдХ

# SELECT SUM(reward.amount)
# FROM stake_address
# LEFT JOIN reward ON reward.addr_id = stake_address.id
# WHERE stake_address.view = 'stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0';
     sum
-------------
 13222415370
(1 row)

рдЕрдВрддрд░ 36.540476 рд╣реИ, рдЬреЛ рд▓рдЧрднрдЧ рд╡реЛрдЯ рдЗрдирд╛рдо рд░рд╛рд╢рд┐ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред

рдореЗрдирдиреЗрдЯ, рдХрд╛рд░реНрдбрд╛рдиреЛ-рдХреНрд▓реА 1.24.2, рдХрд╛рд░реНрдбрд╛рдиреЛ-рдбреАрдмреА-рд╕рд┐рдВрдХ 7.1.0

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

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

рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рднреНрд░рдорд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ withdrawal рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкреБрд░рд╕реНрдХрд╛рд░ рдЦрд╛рддреЗ рд╕реЗ рд╕рднреА рдирд┐рдХрд╛рд╕реА рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рд╕рднреА 7 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпреЗ рд╡реЛрдЯрд┐рдВрдЧ рдкреБрд░рд╕реНрдХрд╛рд░ рдЕрдм 'рдЦрдЬрд╛рдирд╛' рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╣реИрдВ

# SELECT treasury.amount
# FROM stake_address
# LEFT JOIN treasury ON treasury.addr_id = stake_address.id
# WHERE stake_address.view = 'stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0';
  amount
----------
 36540476
(1 row)

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпреЗ рд╡реЛрдЯрд┐рдВрдЧ рдкреБрд░рд╕реНрдХрд╛рд░ рдЕрдм 'рдЦрдЬрд╛рдирд╛' рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╣реИрдВ

~рдЙрдлрд╝, рдпрд╣ рдПрдХ рдЧрд▓рддреА рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред ~ рдЬрд╛рд╣рд┐рд░рд╛ рддреМрд░ рдкрд░ рдирд╣реАрдВред

рд╣рдореЗрдВ рдХрд┐рд╕реА рддрд░рд╣ рд╕реНрдкрд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ (рд╕реНрдХреАрдорд╛ рдФрд░/рдпрд╛ рд╕рдВрдмрдВрдзрд┐рдд рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдореЗрдВ) рдХрд┐ рдШрдЯрдирд╛рдУрдВ рдХреА рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рддрд╛рд▓рд┐рдХрд╛рдПрдВ рд╣реИрдВ рдЬреЛ рд╢реЗрд╖ рдЗрдирд╛рдо рдЦрд╛рддреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреА рд╣реИрдВ:

  • рдкреНрд░рддрд┐-рдпреБрдЧ рдкреВрд▓ рдкреБрд░рд╕реНрдХрд╛рд░
  • рдЦрд╛рддрд╛ рдирд┐рдХрд╛рд╕реА
  • рд╡рд┐рд╢реЗрд╖ рдПрдордЖрдИрдЖрд░ рдХрд╛рд░реНрдпрдХреНрд░рдоред рд╡рд┐рд╢реЗрд╖ рдПрдордЖрдИрдЖрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдПрдордЖрдИрдЖрд░ рд╕реЗрд░реНрдЯреНрд╕ рд╕реЗ рдЖрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдмреНрд▓реЙрдХ рд╕реАрдорд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реИрдВред

рддреЛ рдХреБрд▓ рд╢реЗрд╖ рд░рд╛рд╢рд┐ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢реНрди рд▓рд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдШрдЯрдирд╛рдУрдВ рдХрд╛ рд╕рдВрдШ рд▓реЗрдирд╛ рд╣реЛрдЧрд╛ред

рдПрдордЖрдИрдЖрд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рднрд┐рдиреНрди рдЙрдЪреНрдЪ рд╕реНрддрд░реАрдп рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рд▓реЗрдХрд┐рди рдЙрджреНрджреЗрд╢реНрдп рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдкрд░ рдкреЛрд╕реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ), рдЬрд┐рдирдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: рдЖрдИрдЯреАрдПрди рдХреЗ рдХрд╛рд░рдг рдкреБрд░рд╕реНрдХрд╛рд░, рдЬреАрддрдиреЗ рд╡рд╛рд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЯреНрд░реЗрдЬрд░реА рднреБрдЧрддрд╛рди, рдЙрддреНрдкреНрд░реЗрд░рдХ рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЯреНрд░реЗрдЬрд░реА рднреБрдЧрддрд╛рдиред

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

рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рднреНрд░рдорд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ withdrawal рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкреБрд░рд╕реНрдХрд╛рд░ рдЦрд╛рддреЗ рд╕реЗ рд╕рднреА рдирд┐рдХрд╛рд╕реА рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рд╛рдл рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рдЖрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рдореБрдЭреЗ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИред

рдкрд╣рд▓реЗ рд╣рдо рдПрдХ рджреГрд╢реНрдп рдмрдирд╛рддреЗ рд╣реИрдВ:

# create view reward_payment_view as
    select addr_id, amount, 'treasury' as source
    from treasury union select addr_id, amount, 'reward_epoch_' || epoch_no as source from reward ; 

рд╣рдо рдЗрд╕ рджреГрд╢реНрдп рдХреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреНрд╡реЗрд░реА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

# select stake_address.view, reward_payment_view.amount, reward_payment_view.source
    from reward_payment_view inner join stake_address on reward_payment_view.addr_id = stake_address.id
    where stake_address.view = 'stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0' ; 
                            view                             |   amount   |      source      
-------------------------------------------------------------+------------+------------------
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |   36540476 | treasury
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  373554942 | reward_epoch_226
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  381550960 | reward_epoch_222
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  394285344 | reward_epoch_225
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  394335813 | reward_epoch_223
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  437204214 | reward_epoch_236
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  442787046 | reward_epoch_233
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  450575175 | reward_epoch_238
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  463125272 | reward_epoch_228
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  481675128 | reward_epoch_224
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  495852458 | reward_epoch_227
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  571559879 | reward_epoch_234
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  599359585 | reward_epoch_232
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  612352961 | reward_epoch_237
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 |  658610556 | reward_epoch_231
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 | 1319746538 | reward_epoch_219
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 | 1342842199 | reward_epoch_218
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 | 1374758087 | reward_epoch_216
 stake1u9z07jwyrlyh57dsvhmmdlt555vpvwdrky0ykf4le4k7zuc3pvuy0 | 2428239213 | reward_epoch_220
(19 rows)

рдХреНрдпрд╛ рд╡рд╣ view рдЬрд┐рд╕реЗ рдореБрдЭреЗ db-sync рдореЗрдВ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╢рд┐рдк рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

@dmitrystas рдХреНрдпрд╛ рдЗрд╕реЗ рдЕрднреА рдмрдВрдж рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ, рдзрдиреНрдпрд╡рд╛рдж

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

cardanians picture cardanians  ┬╖  15рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

xdzurman picture xdzurman  ┬╖  12рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

xdzurman picture xdzurman  ┬╖  18рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

kzka90 picture kzka90  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

erikd picture erikd  ┬╖  10рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ