RU2015106007A - Система и способ выполнения очереди запросов в отношении цифровых объектов - Google Patents

Система и способ выполнения очереди запросов в отношении цифровых объектов Download PDF

Info

Publication number
RU2015106007A
RU2015106007A RU2015106007A RU2015106007A RU2015106007A RU 2015106007 A RU2015106007 A RU 2015106007A RU 2015106007 A RU2015106007 A RU 2015106007A RU 2015106007 A RU2015106007 A RU 2015106007A RU 2015106007 A RU2015106007 A RU 2015106007A
Authority
RU
Russia
Prior art keywords
request
task
subquery
server
subqueries
Prior art date
Application number
RU2015106007A
Other languages
English (en)
Other versions
RU2609089C2 (ru
Inventor
Денис Сергеевич Кутуков
Петр Михайлович Резников
Original Assignee
Общество С Ограниченной Ответственностью "Яндекс"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество С Ограниченной Ответственностью "Яндекс" filed Critical Общество С Ограниченной Ответственностью "Яндекс"
Priority to RU2015106007A priority Critical patent/RU2609089C2/ru
Priority to PCT/IB2015/054607 priority patent/WO2016135537A1/en
Publication of RU2015106007A publication Critical patent/RU2015106007A/ru
Application granted granted Critical
Publication of RU2609089C2 publication Critical patent/RU2609089C2/ru

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

1. Исполняемый на сервере способ выполнения очереди запросов в отношении цифровых объектов, включающий:получение с клиентского устройства по сети передачи данных первого запроса на выполнение первой задачи, первый запрос на выполнение первой задачи, включающий в себяпервую задачу иуказание на цифровые объекты из первого множества цифровых объектов, связанных с первой задачей;разделение первого запроса на множество подзапросов, каждый из подзапросов относящийся к части цифровых объектов из первого множества цифровых объектов, связанных с первым запросом, каждый из подзапросов, включающий в себя:информацию о первой задаче иуказание на цифровые объекты из соответствующей части цифровых объектов;расчет уникального идентификатора подзапроса, причем уникальный идентификатор подзапроса основывается по меньшей мере частично на содержимом соответствующего подзапроса;сохранение подзапросов в хранилище подзапросов совместно с соответствующими им идентификаторами подзапросов;получение с клиентского устройства по сети передачи данных второго запроса на выполнение второй задачи, второй запрос на выполнение второй задачи, включающий в себявторую задачу иуказание на по меньшей мере один цифровой объект, связанный со вторым запросом;основываясь на уникальных идентификаторах подзапросов, хранящихся в хранилище подзапросов, определение по меньшей мере одного подзапроса из множества подзапросов, содержащего указания на тот по меньшей мере один цифровой объект, указание на который также содержится во втором запросе на выполнение второй задачи;обращение к указанному по меньшей мере одному подзапросу из множества

Claims (28)

1. Исполняемый на сервере способ выполнения очереди запросов в отношении цифровых объектов, включающий:
получение с клиентского устройства по сети передачи данных первого запроса на выполнение первой задачи, первый запрос на выполнение первой задачи, включающий в себя
первую задачу и
указание на цифровые объекты из первого множества цифровых объектов, связанных с первой задачей;
разделение первого запроса на множество подзапросов, каждый из подзапросов относящийся к части цифровых объектов из первого множества цифровых объектов, связанных с первым запросом, каждый из подзапросов, включающий в себя:
информацию о первой задаче и
указание на цифровые объекты из соответствующей части цифровых объектов;
расчет уникального идентификатора подзапроса, причем уникальный идентификатор подзапроса основывается по меньшей мере частично на содержимом соответствующего подзапроса;
сохранение подзапросов в хранилище подзапросов совместно с соответствующими им идентификаторами подзапросов;
получение с клиентского устройства по сети передачи данных второго запроса на выполнение второй задачи, второй запрос на выполнение второй задачи, включающий в себя
вторую задачу и
указание на по меньшей мере один цифровой объект, связанный со вторым запросом;
основываясь на уникальных идентификаторах подзапросов, хранящихся в хранилище подзапросов, определение по меньшей мере одного подзапроса из множества подзапросов, содержащего указания на тот по меньшей мере один цифровой объект, указание на который также содержится во втором запросе на выполнение второй задачи;
обращение к указанному по меньшей мере одному подзапросу из множества подзапросов, и удаление из этого подзапроса указания на тот по меньшей мере один цифровой объект, указание на который также содержится во втором запросе на выполнение второй задачи;
выполнение подзапросов в отношении цифровых объектов, указания на которые содержатся в подзапросах после удаления из по меньшей мере одного подзапроса указанного по меньшей мере одного цифрового объекта.
2. Способ по п. 1, дополнительно включающий в себя выполнение второго запроса.
3. Способ по п. 2, в котором выполнение второго запроса осуществляется параллельно с выполнением по меньшей мере одного подзапроса.
4. Способ по п. 2, в котором выполнение второго запроса осуществляется после выполнения по меньшей мере одного подзапроса.
5. Способ по п. 1, в котором разделение первого запроса на множество подзапросов включает в себя определение сервером количества цифровых объектов в первом множестве цифровых объектов, и в котором разделение первого запроса на множество подзапросов осуществляется в случае, когда количество цифровых объектов в первом множестве цифровых объектов превышает пороговое значение.
6. Способ по п. 1, в котором расчет уникального идентификатора подзапроса осуществляется с использованием алгоритма хеширования.
7. Способ по п. 6, в котором определение по меньшей мере одного подзапроса из множества подзапросов, содержащего указания на тот по меньшей мере один цифровой объект, указание на который также содержится во втором запросе на выполнение второй задачи, осуществляется с использованием алгоритма вероятностной структуры данных.
8. Способ по п. 7, в котором алгоритм вероятностной структуры данных является фильтром Блума.
9. Способ по п. 1, в котором, в ответ на получение сервером с клиентского устройства третьего запроса на выполнение третьей задачи, сервер осуществляет блокировку исполнения третьего запроса на выполнение третьей задачи.
10. Способ по п. 9, в котором сервер, после выполнения подзапросов в отношении цифровых объектов из первого множества цифровых объектов, осуществляет разблокировку исполнения третьего запроса на выполнение третьей задачи.
11. Способ по п. 2, в котором, в ответ на получение сервером с клиентского устройства третьего запроса на выполнение третьей задачи, сервер осуществляет блокировку исполнения третьего запроса на выполнение третьей задачи, и в котором сервер, после выполнения второго запроса в отношении цифровых объектов, осуществляет разблокировку исполнения третьего запроса на выполнение третьей задачи.
12. Способ по п. 1, в котором цифровые объекты являются сообщениями электронной почты.
13. Способ по п. 1, дополнительно включающий приступание к последовательному исполнению сервером подзапросов до получения сервером с клиентского устройства по сети передачи данных второго запроса на выполнение второй задачи.
14. Способ по любому из пп. 1 - 13, в котором сервер является множеством серверов.
15. Сервер, включающий в себя процессор, в котором конфигурация процессора настроена таким образом, чтобы сервер мог осуществлять:
получение с клиентского устройства по сети передачи данных первого запроса на выполнение первой задачи, первый запрос на выполнение первой задачи, включающий в себя
первую задачу и
указание на цифровые объекты из первого множества цифровых объектов, связанных с первой задачей;
разделение первого запроса на множество подзапросов, каждый из подзапросов относящийся к части цифровых объектов из первого множества цифровых объектов, связанных с первым запросом, каждый из подзапросов, включающий в себя:
информацию о первой задаче и
указание на цифровые объекты из соответствующей части цифровых объектов;
расчет уникального идентификатора подзапроса, причем уникальный идентификатор подзапроса основывается по меньшей мере частично на содержимом соответствующего подзапроса;
сохранение подзапросов в хранилище подзапросов совместно с соответствующими им идентификаторами подзапросов;
получение с клиентского устройства по сети передачи данных второго запроса на выполнение второй задачи, второй запрос на выполнение второй задачи, включающий в себя
вторую задачу и
указание на по меньшей мере один цифровой объект, связанный со вторым запросом;
основываясь на уникальных идентификаторах подзапросов, хранящихся в хранилище подзапросов, определение по меньшей мере одного подзапроса из множества подзапросов, содержащего указания на тот по меньшей мере один цифровой объект, указание на который также содержится во втором запросе на выполнение второй задачи;
обращение к указанному по меньшей мере одному подзапросу из множества подзапросов, и удаление из этого подзапроса указания на тот по меньшей мере один цифровой объект, указание на который также содержится во втором запросе на выполнение второй задачи;
выполнение подзапросов в отношении цифровых объектов, указания на которые содержатся в подзапросах после удаления из по меньшей мере одного подзапроса указанного по меньшей мере одного цифрового объекта.
16. Сервер по п. 15, в котором конфигурация процессора настроена таким образом, чтобы сервер мог дополнительно осуществлять выполнение второго запроса.
17. Сервер по п. 16, в котором выполнение второго запроса осуществляется параллельно с выполнением по меньшей мере одного подзапроса.
18. Сервер по п. 16, в котором выполнение второго запроса осуществляется после выполнения по меньшей мере одного подзапроса.
19. Сервер по п. 15, в котором разделение первого запроса на множество подзапросов включает в себя определение сервером количества цифровых объектов в первом множестве цифровых объектов, и в котором разделение первого запроса на множество подзапросов осуществляется в случае, когда количество цифровых объектов в первом множестве цифровых объектов превышает пороговое значение.
20. Сервер по п. 15, в котором расчет уникального идентификатора подзапроса осуществляется с использованием алгоритма хеширования.
21. Сервер по п. 20, в котором определение по меньшей мере одного подзапроса из множества подзапросов, содержащего указания на тот по меньшей мере один
цифровой объект, указание на который также содержится во втором запросе на выполнение второй задачи, осуществляется с использованием алгоритма вероятностной структуры данных.
22. Сервер по п. 21, в котором алгоритм вероятностной структуры данных является фильтром Блума.
23. Сервер по п. 15, в котором конфигурация процессора настроена таким образом, чтобы сервер, в ответ на получение сервером с клиентского устройства третьего запроса на выполнение третьей задачи, мог дополнительно осуществлять блокировку исполнения третьего запроса на выполнение третьей задачи.
24. Сервер по п. 23, в котором конфигурация процессора настроена таким образом, чтобы сервер, после выполнения подзапросов в отношении цифровых объектов из первого множества цифровых объектов, мог дополнительно осуществлять разблокировку исполнения третьего запроса на выполнение третьей задачи.
25. Сервер по п. 16, в котором конфигурация процессора настроена таким образом, чтобы сервер, в ответ на получение сервером с клиентского устройства третьего запроса на выполнение третьей задачи, мог дополнительно осуществлять блокировку исполнения третьего запроса на выполнение третьей задачи, и, после выполнения второго запроса в отношении цифровых объектов, мог дополнительно осуществлять разблокировку исполнения третьего запроса на выполнение третьей задачи.
26. Сервер по п. 15, в котором цифровые объекты являются сообщениями электронной почты.
27. Сервер по п. 15, в котором конфигурация процессора настроена таким образом, чтобы сервер мог дополнительно осуществлять приступание к последовательному исполнению сервером подзапросов до получения сервером с клиентского устройства по сети передачи данных второго запроса на выполнение второй задачи.
28. Сервер по любому из пп. 15-27, реализованный как множество серверов.
RU2015106007A 2015-02-24 2015-02-24 Система и способ выполнения очереди запросов в отношении цифровых объектов RU2609089C2 (ru)

Priority Applications (2)

Application Number Priority Date Filing Date Title
RU2015106007A RU2609089C2 (ru) 2015-02-24 2015-02-24 Система и способ выполнения очереди запросов в отношении цифровых объектов
PCT/IB2015/054607 WO2016135537A1 (en) 2015-02-24 2015-06-18 System for and method of executing the request queue related to digital objects

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2015106007A RU2609089C2 (ru) 2015-02-24 2015-02-24 Система и способ выполнения очереди запросов в отношении цифровых объектов

Publications (2)

Publication Number Publication Date
RU2015106007A true RU2015106007A (ru) 2016-09-20
RU2609089C2 RU2609089C2 (ru) 2017-01-30

Family

ID=56787959

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2015106007A RU2609089C2 (ru) 2015-02-24 2015-02-24 Система и способ выполнения очереди запросов в отношении цифровых объектов

Country Status (2)

Country Link
RU (1) RU2609089C2 (ru)
WO (1) WO2016135537A1 (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230117461A1 (en) * 2021-10-15 2023-04-20 Oracle International Corporation Method and system to implement error handling with fine-grained sql hints

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5278984A (en) * 1990-12-19 1994-01-11 Bull Hn Information Systems Inc. Method for managing requests by specifying time intervals for transmitting a minimum number of messages for specific destinations and priority levels
GB2334116A (en) * 1998-02-04 1999-08-11 Ibm Scheduling and dispatching queued client requests within a server computer
US7702817B2 (en) * 2003-10-28 2010-04-20 Microsoft Corporation Wireless network access technologies for retrieving a virtual resource via a plurality of wireless network interfaces
US7353227B2 (en) * 2004-07-23 2008-04-01 Sap Aktiengesellschaft Conflict resolution engine
WO2007040648A1 (en) * 2005-09-29 2007-04-12 Teamon Systems, Inc. Email server for processing a threshold number of email jobs for a given user and related methods
US7958200B2 (en) * 2007-08-14 2011-06-07 International Business Machines Corporation Methods, computer program products, and apparatuses for providing remote client access to exported file systems
US7991948B2 (en) * 2008-01-30 2011-08-02 International Business Machines Corporation Optimizing execution of I/O requests for a disk drive in a computing system
EP2096564B1 (en) * 2008-02-29 2018-08-08 Euroclear SA/NV Improvements relating to handling and processing of massive numbers of processing instructions in real time
US9043401B2 (en) * 2009-10-08 2015-05-26 Ebay Inc. Systems and methods to process a request received at an application program interface
US20140181203A1 (en) * 2011-06-15 2014-06-26 Telefonaktiebolaget L M Ericsson (Publ) Methods and arrangement for dispatching requests
RU2469388C1 (ru) * 2011-09-19 2012-12-10 Российская Федерация, от имени которой выступает Государственная корпорация по атомной энергии "Росатом" - Госкорпорация "Росатом" Способ обращения к данным, хранимым в параллельной файловой системе, с иерархической организацией памяти
US8762362B1 (en) * 2011-10-21 2014-06-24 Applied Micro Circuits Corporation System and method for updating a data structure
EP2757491A1 (en) * 2013-01-17 2014-07-23 Box, Inc. Conflict resolution, retry condition management, and handling of problem files for the synchronization client to a cloud-based platform
WO2014132246A1 (en) * 2013-02-28 2014-09-04 Safend Ltd. System and method for conflict-free cloud storage encryption

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230117461A1 (en) * 2021-10-15 2023-04-20 Oracle International Corporation Method and system to implement error handling with fine-grained sql hints

Also Published As

Publication number Publication date
RU2609089C2 (ru) 2017-01-30
WO2016135537A1 (en) 2016-09-01

Similar Documents

Publication Publication Date Title
US10002178B2 (en) Storage cluster data shifting
EP3314477B1 (en) Systems and methods for parallelizing hash-based operators in smp databases
JP2014524090A5 (ru)
CN105426408B (zh) 一种多索引的数据处理方法及装置
JP2013516008A5 (ru)
JP2016515228A5 (ru)
JP2016536667A5 (ru)
US8620924B2 (en) Refreshing a full-text search index in a partitioned database
JP2018503154A5 (ru)
JP2015535115A5 (ru)
JP2020535559A5 (ru)
US20160323385A1 (en) Distributed Data Storage Method, Apparatus, and System
JP2017539034A5 (ru)
RU2017140969A (ru) Способ и система создания параметра качества прогноза для прогностической модели, выполняемой в алгоритме машинного обучения
JP2015528603A5 (ru)
US9389909B1 (en) Prioritized execution of plans for obtaining and/or processing data
JP2017504874A5 (ru)
RU2014108995A (ru) Восстановление после сбоя кластерного клиента
JP2015521310A5 (ru)
JP2014512608A5 (ru)
US9141677B2 (en) Apparatus and method for arranging query
PH12018501449A1 (en) Data storage and service processing method and apparatus
US20150234883A1 (en) Method and system for retrieving real-time information
JP2019505894A5 (ru)
CN104572785B (zh) 一种分布式创建索引的方法和装置