СПОСОБ И ОБОРУДОВАНИЕ ОБРАБОТКИ ОСНОВАННЫХ НА ЦЕПОЧКЕ БЛОКОВ ДАННЫХ
METHOD AND EQUIPMENT FOR PROCESSING CHAIN-BASED DATA UNITS

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
[0001] Настоящая заявка относится к области технологий обработки информации через Интернет и области компьютерных технологий, и, в частности, к способу и оборудованию обработки основанных на цепочке блоков данных.
УРОВЕНЬ ТЕХНИКИ
[0002] Технология блокчейн (цепочки блоков) также называется технологией распределенного реестра. В качестве технологии распределенной через Интернет базы данных, технология блокчейн характеризуется децентрализацией, прозрачностью, отсутствием фальсификаций и достоверностью. Сеть, построенная на основе технологии блокчейн, может упоминаться в качестве сети цепочки блоков (блокчейновой сети). Сеть цепочки блоков включает в себя сетевые узлы (которые могут также упоминаться в качестве узла цепочки блоков и просто упоминаются в качестве узла ниже). Каждый сетевой узел соответствует по меньшей мере одной цепочке блоков, и каждая цепочка блоков включает в себя по меньшей мере один блок.
[0003] При приеме данных, которые должны быть сохранены, сетевой узел широковещательно передает данные, которые должны быть сохранены, в другие сетевые узлы в сети цепочки блоков. Поэтому, каждый сетевой узел в сети цепочки блоков хранит все данные сети цепочки блоков, и данные, хранящиеся в одном сетевом узле, согласуются с данными, хранящимися в другом узле.
[0004] Данные в целом сохраняются в сети цепочки блоков в две стадии: на первой стадии узел в сети цепочки блоков принимает данные, которые должны быть сохранены, и широковещательно передает данные по всей сети цепочки блоков. Также, каждый узел в сети цепочки блоков принимает данные, которые должны быть сохранены. В данном случае, каждый сетевой узел в сети цепочки блоков записывает данные, которые должны быть сохранены, в кэш-память. На второй стадии сетевой узел в сети цепочки блоков, который получает разрешение на сохранение данных, которые должны быть сохранены, записывает данные, которые должны быть сохранены, в блоке при получении разрешения на запись и добавляет блок к существующей цепочке блоков. Можно заметить, что данные сохраняются в сети цепочки блоков посредством использования политики асинхронной записи.
[0005] Однако, в сценарии практической эксплуатации, когда служебные данные сохраняются в сети цепочки блоков посредством использования политики асинхронной записи, в целом, очередь объединения данных обслуживается на первой стадии, и данные, которые должны быть сохранены, последовательно записываются в очередь объединения данных на основе временной отметки данных, которые должны быть сохранены. Также, на второй стадии данные, которые должны быть сохранены в очереди объединения данных, записываются в блок на основе принципа первым прибыл - первым убыл.
[0006] Согласно некоторым исследованиям, в предыдущем способе присутствуют следующие проблемы сохранения данных в сети цепочки блоков: для служб с относительно более высокими приоритетами службы эффективность обработки служебных данных относительно низка, и следовательно эффективность обработки этих служб относительно низка.
РАСКРЫТИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
[0007] Ввиду вышеизложенного в вариантах реализации настоящей заявки предложены способ и оборудование обработки основанных на цепочке блоков данных для устранения проблемы существующей технологии, заключающейся в низкой эффективности обработки служебных данных с относительно более высоким приоритетом службы.
[0008] В одном варианте реализации настоящей заявки предложен способ обработки основанных на цепочке блоков данных, включающий в себя следующее: прием, посредством узла в сети цепочки блоков, по меньшей мере одного фрагмента служебных данных, сформированных в заданном временном периоде, причем служебные данные включают в себя помечающую информацию, используемую для представления собой приоритета обработки служебных данных; определение, посредством узла, когда новый блок сформирован, загруженности, которая соответствует помечающей информации, на основе предварительно определенного отношения привязки между помечающей информацией и загруженностью; получение, посредством узла, служебных данных, которые удовлетворяют загруженности и которые включают в себя помечающую информацию, из набора данных обработки на основе загруженности, причем принятые служебные данные сохранены в наборе данных обработки; и сохранение полученных служебных данных в блоке.
[0009] В одном варианте реализации настоящей заявки дополнительно предложено устройство обработки основанных на цепочке блоков данных, включающее в себя следующее: модуль приема, выполненный с возможностью принимать по меньшей мере один фрагмент служебных данных, сформированных в заданном временном периоде, причем служебные данные включают в себя помечающую информацию, используемую для представления собой приоритета обработки служебных данных; модуль определения, выполненный с возможностью определять, когда новый блок сформирован, загруженность, которая соответствует помечающей информации, на основе предварительно определенного отношения привязки между помечающей информацией и загруженностью; модуль получения, выполненный с возможностью получать служебные данные, которые удовлетворяют загруженности и которые включают в себя помечающую информацию, из набора данных обработки на основе загруженности, причем принятые служебные данные сохранены в наборе данных обработки; и модуль обработки, выполненный с возможностью сохранять полученные служебные данные в блоке.
[0010] По меньшей мере одно из предварительно описанных технических решений, используемых в вариантах реализации настоящей заявки, могут достигать следующих полезных технических результатов:
[0011] Загруженности определяются для служебных данных с разными приоритетами обработки, и при сохранении служебных данных в блоке получаются служебные данные с разными приоритетами обработки так, чтобы служебные данные с разными приоритетами обработки могли быть обработаны, правило существующей технологии обработки служебных данных, основанное исключительно на времени, можно было обойти, и проблема существующей технологии, заключающаяся в низкой эффективности обработки службы с относительно более высоким приоритетом службы, могла быть устранена. Решение, предложенное в вариантах реализации настоящей заявки, не только гарантирует эффективность обработки служебных данных с более высоким приоритетом обработки, но также и гарантирует эффективность обработки служебных данных с низким приоритетом обработки. Когда приоритет обработки удовлетворен, гибкость обработки служебных данных в цепочке блоков повышается и практическая ценность цепочки блоков в области техники служебных приложений также увеличивается.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0012] Сопроводительные чертежи, описанные здесь, предназначены для обеспечения дополнительного понимания настоящей заявки и составления части настоящей заявки. Изображенные варианты реализации настоящей заявки и их описания предназначены для описания настоящей заявки и не накладывают ограничений на настоящую заявку. На сопроводительных чертежах:
[0013] На Фиг.1 показана блок-схема последовательности операций, изображающая способ обработки основанных на цепочке блоков данных, согласно одному варианту реализации настоящей заявки;
[0014] На Фиг.2 показана принципиальная схема, изображающая набор данных обработки, который соответствует служебным данным с разными приоритетами обработки, согласно одному варианту реализации настоящей заявки;
[0015] На Фиг.3 показана схема, изображающая сценарий способа обработки основанных на цепочке блоков данных, согласно одному варианту реализации настоящей заявки; и
[0016] На Фиг.4 показана принципиальная структурная схема, изображающая устройство обработки основанных на цепочке блоков данных, согласно одному варианту реализации настоящей заявки.
ОПИСАНИЕ ВАРИАНТОВ РЕАЛИЗАЦИИ
[0017] Для прояснения целей, технических решений и преимуществ настоящей заявки далее ясно и всесторонне описаны технические решения настоящей заявки со ссылкой на частные варианты реализации и сопроводительные чертежи настоящей заявки. Очевидно, что описанные варианты реализации представляют собой всего лишь некоторые, а не все варианты реализации настоящей заявки. Все другие варианты реализации, полученные средним специалистом в уровне техники на основе вариантов реализации настоящей заявки без приложения творческих усилий, должны охватываться объемом защиты настоящей заявки.
[0018] Технические решения, предоставленные в вариантах реализации настоящей заявки, описываются подробно ниже со ссылкой на сопроводительные чертежи.
[0019] На Фиг.1 показана блок-схема последовательности операций, изображающая способ обработки основанных на цепочке блоков данных, согласно одному варианту реализации настоящей заявки. Способ может быть описан следующим образом. Исполнительным субъектом в данном варианте реализации настоящей заявки может быть любой служебный узел (который может также упоминаться в качестве узла цепочки блоков, и просто упоминается в качестве узла ниже) в сети цепочки блоков, и не ограничивается данным случаем. В данном варианте реализации настоящей заявки пример, в котором исполнительным субъектом является узел, используется для подробного описания.
[0020] Этап 101: узел в сети цепочки блоков принимает по меньшей мере один фрагмент служебных данных, сформированных в заданном временном периоде.
[0021] Служебные данные включают в себя помечающую информацию, используемую для представления собой приоритета обработки служебных данных.
[0022] В данном варианте реализации настоящей заявки для служебных данных, сформированных для разных служб, может быть установлен приоритет обработки, и помечающая информация, указывающая приоритет обработки служебных данных, добавляется к служебным данным при формировании служебных данных. Также, при приеме служебных данных приоритет обработки служебных данных может быть определен на основе помечающей информации. Приоритет обработки в данном документе может также упоминаться в качестве уровня обработки. Варианты реализации не ограничиваются данным случаем.
[0023] Кроме того, в данном варианте реализации настоящей заявки, приоритет обработки, установленный для служебных данных, может быть определен на основе типа службы или может быть определен на основе других факторов. Варианты реализации не ограничиваются данным случаем. Например, приоритеты обработки разных служебных данных, сформированных для одной и той же службы, могут быть одними и теми же или могут быть разными. Приоритеты обработки разных служебных данных, сформированных для разных служб, могут быть одними и теми же или могут быть разными.
[0024] Например, сначала, приоритеты служб могут быть определены для разных служб. В данном случае, приоритет службы соответствует приоритету обработки служебных данных, то есть более высокий приоритет службы указывает на более высокий приоритет обработки службы служебных данных, сформированных для этой службы. Затем, к служебным данным может быть добавлено одно поле. Это поле может упоминаться в качестве помечающей информации и используется для представления собой приоритета обработки служебных данных.
[0025] Предпочтительно, в техническом решении, предложенном в данном варианте реализации настоящей заявки, загруженности могут быть определены заранее для служебных данных с разными приоритетами обработки, и устанавливается отношение привязки между помечающей информацией, которая соответствует приоритету обработки, и определенной загруженностью.
[0026] Определяются приоритеты обработки служебных данных разных служб, и определяются отношения привязки между разными приоритетами обработки и помечающей информацией. Загруженности, которые соответствуют приоритетам обработки, определяются на основе приоритетов обработки. Устанавливаются отношения привязки между помечающей информацией, которая соответствует приоритетам обработки, и загруженностями.
[0027] Следует заметить, что загруженность в данном документе может быть коэффициентом использования средств обработки или может быть показателем задействования средств обработки. Варианты реализации не ограничиваются данным случаем.
[0028] Таблица 1 является таблицей отношения привязки между помечающей информацией и загруженностью.
Таблица 1
Приоритет обработки
Помечающая информация
Загруженность (в данном случае, коэффициент использования средств обработки используется в качестве примера для описания)
Первый приоритет
10000
30%
Второй приоритет
20000
20%
Третий приоритет
30000
10%
[0029] Как можно видеть из Таблицы 1, если помечающая информация, включенная в служебные данные, составляет 10000, то она указывает, что приоритет обработки служебных данных является первым приоритетом, и загруженность для приоритета обработки составляет 30%. Если помечающая информация, включенная в служебные данные, составляет 20000, то она указывает, что приоритет обработки служебных данных является вторым приоритетом, и загруженность для приоритета обработки составляет 20%. Если помечающая информация, включенная в служебные данные, составляет 30000, то она указывает, что приоритет обработки служебных данных является третьим приоритетом, и загруженность для приоритета обработки составляет 10%. Следует заметить что, коэффициент использования средств обработки, изображенный в Таблице 1, использует емкость хранения блока в цепочке блоков в качестве единицы измерения. Поэтому, объем служебных данных конкретной службы, которые должны быть сохранены в блоке, может быть получен посредством вычисления на основе загруженности и емкости хранения блока.
[0030] Предпочтительно, в одном варианте реализации настоящей заявки загруженности одними и теми же служебными данными могут быть разными в разные временные периоды. Таким образом, множество приоритетов обработки может быть установлено для одного и того же типа служебных данных. Также, загруженности служебными данными являются разными в разные временные периоды.
[0031] В данном случае, служебные данные A используются в качестве примера для описания. В данном варианте реализации настоящей заявки, предполагается, что служебные данные A принадлежат служебным данным, приоритет обработки которых является первым приоритетом. В данном случае, может быть задано, что загруженность служебными данными в любое время может занимать 30% емкости хранения блока. Кроме того, загруженность служебными данными A может регулироваться динамически.
[0032] Например, во временном периоде T1 задается, что служебные данные A принадлежат служебным данным, приоритет обработки которых является вторым приоритетом, и загруженность служебными данными A может занимать 30% емкости хранения блока. Во временном периоде T2 задается, что служебные данные A принадлежат служебным данным, приоритет обработки которых является первым приоритетом, и загруженность служебными данными A может занимать 50% емкости хранения блока. Во временном периоде T3 задается, что служебные данные A принадлежат служебным данным, приоритет обработки которых является третьим приоритетом, и загруженность служебными данными A может занимать 10% емкости хранения блока. Также, в данном варианте реализации настоящей заявки соответствие может быть дополнительно установлено заранее между временным периодом, помечающей информацией и загруженностью. Например, при формировании служебных данных определяется временной период, который соответствует времени формирования служебных данных, и помечающая информация, которая соответствует временному периоду, включается в служебные данные.
[0033] Обычно, поля в служебных данных включают в себя, но не ограничиваются этим, хеш-значение, номер версии, общедоступный ключ, подпись, хеш-значение блока, которому принадлежат служебные данные, временную отметку (то есть, время, когда узел обрабатывает служебные данные) и т.д. В данном случае, поля, включенные в служебные данные, описанные в данном варианте реализации настоящей заявки, включают в себя, но не ограничиваются тем, что изображено в Таблице 2. Конкретные атрибуты полей описаны в Таблице 2.
Таблица 2
Название поля
Описание атрибута
Хеш-значение
Указывает уникальный идентификатор каждого фрагмента служебных данных
Номер версии
Указывает идентификатор версии механизма формирования служебных данных
Общедоступный ключ
Указывает общедоступный ключ стороны инициирования транзакции
Подпись
Указывает информацию, полученную стороной инициирования службы посредством подписания с помощью секретного ключа, причем, если достоверность подписи подтверждается общедоступным ключом, то это указывает, что служба действительна
Служебная информация
Указывает конкретную служебную информацию, которая соответствует служебным данным, таким как движение денежных средств и изменение владения капиталом, которая записывается стороной инициирования транзакции
Хеш-значение блока, которому принадлежат служебные данные
Указывает хеш-значение блока, которому принадлежат служебные данные, если служебные данные включены с соблюдением согласованности; и указывает нулевое значение, если служебные данные не включены с соблюдением согласованности.
Временная отметка
Указывает время, когда служебные данные обрабатываются узлом (определено с точностью до миллисекунд)
Приоритет службы
Приоритеты обработки назначаются разным службам на основе атрибутов службы. Более высокий приоритет службы указывает более высокий приоритет обработки.
Помечающая информация
Используется для представления приоритета обработки служебных данных
…
…
[0034] Предпочтительно, в данном варианте реализации настоящей заявки, наборы данных обработки могут быть дополнительно приспособлены для служебных данных с разными приоритетами обработки на основе определенных приоритетов обработки. Также, при приеме служебных данных служебные данные могут быть сохранены по отдельности на основе помечающей информации, включенной в служебные данные. Таким образом, служебные данные, которые включают в себя одну и ту же помечающую информацию, сохраняются в одном и том же наборе данных обработки.
[0035] Следует заметить что, поскольку есть временной интервал между двумя смежными блоками в цепочке блоков, данный временной интервал может использоваться в качестве опорного условия для установки временного периода в данном варианте реализации настоящей заявки. Варианты реализации не ограничиваются данным случаем.
[0036] Предпочтительно, в данном варианте реализации настоящей заявки, когда узел принимает по меньшей мере один фрагмент служебных данных, сформированных в заданном временном периоде, способ дополнительно включает в себя следующее: определение набора данных обработки, который соответствует помечающей информации, на основе помечающей информации, включенной в служебные данные; и сохранение служебных данных в определенном наборе данных обработки.
[0037] На Фиг.2 показана принципиальная схема, изображающая набор данных обработки, который соответствует служебным данным с разными приоритетами обработки, согласно одному варианту реализации настоящей заявки. Как можно видеть на Фиг.2, содержится два набора данных обработки. Один набор данных обработки соответствует приоритету 1 обработки, то есть, служебные данные, которые соответствуют приоритету 1 обработки, сохраняются в этом наборе данных обработки. Другой набор данных обработки соответствует приоритету 2 обработки, то есть, служебные данные, которые соответствуют приоритету 2 обработки, сохраняются в этом наборе данных обработки.
[0038] Этап 102: Когда новый блок сформирован, узел определяет загруженность, которая соответствует помечающей информации, на основе предварительно определенного отношения привязки между помечающей информацией и загруженностью.
[0039] В данном варианте реализации настоящей заявки предварительно определенный отношение привязки между помечающей информацией и загруженностью может быть установлен следующим способом: определение приоритетов обработки служебных данных разных служб, и определение отношений привязки между разными приоритетами обработки и помечающей информацией; определение загруженностей, которые соответствуют приоритетам обработки, на основе приоритетов обработки; и установление отношений привязки между помечающей информацией, которая соответствует приоритетам обработки, и загруженностями.
[0040] Произвольно выбирается один фрагмент помечающей информации, и загруженность, которая соответствует помечающей информации, определяется и выбирается на основе предварительно определенного отношения привязки между помечающей информацией и загруженностью.
[0041] В данном случае, помечающая информация может быть выбрана на основе порядка приоритетов обработки, и может быть последовательно определена в порядке убывания приоритетов обработки. Дополнительно, загруженности, которые соответствуют разной помечающей информации, определяются в предыдущем способе.
[0042] Этап 103: узел получает служебные данные, которые удовлетворяют загруженности и которые включают в себя помечающую информацию, из набора данных обработки на основе загруженности.
[0043] В данном варианте реализации настоящей заявки объем служебных данных, которые включают в себя помечающую информацию, определяется на основе загруженности и емкости хранения блока.
[0044] Служебные данные этого объема, которые включают в себя помечающую информацию, получаются из набора данных обработки, причем принятые служебные данные сохранены в наборе данных обработки.
[0045] Например, для подлежащих обработке служебных данных загруженность, которая соответствует помечающей информации, может быть определена на основе предварительно определенного отношения привязки между помечающей информацией и загруженностью, например, загруженность равна p (в процентом виде). В данном случае, в данном варианте реализации настоящей заявки, определяется емкость хранения непосредственно формируемого блока. Например, если емкость равна x, то определяется, что объем служебных данных, которые соответствуют помечающей информации, которая должна быть сохранена в блоке, составляет xp.
[0046] Предпочтительно, когда новый блок сформирован, если принятые служебные данные соответствуют по меньшей мере двум разным приоритетам обработки, то узел определяет загруженности, которые соответствуют помечающей информации разных приоритетов обработки, причем суммарная величина загруженностей, которые соответствуют разной помечающей информации, меньше или равна емкости хранения блока.
[0047] Например, предполагается, что подлежащие обработке служебные данные соответствуют множеству приоритетов обработки (например, приоритету 1 обработки и приоритету 2 обработки). В данном случае, загруженность, которая соответствует помечающей информации, определяется по отдельности на основе предварительно определенного отношения привязки между помечающей информацией и загруженностью. Например, загруженность, которая соответствует помечающей информации приоритета 1 обработки, равна p (в процентом виде), а загруженность, которая соответствует помечающей информации приоритета 2 обработки, равна m (в процентом виде).
[0048] Для другого примера предполагается, что подлежащие обработке служебные данные соответствуют множеству служб (например, службе 1 и службе 2, причем приоритет обработки, который соответствует службе 1, является приоритетом 1 обработки, а приоритет обработки, который соответствует службе 2, является приоритетом 2 обработки). В данном случае, загруженность, которая соответствует помечающей информации, определяется по отдельности на основе предварительно определенного отношения привязки между помечающей информацией и загруженностью. Например, загруженность, которая соответствует помечающей информации службы 1, равна p (в процентом виде), а загруженность, которая соответствует помечающей информации службы 2, равна m (в процентом виде).
[0049] В данном варианте реализации настоящей заявки определяется емкость хранения непосредственно формируемого блока. Например, если емкость хранения равна x, то определяется, что объем служебных данных, которые соответствуют помечающей информации приоритета 1 обработки, который должен быть сохранен в блоке, равен xp, а объем служебных данных, которые соответствуют помечающей информации приоритета 2 обработки, который должен быть сохранен в блоке, равен xm. Здесь следует заметить, что суммарная величина xm и xp меньше или равна x.
[0050] В другом случае некоторые служебные данные имеют относительно низкие приоритеты обработки, и система не конфигурирует помечающую информацию для служебных данных, или конфигурирует помечающую информацию для служебных данных, но не определяет загруженность для служебных данных. Для данного случая, способ обработки может быть, но не ограничивается этим, следующим способом: когда служебные данные не включают в себя помечающую информацию, получение, на основе незанятой емкости блока, служебных данных, которые удовлетворяют незанятой емкости и не включают в себя помечающую информацию, из набора данных обработки; или когда загруженность, которая соответствует помечающей информации, является нулевой, получение, на основе незанятой емкости блока, служебных данных, которые удовлетворяют незанятой емкости и включают в себя помечающую информацию, из набора данных обработки.
[0051] Например, принятые служебные данные соответствуют множеству служб (например, службе 1, службе 2 и службе 3) или множеству приоритетов обработки. В данном случае, загруженность, которая соответствует помечающей информации, определяется по отдельности на основе предварительно определенного отношения привязки между помечающей информацией и загруженностью. Например, загруженность, которая соответствует помечающей информации службы 1, равна p (в процентом виде), загруженность, которая соответствует помечающей информации службы 2, равна m (в процентом виде), а загруженность, которая соответствует помечающей информации службы 3, является нулевой.
[0052] В данном варианте реализации настоящей заявки определяется емкость хранения непосредственно формируемого блока. Например, если емкость хранения равна x, то определяется, что объем служебных данных, которые соответствуют помечающей информации службы 1, который должен быть сохранен в блоке, равен xp, объем служебных данных, которые соответствуют помечающей информации службы 2, который должен быть сохранен в блоке, равен xm, и объем служебных данных, которые соответствуют помечающей информации службы 3, который должен быть сохранен в блоке, равен (1-p-m)×x.
[0053] Существует еще один случай в данном варианте реализации настоящей заявки, то есть, объем служебных данных, хранящихся в наборе данных обработки и которые соответствуют помечающей информации, меньше загруженности, что означает, что служебные данные, хранящиеся в наборе данных обработки, не могут удовлетворять требованию загруженности. Чтобы реализовать правильное использование ресурсов в данном случае, служебные данные получаются из набора данных обработки на основе объема служебных данных, хранящихся в наборе данных обработки. Таким образом, считываются все служебные данные, хранящиеся в наборе данных обработки.
[0054] В данном варианте реализации настоящей заявки служебные данные, которые удовлетворяют загруженности, получаются на основе загруженности и временной отметки служебных данных из набора данных обработки, который соответствует помечающей информации.
[0055] Служебные данные, которые удовлетворяют загруженности, получаются из набора данных обработки, который соответствует помечающей информации, на основе порядка соответствующего времени обработки служебных данных.
[0056] Этап 104: узел сохраняет полученные служебные данные в блоке.
[0057] В данном варианте реализации настоящей заявки полученные служебные данные последовательно сохраняются в блоке на основе порядка соответствующего времени обработки служебных данных.
[0058] Согласно техническому решению, предложенному в данном варианте реализации настоящей заявки, загруженности определяются для служебных данных с разными приоритетами обработки, и при сохранении служебных данных в блоке служебные данные с разными приоритетами обработки получаются так, чтобы служебные данные с разными приоритетами обработки могли быть обработаны, правило существующей технологии обработки служебных данных, основанное исключительно на времени, можно было обойти, и проблема существующей технологии, заключающаяся в низкой эффективности обработки службы с относительно более высоким приоритетом службы, могла быть устранена. Решение, предложенное в вариантах реализации настоящей заявки, не только гарантирует эффективность обработки служебных данных с более высоким приоритетом обработки, но также и гарантирует эффективность обработки служебных данных с низким приоритетом обработки. Когда приоритет обработки удовлетворен, гибкость обработки служебных данных в цепочке блоков повышается, и практическая ценность цепочки блоков в области техники служебных приложений также увеличивается.
[0059] На Фиг.3 показана схема, изображающая сценарий способа обработки основанных на цепочке блоков данных, согласно одному варианту реализации настоящей заявки. Как можно видеть на Фиг.3, при приеме служебных данных узел в сети цепочки блоков определяет помечающую информацию служебных данных. Когда новый блок сформирован, показатель задействования средств обработки служебных данных может быть определен на основе приоритета обработки службы служебных данных, и служебные данные, которые удовлетворяют показателю задействования средств обработки, получаются из кэш-памяти и сохраняются в блоке (как это реализуется на этапах 102 и 103 в предыдущем варианте реализации).
[0060] На Фиг.4 показана принципиальная структурная схема, изображающая устройство обработки основанных на цепочке блоков данных, согласно одному варианту реализации настоящей заявки. Устройство обработки данных включает в себя модуль 401 приема, модуль 402 определения, модуль 403 получения и модуль 404 обработки.
[0061] Модуль 401 приема выполнен с возможностью принимать по меньшей мере один фрагмент служебных данных, сформированных в заданном временном периоде, причем служебные данные включают в себя помечающую информацию, используемую для представления собой приоритета обработки служебных данных.
[0062] Модуль 402 определения выполнен с возможностью определять, когда новый блок сформирован, загруженность, которая соответствует помечающей информации, на основе предварительно определенного отношения привязки между помечающей информацией и загруженностью.
[0063] Модуль 403 получения выполнен с возможностью получать служебные данные, которые удовлетворяют загруженности и которые включают в себя помечающую информацию, из набора данных обработки на основе загруженности, причем принятые служебные данные сохранены в наборе данных обработки.
[0064] Модуль 404 обработки выполнен с возможностью сохранять полученные служебные данные в блоке.
[0065] В другом варианте реализации настоящей заявки устройство обработки данных дополнительно включает в себя модуль 405 установления.
[0066] Модуль 405 установления устанавливает предварительно определенный отношение привязки между помечающей информацией и загруженностью, что включает в себя следующее: определение приоритетов обработки служебных данных разных служб, и определение отношений привязки между разными приоритетами обработки и помечающей информацией; определение загруженностей, которые соответствуют приоритетам обработки, на основе приоритетов обработки; и установление отношений привязки между помечающей информацией, которая соответствует приоритетам обработки, и загруженностями.
[0067] В другом варианте реализации настоящей заявки загруженности одними и теми же служебными данными являются разными в разные временные периоды.
[0068] В другом варианте реализации настоящей заявки получение модулем 403 получения служебных данных, которые удовлетворяют загруженности и которые включают в себя помечающую информацию, из набора данных обработки на основе загруженности, включает в себя следующее: определение объема служебных данных, которые включают в себя помечающую информацию, на основе загруженности и емкости хранения блока; и получение служебных данных упомянутого объема, которые включают в себя помечающую информацию, из набора данных обработки.
[0069] В другом варианте реализации настоящей заявки получение модулем 403 получения служебных данных, которые удовлетворяют загруженности и которые включают в себя помечающую информацию, из набора данных обработки на основе загруженности включает в себя следующее: когда служебные данные не включают в себя помечающую информацию, получение, на основе незанятой емкости блока, служебных данных, которые удовлетворяют незанятой емкости и не включают в себя помечающую информацию, из набора данных обработки; или когда загруженность, которая соответствует помечающей информации, является нулевой, получение, на основе незанятой емкости блока, служебных данных, которые удовлетворяют незанятой емкости и включают в себя помечающую информацию, из набора данных обработки.
[0070] В другом варианте реализации настоящей заявки устройство обработки данных дополнительно включает в себя модуль 406 хранения.
[0071] Когда узел принимает по меньшей мере один фрагмент служебных данных, сформированных в заданном временном периоде, модуль 406 хранения определяет набор данных обработки, который соответствует помечающей информации, на основе помечающей информации, включенной в служебные данные; и сохраняет служебные данные в определенном наборе данных обработки.
[0072] В другом варианте реализации настоящей заявки получение модулем 403 получения служебных данных, которые удовлетворяют загруженности и которые включают в себя помечающую информацию, из набора данных обработки на основе загруженности включает в себя следующее: получение служебных данных, которые удовлетворяют загруженности, на основе загруженности и временной отметки служебных данных из набора данных обработки, который соответствует помечающей информации.
[0073] В другом варианте реализации настоящей заявки получение модулем 403 получения служебных данных, которые удовлетворяют загруженности и которые включают в себя помечающую информацию, из набора данных обработки на основе загруженности включает в себя следующее: когда объем служебных данных, хранящихся в наборе данных обработки, который соответствует помечающей информации, меньше загруженности, получение служебных данных из набора данных обработки на основе объема служебных данных, хранящихся в наборе данных обработки.
[0074] В другом варианте реализации настоящей заявки определение модулем 402 определения, когда новый блок сформирован, загруженности, которая соответствует помечающей информации, на основе предварительно определенного отношения привязки между помечающей информацией и загруженностью включает в себя следующее: когда новый блок сформирован, если принятые служебные данные соответствуют по меньшей мере двум разным приоритетам обработки, определение загруженностей, которые соответствуют помечающей информации разных приоритетов обработки, причем суммарная величина загруженностей, которые соответствуют разной помечающей информации, меньше или равна емкости хранения блока.
[0075] Следует заметить, что устройство обработки данных, предложенное в данном варианте реализации настоящей заявки, может быть реализовано посредством использования программного обеспечения или аппаратного обеспечения. Варианты реализации не ограничиваются данным случаем. Устройство обработки данных, описанное в данном варианте реализации настоящей заявки, определяет загруженности для служебных данных с разными приоритетами обработки и при сохранении служебных данных в блоке получает служебные данные с разными приоритетами обработки так, чтобы служебные данные с разными приоритетами обработки могли быть обработаны, правило существующей технологии обработки служебных данных, основанное исключительно на времени, можно было обойти, и проблема существующей технологии, заключающаяся в низкой эффективности обработки службы с относительно более высоким приоритетом службы, могла быть устранена. Решение, предложенное в вариантах реализации настоящей заявки, не только гарантирует эффективность обработки служебных данных с более высоким приоритетом обработки, но также и гарантирует эффективность обработки служебных данных с низким приоритетом обработки. Когда приоритет обработки удовлетворен, гибкость обработки служебных данных в цепочке блоков повышается, и практическая ценность цепочки блоков в области техники служебных приложений также увеличивается.
[0076] В 1990-ых можно было четко отличить, является ли техническое усовершенствование усовершенствованием аппаратного обеспечения (например, усовершенствование структуры схемы, такой как диод, транзистор или вентиль) или усовершенствованием программного обеспечения (усовершенствование процедуры способа). Однако, с развитием технологий текущие усовершенствования многих процедур способа могут считаться непосредственными усовершенствованиями структур схемы аппаратного обеспечения. Разработчик обычно программирует усовершенствованную процедуру способа в схему аппаратного обеспечения, чтобы получить соответствующую структуру схемы аппаратного обеспечения. Поэтому, процедура способа может быть усовершенствована посредством использования модуля средств аппаратного обеспечения. Например, программируемое логическое устройство (PLD) (например, программируемая вентильная матрица (FPGA)) является такой интегральной схемой, и логическая функция PLD определяется пользователем посредством программирования устройства. Разработчик осуществляет программирование, чтобы «встроить» цифровую систему в PLD, не требуя от производителя микросхемы разрабатывать и создавать специализированный для приложения кристалл с интегральными схемами. Кроме того, в настоящее время, вместо того, чтобы вручную изготавливать кристалл с интегральными схемами, такое программирование в основном реализуется посредством использования программного обеспечения «логического компилятора». Программное обеспечение логического компилятора подобно компилятору программного обеспечения, используемому для совершенствования и написания программы. Исходные коды необходимо писать на отдельно взятом языке программирования для компиляции. К такому языку относится язык описания аппаратных средств (HDL). Существует много языков HDL, в частности, Усовершенствованный Язык Булевого Выражения (ABEL), Язык Описания Аппаратных Средств Altera (AHDL), Confluence, Язык Программирования Корнелльского Университета (CUPL), HDCal, Язык Описания Аппаратных Средств Java (JHDL), Lava, Lola, MyHDL, PALASM и Язык Описания Аппаратных Средств Ruby (RHDL). Обычно используются Сверхвысокоскоростной Язык Описания Аппаратных Средств Интегральной Схемы (VHDL) и Verilog. Специалисту в данной области техники должно также быть понятно, что схема аппаратного обеспечения, которая реализует логическую процедуру способа, может быть с легкостью получена, как только процедура способа логически запрограммирована посредством использования нескольких описанных языков описания аппаратных средств и запрограммирована в интегральную схему.
[0077] Контроллер может быть реализован посредством использования любого подходящего способа. Например, контроллер может быть микропроцессором или процессором, или машиночитаемым носителем, на котором хранится машиночитаемый программный код (такой как программное обеспечение или встроенное микропрограммное обеспечение), который может быть исполнен микропроцессором или процессором, логическим элементом, вентилем, специализированной интегральной схемой (ASIC), контроллером с программируемой логикой или встроенным микропроцессором. Примеры контроллера включают в себя, но не ограничиваются этим, следующие микропроцессоры: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 и Silicon Labs C8051F320. Контроллер запоминающего устройства может также быть реализован в качестве части логики управления запоминающего устройства. Специалисту в данной области техники также известно, что, в дополнение к реализации контроллера посредством использования машиночитаемого программного кода, логическое программирование может быть выполнено на этапах способа, чтобы предоставить контроллеру возможность реализовать ту же самую функцию в виде логического элемента, вентиля, специализированной интегральной схемы, контроллера с программируемой логикой и встроенного микроконтроллера. Поэтому, контроллер может считаться компонентом аппаратного обеспечения, и устройство, выполненное с возможностью реализации различных функций в контроллере, может также считаться структурой в компоненте аппаратного обеспечения. Либо устройство, выполненное с возможностью реализации различных функций, может считаться даже как программным модулем, реализующим способ, так и структурой в компоненте аппаратного обеспечения.
[0078] Система, устройство, модуль или компонент, изображенные в предыдущих вариантах реализации, могут быть реализованы посредством использования компьютерной микросхемы или средства, или могут быть реализованы посредством использования изделия, имеющего некоторую функцию. Характерное устройство варианта реализации является компьютером. Компьютер может быть, например, персональным компьютером, ноутбуком, сотовым телефоном, телефоном с камерой, смартфоном, персональным цифровым секретарем, медиапроигрывателем, навигационным устройством, устройством электронной почты, игровой приставкой, планшетным компьютером или носимым устройством, или сочетанием любого из этих устройств.
[0079] Для простоты описания устройство выше описывается через разделение функций на различные модули. Конечно, когда реализуется настоящая заявка, функция каждого модуля может быть реализована в одном или более элементах программного обеспечения и/или аппаратного обеспечения.
[0080] Специалисту в данной области техники должно быть понятно, что вариант реализации настоящего раскрытия может быть выполнен в качестве способа, системы или компьютерного программного продукта. Поэтому, настоящее раскрытие может принимать форму вариантов реализации только в аппаратном обеспечении, вариантов реализации только в программном обеспечении, или вариантов реализации с объединением программного и аппаратного обеспечения. Кроме того, настоящее раскрытие может принимать форму компьютерного программного продукта, который реализуется на одном или более используемом компьютером носителе хранения данных (включающем в себя, но не ограничивающегося этим, запоминающее устройство на дисках, CD-ROM, оптическое запоминающее устройство и т.д.), которые включают в себя используемый компьютером программный код.
[0081] Настоящее раскрытие описывается со ссылкой на блок-схемы последовательностей операций и/или блок-схемы способа, устройства (системы) и компьютерный программный продукт на основе вариантов реализации настоящего раскрытия. Следует заметить, что инструкции компьютерной программы могут использоваться для реализации каждого процесса и/или каждого блока в блок-схемах последовательностей операций и/или блок-схемах и объединении процесса и/или блока в блок-схемах последовательностей операций и/или блок-схемах. Эти инструкции компьютерной программы могут предоставляться для компьютера общего назначения, специализированного компьютера, встроенного процессора или процессора другого программируемого устройства обработки данных, чтобы формировать машину так, чтобы инструкции, исполняемые компьютером или процессором другого программируемого устройства обработки данных, формировали устройство для реализации конкретной функции в одном или более процессах в блок-схемах последовательностей операций и/или в одном или более блоках в блок-схемах.
[0082] Эти инструкции компьютерной программы могут храниться в машиночитаемом запоминающем устройстве, которое может предписывать компьютеру или другому программируемому устройству обработки данных функционировать особым образом так, чтобы инструкции, хранящиеся в машиночитаемом запоминающем устройстве, формировали искусственный объект, который включает в себя устройство на основе инструкций. Устройство на основе инструкций реализует конкретную функцию в одном или более процессах в блок-схемах последовательностей операций и/или в одном или более блоках в блок-схемах.
[0083] Эти инструкции компьютерной программы могут быть загружены на компьютер или другое программируемое устройство обработки данных так, чтобы последовательность действий и этапов выполнялась на компьютере или другом программируемом устройстве, тем самым формируя реализуемую компьютером обработку. Поэтому, инструкции, исполняемые на компьютере или другом программируемом устройстве, обеспечивают этапы для реализации конкретной функции в одном или более процессах в блок-схемах последовательностей операций и/или в одном или более блоках в блок-схемах.
[0084] В характерном конфигурационном исполнении вычислительное устройство включает в себя один или более процессоров (CPU), один или более интерфейсов ввода-вывода, один или более сетевых интерфейсов, и одно или более запоминающих устройств.
[0085] Запоминающее устройство может включать в себя кратковременное запоминающее устройство, запоминающее устройство с произвольным доступом (RAM), запоминающее устройство долговременного хранения и/или другую фору, которые находятся в машиночитаемом носителе, например, постоянное запоминающее устройство (ROM) или флэш-память (RAM на основе флэш-памяти). Запоминающее устройство является примером машиночитаемого носителя.
[0086] Машиночитаемый носитель включает в себя постоянный, непостоянный, подвижный и неподвижный носители, которые могут хранить информацию посредством использования любого способа или технологии. Информацией может быть машиночитаемая инструкция, структура данных, программный модуль или другие данные. Примеры компьютерного носителя хранения данных включают в себя, но не ограничиваются этим, запоминающее устройство с фазовым переходом (PRAM), статическое запоминающее устройство с произвольным доступом (SRAM), динамическое запоминающее устройство с произвольным доступом (DRAM), другой тип запоминающего устройства с произвольным доступом (RAM), постоянное запоминающее устройство (ROM), электрически стираемое программируемое постоянное запоминающее устройство (EEPROM), флэш-память или другая технология хранения, постоянное запоминающее устройство на компактных дисках (CD-ROM), цифровой универсальный диск (DVD) или другое оптическое хранилище, кассетная магнитная лента, магнитная лента/запоминающее устройство на магнитных дисках или другое магнитное устройство хранения. Компьютерный носитель хранения может использоваться для хранения информации, доступной вычислительному устройству. На основе определения в настоящем описании машиночитаемый носитель не включает в себя переходный машиночитаемый носитель (переходные носители), такой как модулированный сигнал данных и несущая.
[0087] Следует дополнительно заметить, что термины «включать в себя», «содержать» или их любые другие разновидности предназначены для охватывания неисключительного вложения таким образом, что процесс, способ, промышленное изделие или устройство, которое включает в себя список элементов, не только включает в себя те элементы, но также и включает в себя другие элементы, которые явно не перечислены, или дополнительно включает в себя элементы, присущие такому процессу, способу, изделию или устройству. Без дополнительных ограничений элемент, которому предшествуют «включает в себя…», не исключает существование дополнительных идентичных элементов в процессе, способе, изделии или устройстве, которое включает в себя этот элемент.
[0088] Настоящая заявка может быть описана в общем контексте машиноисполняемых инструкций, исполняемых компьютером, например, в контексте программного модуля. В целом, программный модуль включает в себя подпрограмму, программу, объект, компонент, структуру данных и т.д., исполняющих конкретную задачу или реализующих конкретный абстрактный тип данных. Настоящая заявка может также быть реализована на практике в распределенных вычислительных окружениях. В распределенных вычислительных окружениях задачи выполняются удаленными устройствами обработки, соединенными через сеть связи. В распределенном вычислительном окружении программный модуль может быть расположен как в локальном, так и в удаленном компьютерном носителе хранения, включающем в себя устройства хранения.
[0089] Варианты реализации в описании настоящей заявки описываются постепенно. Для одних и тех же или схожих частей вариантов реализации могут быть сделаны ссылки на эти варианты реализации. Каждый вариант реализации сосредотачивается на отличиях от других вариантов реализации. В частности, вариант реализации системы в основном подобен варианту реализации способа, и поэтому, описывается кратко. Для связанных частей ссылки могут быть сделаны к связанным описаниям в варианте реализации способа.
[0090] Предыдущие варианты реализации являются вариантами реализации настоящей заявки и не предназначены ограничивать настоящую заявку. Специалист в данной области техники может произвести различные модификации и изменения в настоящей заявке. Любая модификация, эквивалентная замена или усовершенствование, выполненное без отступления от сущности и принципа действия настоящей заявки, должны охватываться объемом, определяемым формулой изобретения в настоящей заявке.