Коллекции таблиц (документов) в MongoDB, используемых в контрактах приложения Голос - коллекции контракта golos.charge
Уважаемые пользователи!
Общую информацию о структуре таблиц в MongoDB вы можете найти в постах:
- Общее о структуре таблиц в MongoDB
- Коллекции таблиц (документов) в MongoDB, используемых в системных контрактах
Мы продолжаем описывать базу данных. В настоящей публикации предоставляем вам коллекции контракта golos.charge.
Далее, в следующих постах, будет рассмотрена коллекция таблиц (документов) в MongoDB, используемых в контрактах приложения Голос, выстроенная по следующей структуре:
- Коллекции контракта golos.ctrl;
- Коллекции контракта golos.publication;
- Коллекции контракта golos.vesting.
Коллекции контракта golos.charge
balances
Коллекция BALANCES содержит документы (таблицы) с данными о состоянии батареек, выделенных пользователям.
Пример документа:
{
"_id" : ObjectId("5cb5783b710a09490e7e45bd"),
"charge_symbol" : NumberDecimal("91600047785729"),
"token_code" : "GOLOS",
"charge_id" : NumberDecimal("1"),
"last_update" : NumberDecimal("1577837382000000"),
"value" : NumberLong(7982),
"_SERVICE_" : { ... }
}
Параметры
charge_symbol
— символ токена батарейки;token_code
— код токена, имеющего привязку к батарейкеcharge_id
;charge_id
— идентификатор батарейки;last_update
— время последнего обращения к батарейке;value
— значение заряда батарейки.
restorers
Коллекция RESTORERS содержит документы с описанием функций (математических выражений), по которым происходит восстановление ресурсов батареек.
Пример документа:
{
"_id" : ObjectId("5cb5783b710a09490e7e450c"),
"charge_symbol" : NumberDecimal("91600047785729"),
"token_code" : "GOLOS",
"charge_id" : NumberDecimal("1"),
"func" : {
"varssize" : NumberDecimal("3"),
"operators" : [
NumberDecimal("0"),
NumberDecimal("0"),
NumberDecimal("4"),
NumberDecimal("3")
],
"values" : [
{
"kind" : NumberDecimal("1"),
"idx" : NumberDecimal("1")
},
{
"kind" : NumberDecimal("0"),
"idx" : NumberDecimal("1")
}
],
"nums" : [
NumberLong(2048000000),
NumberLong(614400)
],
"consts" : [ ]
},
"max_prev" : NumberLong("922337203685477"),
"max_vesting" : NumberLong("922337203685477"),
"max_elapsed" : NumberLong("922337203685477"),
"_SERVICE_" : { ... }
}
Параметры
charge_symbol
— символ токена батарейки;token_code
— код токена, имеющего привязку к батарейкеcharge_id
;charge_id
— идентификатор батарейки;(object) func
— функция, задающая алгоритм восстановления ресурса батарейки:varssize
— математическое выражение:(array) operators
— массив операторов, определяющий порядок выполнения операций;(array) values
— массив применяемых значений переменных и констант к операциям; значения выбираются по индексам из массивовnums
иconsts
;(array) nums
— массив переменных, используемых в операциях;(array) consts
— массив констант, используемых в операциях;
max_prev
— максимально допустимое значение предыдущего ресурса батарейки;max_vesting
— максимально возможное значение вестинга, которое может быть израсходовано функцией в качестве аргумента в процессе восстановления ресурса батарейки;max_elapsed
— максимально допустимый период времени с момента предыдущего обращения к батарейке.
Полное описание вы можете найти на гитхабе.
Cерия статей, раскрывающих идею и принципы функционирования блокчейна CyberWay и приложения Голос:
- Ответы на вопросы о CyberWay часть 4
- Ответы на вопросы о CyberWay. Часть 3
- Ответы на вопросы о CyberWay. Часть 2
- Ответы на вопросы о CyberWay. Часть 1
- Golos.io: Адаптация к блокчейну CyberWay
- Основные положения CyberWay
- CyberWay: предпосылки создания платформы. Основные отличия от EOS
- Разработка новой блокчейн-платформы CyberWay. Дорожная карта проекта
- Функционирование смарт-контрактов приложения Голос на платформе БЧ CyberWay
- Техническая реализация bandwidth на платформе CyberWay
- Testnet: Экспериментальная версия
- Кошелек golos_wallet для Bittrex на платформе CyberWay
- Общее о структуре таблиц в MongoDB
- Коллекции таблиц (документов) в MongoDB, используемых в системных контрактах
Каналы коммуникации с Golos•Core
- https://t.me/goloscoretc (решение технических вопросов, связанных с работой блокчейн, нод, api и др.)
- https://t.me/joinchat/BLwf_A118xQ57nsM1Q4MPA (канал для вноса предложений от комьюнити, обсуждение перехода на кодовую базу EOS)
- https://t.me/golos_tools (решение вопросов по различным интерфейсам и дополнительным инструментам, создаваемым Golos•Core)
- https://t.me/goloscore_analytics (решение вопросов по работе экономики блокчейн, статистическим экономическим данным, аналитике данных)
- https://t.me/goloscoretech (новостной канал, с актуальной информацией от Golos•Core)
Мы будем очень рады, если вы поддержите делегата @goloscore. Заходите на страничку https://golos.io/~witnesses голосуйте за делегата Golos•Core!
Спасибо за внимание и хорошего дня!
С уважением,
Команда Golos•Core: @andreypf, @korpusenko, @maslenitsa, @muhazokotuha, @zxcat, @annaeq, @anazarov79, @kaynarov, @s-medvedev, @eugin, @dedbaraded, @jimak.