KR20090054424A - 관계형 데이터베이스 관리 시스템 작업 부하 매니저 - Google Patents

관계형 데이터베이스 관리 시스템 작업 부하 매니저 Download PDF

Info

Publication number
KR20090054424A
KR20090054424A KR1020097000863A KR20097000863A KR20090054424A KR 20090054424 A KR20090054424 A KR 20090054424A KR 1020097000863 A KR1020097000863 A KR 1020097000863A KR 20097000863 A KR20097000863 A KR 20097000863A KR 20090054424 A KR20090054424 A KR 20090054424A
Authority
KR
South Korea
Prior art keywords
relational database
query
execution
queries
execution query
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
KR1020097000863A
Other languages
English (en)
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 데이탈레그로, 인코포레이티드
Publication of KR20090054424A publication Critical patent/KR20090054424A/ko
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/217Database tuning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

관계형 데이터베이스 작업 부하 매니저는 관계형 데이터베이스 관리 시스템(RDBMS) 내에서 실행하는 쿼리에 할당된 처리 우선 순위를 동적으로 할당하기 위하여 제공된다. 작업 부하 매니저는 실행 쿼리 프로세스 스레드를 모니터링하며 설정된 시간 구간에서 각 실행 쿼리에 할당된 처리 우선 순위를 감소시킨다. 관계형 데이터베이스 쿼리를 관리하는 이와 같은 자동화된 방법은 복잡한 설정이나 관리를 필요로 하지 않으면서 혼합 데이터베이스 작업 부하 내에서 단기 실행 쿼리가 상대적으로 신속함을 유지하게 한다.

Description

관계형 데이터베이스 관리 시스템 작업 부하 매니저{WORKLOAD MANAGER FOR RELATIONAL DATABASE MANAGEMENT SYSTEMS}
본 발명은 2006년 6월 26일 출원되고 본 명세서에 참조로서 편입되는 미국 가특허출원 제60/816,910호의 우선권을 주장한다.
[기술분야]
본 발명은 관계형 데이터베이스 관리 시스템 분야에 관한 것이며, 더욱 상세하게는 관계형 데이터베이스 관리 시스템의 작업 부하 관리 시스템에 관한 것이다.
관계형 데이터베이스 관리 시스템(RDBMS, relational database management system)은 일반적으로 다수의 동시 접속 및 쿼리가 처리를 위하여 독립적인 사용자에 의해 제출되는 것을 허용한다. 이러한 다중 작업은 RDBMS의 작업 부하를 형성한다. 이러한 작업 부하가 증가함에 따라, 일반적으로 단순한 단기 쿼리 및 처리 시간이 소요되는 복잡한 장기 쿼리의 혼합을 포함할 것이다. 이러한 쿼리를 제출하는 사용자는 서로의 활동을 알지 못한다. 따라서, 이러한 혼합된 작업 부하 내에서 처리 시간이 소요되는 복잡한 장기 실행 쿼리 뿐만 아니라 간단한 단기 실행 쿼리에 대한 여러 가지 제출이 있을 수 있다.
단기 실행 쿼리(short executing query)는 개별적으로 실행될 때 상대적으로 짧은 시간에 완료하는 매우 간단한 동작으로서 설명될 수 있다. 장기 실행 쿼리(long executing query)는 완료를 위하여 많은 양의 데이터를 모아서 그룹핑하여야만 하는 쿼리로서 설명될 수 있다. 완료 시간에서의 차이는 단기 실행 쿼리에 대하여 1초 이하이고, 장기 실행 쿼리에 대하여 수분 내지 수시간일 수 있다.
작업 부하 관리가 없으면, 모든 쿼리는 동일한 처리 우선 순위를 제공받는다. 동시 쿼리의 수가 증가함에 따라, 각 개별 쿼리에 대한 성능은 거의 선형으로 감소한다. 예를 들어, 동시에 실행하는 2개의 쿼리는 각 쿼리가 개별적으로 실행하는 한, 거의 2배가 소요될 것이다. 유사하게, 동시에 실행하는 4개의 쿼리는 개별적으로 실행하는 한 대략 4배의 시간으로 완료할 것이다. 이러한 성능 곡선은 단기 실행 쿼리가 빨리 처리될 것이라고 예측하는 최종 사용자에게는 받아들여지지 않는다.
본 발명은 신속하게 실행하는 것으로 예상되는 쿼리가 처리 리소스의 우선 순위를 공급받고 이에 따라 가능한 한 항상 신속함을 유지하도록 복잡한 구성 없이 관계형 데이터베이스 관리 시스템 내에서 동시 작업 부하의 자동화된 관리를 제공한다. 본 명세서에서 설명되는 관계형 데이터베이스 작업 부하 매니저는 컴퓨팅 시스템 내에서 처리 우선 순위를 자동으로 조정함으로써 쿼리 종류의 혼합된 작업 부하 내에서 이와 같이 예측되는 신속한 쿼리의 신속한 완료를 유지한다. 결과에 따른 관계형 데이터베이스 시스템은 매우 높은 부하 조건에서도 성능을 사용자의 예측에 자동으로 일치시킨다.
본 발명의 일 실시예에 따르면, 관계형 데이터베이스 작업 부하를 관리하는 방법이 제공된다. 본 방법은 관계형 데이터베이스 시스템에서 실행 쿼리를 모니터링하는 단계 및 설정된 시간 구간에서 각 실행 쿼리에 할당된 우선 순위를 감소시키는 단계를 포함한다.
본 발명의 다른 실시예에 따르면, 관계형 데이터베이스 작업 부하 매니저가 제공된다. 상기 관계형 데이터베이스 작업 부하 매니저는 관계형 데이터베이스 시스템에서 실행 쿼리를 모니터링하고 설정된 시간 구간에서 각 실행 쿼리에 할당된 우선 순위를 감소시키도록 구성된 처리 시스템을 포함한다.
본 발명의 다른 실시예에 따르면, 관계형 데이터베이스 작업 부하 매니저에서 처리 시스템에 의해 실행가능한 명령어를 포함하는 기계 판독 가능한 매체가 제공된다. 상기 명령어는 관계형 데이터베이스 시스템에서 실행 쿼리를 모니터링하는 단계 및 설정된 시간 구간에서 각 실행 쿼리에 할당된 우선 순위를 감소시키는 단계를 포함한다.
본 발명에 대한 전술한 개요는 본 발명의 본질이 신속하게 이해될 수 있도록 제공되었다. 본 발명의 바람직한 실시예에 대한 더욱 상세하고 완전한 이해는 관련 도면과 함께 이어지는 본 발명의 상세한 설명을 참조하여 획득될 수 있다.
도 1은 관계형 데이터베이스 시스템을 네트워크에 의해 상호연결된 여러 사용자 스테이션과 함께 도시하는 개략도이다.
도 2는 관계형 데이터베이스 시스템이 본 발명의 일 실시예에 따라 구현될 수 있는 컴퓨팅 시스템의 구성요소들을 도시하는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 관계형 데이터베이스 작업 부하 매니저에 의해 수행되는 단계들을 나타내는 플로우차트이다.
도 4는 본 발명의 일 실시예에 따른 3개의 스레드와 관련된 스레드 우선 순위의 동적 조정을 도시하는 그래프이다.
첨부된 도면을 참조하여 아래에서 설명되는 본 발명에 대한 상세한 설명은 본 발명의 다양한 실시예에 대한 설명으로서 의도되며, 본 발명이 실시될 수 있는 유일한 실시예만을 나타내려고 의도되지 않는다. 상세한 설명은 본 발명의 완전한 이해를 제공하기 위한 목적을 위한 구체적인 상세 내용을 포함한다. 그러나, 본 발명은 본 명세서에 포함된 모든 구체적인 상세 내용 없이도 실시될 수 있다는 것은 본 발명의 기술분야에서 통상의 지식을 가진 자에게 자명할 것이다. 일부 경우에 있어서, 널리 공지된 구조 및 구성 요소는 본 발명의 개념을 흐리게 하는 것을 방지하기 위하여 블록도 형태로 도시된다.
혼합된 작업 부하 내에서 개별 쿼리에 주어진 처리 우선 순위의 제어를 용이 하게 하기 위한 관계형 데이터베이스 작업 부하 매니저가 설명된다. 작업 부하 매니저는 RDBMS 내에서 실행될 때 쿼리의 처리 우선 순위를 동적으로 조정하기 위한 새로운 알고리즘을 적용한다. 새로운 쿼리가 실행을 위하여 제출될 때, 높은 처리 우선 순위가 그 쿼리에 할당된다. 아래에서 더욱 상세히 설명되는 바와 같이, 기설정된 시간 구간에서, 여전히 실행 중인 쿼리의 처리 우선 순위가 기설정된 양만큼 낮아진다.
도 1은 관계형 데이터베이스 시스템(10)을 네트워크(5)에 의해 상호연결된 여러 사용자 스테이션(1-4)과 함께 도시하는 개략도이다. 관계형 데이터베이스 시스템(10)은 사용자 스테이션(1-4)에 의한 데이터베이스로의 액세스를 관리하기 위하여 RDBMS를 포함한다. 관계형 데이터베이스 시스템(10)은 관계형 데이터베이스에 대한 동시 액세스가 여러 사용자에게 제공될 때 RDBMS의 작업 부하를 관리하기 위한 작업 부하 매니저를 포함한다.
사용자 스테이션(1-4)은 쿼리를 생성하여 관계형 데이터베이스 시스템(10)에 공급할 수 있는 임의의 컴퓨팅 장치 또는 시스템을 나타내도록 의도된다. 예를 들어, 사용자 스테이션(1-4)은 관계형 데이터베이스 시스템(10) 내에서 관계형 데이터베이스에 액세스하기 위하여 구성된 워크스테이션, 단말기, 또는 휴대 장치를 포함하나 이에 한정되지 않는다. 관계형 데이터베이스 시스템(10)은 임의의 개수의 사용자 스테이션(1-4)으로부터 관계형 데이터베이스에 대한 동시 액세스를 제공할 수 있도록 구성되며, 그 각각은 다른 사용자 스테이션과 독립적으로 관계형 데이터베이스에 액세스한다. 사용자 스테이션(1-4) 중 하나를 동작시키는 사용자는 사용 자 스테이션(1-4) 중 다른 것들을 동작시키는 다른 사용자들에 의해 제출된 쿼리를 알 수도 있고 알지 못할 수도 있다. 도 1이 4개의 사용자 스테이션만을 도시하고 있지만, 관계형 데이터베이스 시스템(10)을 액세스할 수 있는 사용자 스테이션의 개수는 본 발명의 범위를 벗어나지 않으면서 4개의 사용자 스테이션보다 더 적을 수 있거나 또는 4개의 사용자 스테이션을 초과할 수 있다는 것이 이해되어야만 한다.
도 1에 도시된 바와 같이, 사용자 스테이션(1-4)은 네트워크(5)에 의해 관계형 데이터베이스 시스템(10)과 상호연결된다. 네트워크(5)는 LAN(local area network), WAN(wide area network), 인터넷 등과 같은 양방향 데이터 통신 시스템을 나타내도록 의도된다. 네트워크(5)는 본 발명의 기술분야에서 통상의 지식을 가진 자에게 공지된 유선 또는 무선 기술 중 어느 하나와 다수의 프로토콜 중 어느 하나를 이용하여 구현될 수 있다. 사용자 스테이션(1-4)과 관계형 데이터베이스 시스템(10) 사이의 쿼리를 통신하는 것은 임의의 특정 네트워크 기술 또는 프로토콜에 한정되지 않는다는 것이 이해되어야만 한다. 또한, 다수의 네트워크 기술 및/또는 프로토콜이 사용자 스테이션(1-4)을 관계형 데이터베이스 시스템(10)과 상호연결시키는데 이용될 수 있다는 것이 이해되어야만 한다.
도 2는 관계형 데이터베이스 시스템(10)이 본 발명의 일 실시예에 따라 구현될 수 있는 컴퓨팅 시스템을 도시하는 블록도이다. 관계형 데이터베이스 시스템(10)은 버스(11) 또는 정보를 통신하기 위한 다른 통신 메카니즘, 및 정보를 처리하기 위하여 버스(11)와 연결된 프로세서(12)를 포함한다. 또한, 관계형 데이터 베이스 시스템(10)은 프로세서(12)에 의해 실행되는 정보와 명령어를 저장하기 위하여 버스(11)에 연결된 RAM(random access memory) 또는 다른 동적 저장 장치와 같은 주 메모리(13)를 포함한다. 또한, 주 메모리(13)는 프로세스(12)에 의해 명령어를 실행하는 동안 임시 변수 및 다른 중간 정보를 저장하는데 이용될 수 있다. 관계형 데이터베이스 시스템(10)은 프로세서(12)를 위한 정적 정보 및 명령어를 저장하기 위하여 버스(11)에 연결된 ROM(read only memory) 또는 다른 정적 저장 장치를 더 포함한다. 자기 디스크 또는 광 디스크와 같은 저장 장치(15)가 제공되어 정보 및 명령어를 저장하기 위하여 버스(11)에 연결된다.
관계형 데이터베이스 시스템(10)은 데이터베이스 관리자와 같은 사용자에게 정보를 표시하기 위한 LCD(liquid crystal display) 또는 CRT(cathod ray tube)와 같은 디스플레이(16)에 버스(11)를 통해 연결될 수 있다. 또한, 프로세서(12)에 대해 정보 및 명령 선택을 통신하기 위한 사용자 I/O 장치(17)가 버스(11)에 연결될 수 있다. 사용자 I/O 장치(17)는 방향 정보 및 명령 선택을 프로세서(12)에 통신하고 디스플레이(16)에서 커서 이동을 제어하기 위한 마우스, 트랙볼, 또는 커서 방향키 뿐만 아니라, 영문자 키 및 다른 키를 포함하는 키보드를 포함한다.
본 발명의 일 실시예에 따르면, 운영 체계, RDBMS 및 작업 부하 매니저는 주 메모리(13)에 포함된 하나 또는 그 이상의 명령어 시컨스를 실행하는 프로세서(12)에 응답하는 관계형 데이터베이스 시스템(10) 상에 구현된다. 이러한 명령어들은 저장 장치(15)와 같은 다른 기계 판독 가능한 매체로부터 주 메모리(13)로 판독될 수 있다. 주 메모리(13)에 포함된 명령어 시컨스의 실행은 프로세서(12)가 아래에 서 더욱 상세히 설명되는 처리 단계들을 수행하도록 한다. 또한, 다중 처리 배치에서의 하나 또는 그 이상의 프로세서가 주 메모리(13)에 포함된 명령어 시컨스를 실행하도록 채용될 수 있다. 다른 실시예에서, 하드웨어에 내장된 회로가 본 발명을 구현하기 위하여 소프트웨어 명령어 대신에 또는 이와 함께 사용될 수 있다. 따라서, 본 발명의 실시예들은 하드웨어 및 소프트웨어의 임의의 특정 조합에 한정되지 않는다. 또한, 본 발명은 임의의 특정 운영 체계 또는 RDBMS에 한정되지 않으며 다수의 상용 및/또는 오픈 소스(open source) 시스템 중 하나를 이용하여 구현될 수 있다. 예를 들어, 본 발명의 일 실시예는 LINUX 기반의 운영 체계와 잉그리스(Ingres)와 같은 오픈 소스 RDBMS를 사용한다.
본 명세서에서 사용된 바와 같은 "기계 판독 가능한 매체(machine-readable medium)"라는 용어는 실행을 위하여 프로세서(12)에 명령어를 제공하는데 관여하는 임의의 매체를 말한다. 이러한 매체는 비휘발성 매체, 휘발성 매체 및 전송 매체를 포함하지만 이에 한정되지 않는 많은 형태를 취할 수 있다. 비휘발성 매체는, 예를 들어, 저장 장치(15)와 같은 광 또는 자기 디스크를 포함한다. 휘발성 매체는 주 메모리(13)와 같은 동적 메모리를 포함한다. 전송 매체는 동축 케이블, 구리 와이어 및 광섬유를 포함하며, 버스(11)를 포함하는 와이어를 포함한다. 또한, 전송 매체는 RF(raido frequency) 및 IR(infrared) 데이터 통신 동안 생성되는 것들과 같은 음파 또는 광파의 형태를 취할 수 있다. 기계 판독 가능한 매체의 일반적인 형태는, 예를 들어, 플로피 디스크, 플렉시블 디스크, 하드 디스크, 자기 테이프 또는 임의의 다른 자기 매체, CD-ROM, DVD-ROM, 및 임의의 다른 광 매체를 포 함한다. 또한, 기계 판독 가능한 매체는 PROM, EEPROM, 플래시 메모리, 및 다른 메모리 칩이나 카트리지 포맷과 같은 다른 형태의 메모리를 포함한다. 요약하면, 기계 판독 가능한 매체는 프로세서가 데이터와 명령어를 읽을 수 있는 임의의 매체를 나타낸다.
다양한 형태의 기계 판독 가능한 매체는 실행을 위하여 프로세서(12)에 하나 또는 그 이상의 명령어 시컨스를 운반할 수 있다. 예를 들어, 명령어는 초기에 원격 컴퓨터에서 자기 디스크로 기록될 수 있다. 원격 컴퓨터는 동적 메모리에 명령어를 로딩하고 그 명령어를 네트워크 또는 전화선을 통해 관계형 데이터베이스 시스템(10)에 전송할 수 있다. 관계형 데이터베이스 시스템(10)은 버스(11)에 연결된 네트워크 인터페이스(18)에서 명령어를 수신한다. 네트워크 인터페이스(18)에 의해 버스(11) 상에 놓인 후에, 버스(11)는 프로세서(12)가 그 명령어를 검색하여 실행하는 주 메모리(13)로 데이터를 운반한다. 선택적으로, 주 메모리(13)에 의해 수신된 명령어는 프로세서(12)에 의한 실행 전 또는 후에 저장 장치(15)에 저장될 수 있다. 프로세서(12) 및 관련 명령어 시컨스가 저장되는 기계 판독 가능한 매체는 본 명세서에서 설명된 본 발명의 다양한 실시예를 구현하도록 구성된 처리 시스템을 나타낸다.
또한, 전술한 바와 같이, 관계형 데이터베이스 시스템(10)은 버스(11)에 연결된 네트워크 인터페이스(18)를 포함한다. 네트워크 인터페이스(18)는 네트워크(5)에 연결된 양방향 데이터 통신을 제공한다. 네트워크 인터페이스(18)는 호환되는 LAN(local area network)에 데이터 통신 연결을 제공하기 위한 LAN 카드일 수 있다. 또한, 무선 링크가 구현될 수 있다. 임의의 이러한 구현에서, 네트워크 인터페이스(18)는 다양한 종류의 정보를 나타내는 디지털 데이터 스트림을 운반하는 전기적, 전자기적 또는 광학적 신호를 송수신한다. 또한, 네트워크 인터페이스(18)는 WAN(wide are network) 및 인터넷과의 양방향 통신을 제공할 수 있다.
도 2에 도시된 바와 같이, DB(19)가 있으며, 이는 관계형 데이터베이스 시스템(10)에서 실행되는 RDBMS에 의해 관리되는 관계형 데이터베이스의 테이블이 저장되는 기계 판독 가능한 매체를 나타내도록 의도된다. 본 발명의 기술 분야에서 통상의 지식을 가진 자는 광 및/또는 자기 디스크 및 디스크 어레이를 포함하는 다양한 종류의 기계 판독 가능한 매체가 관계형 데이터베이스 테이블을 저장하는데 이용될 수 잇다는 것을 인식할 것이다. 또한, 본 발명의 기술 분야에서 통상의 지식을 가진 자는 DB(19)는 네트워크(5)를 통해 관계형 데이터베이스 시스템(10)에 연결된 다른 서버 내에 포함될 수 있다는 것을 인식할 것이다. DB(19)가 저장 장치(15)와 분리되어 도시되지만, 관계형 데이터베이스 테이블이 다른 구현에서 저장 장치(15) 내에 저장될 수 있다.
전술한 바와 같이, 관계형 데이터베이스 시스템(10)은 관계형 데이터베이스 시스템(10)에서 명령어 시컨스를 실행하여 구현된 관계형 데이터베이스 작업 부하 매니저를 포함한다. 관계형 데이터베이스 작업 부하 매니저는 관계형 데이터베이스 시스템(10)의 RDBMS 내에서 동시에 실행하는 쿼리에 할당된 우선 순위를 동적으로 조정한다. 도 3은 본 발명의 일 실시예에 따른 관계형 데이터베이스 작업 부하 매니저에 의해 수행되는 단계들을 나타내는 플로우차트이다. 요약하면, 작업 부하 매니저는 RDBMS에 의해 실행되고 있는 쿼리를 모니터링하며, 시간 구간의 경과시에 여전히 실행되고 있는 각 쿼리에 할당된 우선 순위를 감소시킨다. 이 처리가 더욱 상세하게 설명될 것이다.
단계 S300에서, 작업 부하 매니저는 관계형 데이터베이스 시스템(10) 내에서 명령어 시컨스의 실행을 개시함으로써 런칭된다. 작업 부하 매니저의 이러한 개시는 RDBMS가 런칭될 때마다 자동적으로 런칭되도록 관계형 데이터베이스 시스템(10) 내에서 RDBMS의 런칭에 의존할 수 있다. 이 대신에 작업 부하 매니저는 관리자에게 작업 부하 매니저를 활성화할 지의 여부에 대한 선택을 허용하기 위하여 RDBMS와 별도로 런칭되도록 구성될 수 있다. 일 실시예에 따르면, 작업 부하 매니저는 UXIX 기반의 운영 체계 내에서 UNIX 데몬(daemon)을 이용하여 구현된다. 본 실시예에서, 데몬은 각 시간 구간의 경과시에 실행되도록 구성될 수 있다.
개시에 따라, 작업 부하 매니저는 시간 구간이 경과될 때까지 대기하는 상태에 들어간다. 이 상태는 도 3에서 단계 S301로 표시된다. 이 시간 구간은 초기에는 초기값으로 설정되지만, 관계형 데이터베이스 시스템(10)의 관리자에 의해 조정될 수 있다. 설정된 시간 간격을 조정하는 것은 작업 부하 매니저의 성능을 정밀하게 튜닝하기 위하여 상이한 시간량을 관리자가 정의할 수 있도록 허용한다. 이 시간 구간은 임의의 양으로 설정될 수 있지만, 일반적으로 수 초의 범위 내 또는 1 초 이내의 범위일 것이다.
설정된 시간 구간이 경과하면, 단계 S302에서 작업 부하 매니저는 임의의 데이터베이스 쿼리가 RDBMS에 의해 실행되는지를 판단한다. 본 발명의 일 실시예에 따르면, 이러한 판단은 관계형 데이터베이스 시스템(10)에서 프로세서에 의해 실행되고 있는 프로세스 스레드(thread)를 모니터링함으로써 이루어진다. RDBMS에 의해 실행되는 각 쿼리는 프로세서에 의해 실행된 프로세스 스레드와 관련된다. 표준 운영 체계 명령 및 RDBMS 명령을 이용하여, 작업 부하 매니저는 프로세서에 의해 현재 실행되고 있는 모든 프로세스 스레드를 식별한다. 작업 부하 매니저는 각 프로세스 스레드와 관련된 식별 정보에 따라 어떤 실행 프로세스 스레드가 RDBMS에서의 실행 쿼리와 관련되었는지를 판단한다. 어떠한 프로세스 스레드도 실행 쿼리와 관련이 없다면, 작업 부하 매니저의 동작은 단계(S301)로 회귀하여 시간 구간이 다시 경과하기를 기다린다. 하나 또는 그 이상의 프로세스 스레드가 실행 쿼리와 관련된다면, 작업 부하 매니저의 동작은 단계 S303으로 계속된다.
각 쿼리가 RDBMS에 의해 실행될 때, 관련 프로세스 스레드는 관계형 데이터베이스 시스템(10)에서 실행되고 있는 RDBMS 및/또는 운영 체계에 의한 처리 우선 순위 값이 할당된다. 본 발명의 기술 분야에서 통상의 지식을 가진 자에 의해 이해되는 바와 같이, 할당된 처리 우선 순위는 얼마나 많은 그리고/또는 얼마나 자주 처리 리소스가 관련된 프로세스 스레드를 실행하도록 할당되는지를 판단한다. 할당된 처리 우선 순위는 관계형 데이터베이스 시스템의 운영 체계, 프로세서, RDBMS 등에 따라 가변하는 범위의 값으로부터 선택된 값이다. 또한, 상이한 종류의 프로세스는 상이한 범위의 우선 순위 값이 할당된다. 예를 들어, 사용자 I/O와 같은 실시간 프로세스와 중요 시스템 함수는 가능 범위의 값에서 큰 값으로부터의 우선 순위 값이 할당된다. 덜 중요한 애플리케이션 및 프로세스는 그 범위에서 낮은 우 선 순위 값이 할당된다. 우선 순위 값이 감소함에 따라, 관련 프로세스 스레드는 백그라운드(background)로 더 이동하고 더 높은 우선 순위 값을 갖는 프로세스 스레드를 위하여 연기된다.
단계 S303에서, 작업 부하 매니저는 실행 쿼리와 관련된 프로세스 스레드에 할당된 처리 우선 순위 값을 감소시킨다. 이것은 RDBMS에 의해 실행되고 있는 새로운 쿼리 보다 더 낮은 우선 순위에 위치되도록 한다. 일 실시예에 따르면, 단계 S303에서 우선 순위 값은 한 단계만큼 감소된다. 그러나, 우선 순위에서의 감소량은 다른 실시예에서 관계형 데이터베이스 시스템(10)의 관리자에 의해 한 단계 이상으로 정의될 수 있다. 실행 쿼리의 우선 순위 값이 감소되면, 프로세스는 단계 S301로 나타낸 대기 상태로 복귀한다. 이러한 순환 프로세스는 관리자가 관계형 데이터베이스 시스템(10)에서 실행되고 있는 작업 부하 매니저 및/또는 RDBMS를 종료할 때까지 계속된다.
도 3에 나타낸 처리의 최종 결과는 높은 우선 순위로 실행되고 있는 모든 쿼리는 상대적으로 높은 처리 리소스가 할당된다는 것이다. 설정된 시간 구간 내에서 처리를 완료하는 단기 실행 쿼리는 마치 시스템 상에서 개별적으로 단독으로 실행되는 것과 같이 초기 처리 우선 순위를 유지한다. 완료하기 위하여 더 많은 시간을 필요로 하는 쿼리는 백그라운드 작업이 되어 단기 실행 쿼리와 간섭하지 않도록 실행될 때 우선 순위가 감소될 것이다. 따라서, 본질적으로 단시간에 실행되는 쿼리는 동시성 레벨에 관계없이 여전히 단기에 실행될 것이다. 사용자가 장기 실행 쿼리가 완료하는데 수분 또는 수시간 걸린다고 예상하기 때문에, 이 시스템 내 에서의 완료를 위한 약간의 추가 시간은 거의 눈에 띄지 않을 것이다.
도 4는 1초 시간 구간에서 작업 부하 매니저에 의해 관리되고 있는 3개의 프로세스 스레드를 도시하는 그래프이며, 각 시간 구간에서 우선 순위에 있어서 1개의 값만큼의 감소가 있다. 파선(dashed-line)으로 도시된 스레드 A는 장기 실행 쿼리를 나타낸다. "X"와 함께 도시된 스레드 B는 여러 개의 단기 실행 쿼리를 나타낸다. 점선으로 도시된 스레드 C는 중간 실행 쿼리를 나타낸다. 그래프 아래의 표는 각 시간 구간에서 각 프로세스 스레드에 할당된 우선 순위를 나타낸다.
도 4에 도시된 바와 같이, 각 쿼리는 초기에 9의 우선 순위로 할당된다. 각 1초의 시간 구간이 경과함에 따라, 각 실행 쿼리의 우선 순위 값은 1만큼 감소된다. 따라서, 스레드 A는 더 많은 프로세서 리소스가 더 짧은 실행 쿼리에 할당될 수 있도록 1의 우선 순위 값으로 점차 줄어든다. 반대로, 스레드 B는 단일의 시간 구간의 경과 전에 개시되고 완료되는 6개의 개별 쿼리를 포함한다. 따라서, 스레드 B의 우선 순위 값은 감소되지 않으며, 이에 의해 이러한 단기 실행 쿼리가 상대적으로 짧은 시간 구간에서 높은 우선 순위를 가지면서 실행되게 한다. 스레드 C는 일반적으로 여러 시간 구간의 경과에 대하여 5의 우선 순위 값으로 점진적으로 감소된다. 다 많은 시간이 지남에 따라, 단기 실행 쿼리는 더 긴 실행 쿼리가 천천히 백그라운드로 이동하기 때문에 더 긴 실행 쿼리에 의한 영향을 점점 덜 받는다. 이것은 경과된 실행 시간에 따른 쿼리의 종류를 결정하고 심지어 동시의 그리고 혼합된 작업 부하 내에서 단기 쿼리가 전부의 또는 거의 전부의 리소스를 갖게 하도록 우선 순위를 조정할 수 있는 작업 부하 매니저의 능력을 보여준다.
작업 부하 매니저는 얼마나 자주 우선 순위가 변경되는지 그리고 얼마나 많은 우선 순위가 각 구간에서 변경되는지를 결정함으로써 다양한 구현을 위한 요구조건을 만족하도록 조정될 수 있다. 이것은 사용자 또는 전용 세션에 기초하지 않는 구성을 관리하는데 있어서 매우 용이한 점을 제공하며, 시스템의 최종 사용자 및 관리자에게는 보이지 않는다.
본 발명의 일 실시예에 따르면, 작업 부하 매니저는 RDBMS의 외부에서 동작하는 프로세스 또는 애플리케이션으로서 구현된다. 대부분의 RDBMS는 각 개별 쿼리를 RRBMS 내의 특정 동작 스레드 또는 운영 체계 그 자체 내에서의 프로세스로 할당한다. 그 다음, 운영 체계는 일반적으로 시간 분할(time slicing)에 기초하여 소정의 표준 방법으로 그 스레드 또는 프로세스에 대한 리소스 할당을 관리한다. 대부분의 운영 시스템은 다른 동시 동작 스레드에 관련하여 각 스레드 또는 프로세스의 우선 순위를 설정하기 위한 소정의 수단을 허용한다. 더 높은 우선 순위 스레드 또는 프로세스는 더 많은 처리 리소스를 공급받을 것이고, 따라서, 더 낮은 우선 순위 스레드 또는 프로세스보더 더 빨리 처리할 것이다. 이러한 개념은 우선 순위 관리의 기술 분야에서 통상의 지식을 가진 자에게 널리 공지되어 있다.
본 실시예에서, 외부의 작업 부하 매니저는 RDBMS의 모든 실행 스레드를 모니터링하고 전술한 알고리즘에 따라 실행 스레드의 우선 순위를 변경하기 위하여 표준 운영 체계 제어를 이용한다. 본 실시예에서, RDBMS는 각 쿼리의 개시 시점에서 우선 순위를 높은 값(정상)으로 설정하고, 작업 부하 매니저는 설정된 시간 구간이 경과함에 따라 이를 감소되도록 설정한다. 본 실시예는 RDBMS 자체에 대한 최소한의 변경으로 작업 부하 매니저를 구현한다.
본 발명의 다른 실시예에 따르면, 작업 부하 매니저는 RDBMS 내에 구현된다. 이러한 다른 실시예에서, RDBMS는 실행 쿼리에 관련된 모든 스레드를 모니터링하는 스레드 또는 프로세스를 포함하고, 우선 순위를 내부적으로 동적으로 조정하기 위한 알고리즘을 적용한다. 이러한 스레드 추적은 운영 체계 제어 또는 호출을 이용하여 모든 쿼리 실행 스레드의 운영 체계 우선 순위를 조정한다.
일부 RDBMS 스레드 우선 순위를 운영 체계를 수반하지 않고 내부적으로 관리할 수 있는 능력을 포함한다. 또 다른 실시예에서, 작업 부하 매니저는 실행 쿼리와 관련된 실행 스레드, 및 관련된 스레드의 우선 순위가 내부 RDBMS 제어를 이용하여 전술한 알고리즘에 따라 동적으로 조정되는지를 모니터링하기 위하여 RDBMS 내에서 구현된다.
다른 실시예에 따르면, 작업 부하 매니저는 쿼리 처리 스레드를 모니터링하기 위하여 RDBMS와 분리된 외부의 프로세스 또는 스레드로서 구현된다. 작업 부하 매니저는 널리 공지된 내부 처리 통신 방법을 이용하여 RDBMS에 명령어를 전송함으로써 내부 RDBMS 제어를 이용한 쿼리 처리 스레드의 우선 순위를 동적으로 조정한다.
쿼리에 할당된 처리 우선 순위의 수동 제어가 임의의 전술한 실시예와 결합하여 관리자에 의해 이용될 수 있다. 구체적으로, 우선 순위 설정을 위한 수동 제어는 실행 쿼리 처리 스레드에 대한 우선 순위의 자동화된 할당을 오버라이드한다(override). 이러한 오버라이드 제어는 다른 모든 쿼리는 전술한 실시예 중 하 나를 이용하여 관리되는 반면 특정 연결 및/또는 개별 쿼리 실행을 위하여 특정 사용자 계정에 대하여 수동으로 우선 순위를 설정하는데 사용될 수 있다. 예를 들어, 전술한 작업 부하 관리 알고리즘은 관리자에 의해 특정된 사용자 그룹으로부터 나오는 쿼리들에만 적용될 수 있다. 유사하게, 관리자에 의해 특정된 하나 또는 그 이상의 사용자로부터의 쿼리는 작업 부하 관리 알고리즘의 적용으로부터 배제될 수 있으며, 따라서, 종래의 방법으로 실행하는 것이 허용될 수 있다.
상기된 설명은 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 명세서에 설명된 발명의 다양한 실시예들을 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 수정물들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 자명할 것이며, 본 명세서에서 정의된 일반적인 원리는 다른 실시예들에 적용될 수 있다. 따라서, 다음의 특허청구범위는 본 명세서에서 나타내어지고 설명된 실시예들에 한정되려고 의도되지 않으며, 특허청구범위의 문언과 모순되지 않는 전체 범위와 일치된다. 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 공지되었거나 앞으로 공지될 본 개시 내용 전체를 통해 설명된 다양한 실시예들의 구성요소와 균등한 모든 구조 및 기능은 명백하게 본 명세서에서 참조로서 편입되며 특허청구범위에 의해 포함되도록 의도된다. 더하여, 본 명세서에 개시된 어떠한 것도 이러한 개시 내용이 특허청구범위에 명시적으로 인용되었는지의 여부에 관계없이 일반에게 바쳐지도록 의도되지 않는다.

Claims (21)

  1. 관계형 데이터베이스 시스템에서 실행 쿼리를 모니터링하는 단계; 및
    설정된 시간 구간에서 각 실행 쿼리에 할당된 우선 순위를 감소시키는 단계;
    를 포함하는 관계형 데이터베이스 작업 부하 관리 방법.
  2. 제1항에 있어서,
    상기 모니터링하는 단계는 상기 설정된 시간 구간에서 실행되는 것을 특징으로 하는 관계형 데이터베이스 작업 부하 관리 방법.
  3. 제1항에 있어서,
    상기 모니터링하는 단계는,
    해당하는 실행 쿼리와 관련된 스레드를 모니터링하는 단계;
    를 포함하는 것을 특징으로 하는 관계형 데이터베이스 작업 부하 관리 방법.
  4. 제1항에 있어서,
    상기 설정된 시간 구간은 관리자에 의해 정의되는 것을 특징으로 하는 관계 형 데이터베이스 작업 부하 관리 방법.
  5. 제1항에 있어서,
    상기 감소시키는 단계는 각 실행 쿼리에 할당된 상기 우선 순위를 관리자에 의해 정의된 양만큼 감소시키는 것을 특징으로 하는 관계형 데이터베이스 작업 부하 관리 방법.
  6. 제1항에 있어서,
    상기 모니터링하는 단계는,
    특정 그룹의 사용자에 의해 제출된 실행 쿼리를 모니터링하는 단계;
    를 포함하고,
    상기 감소시키는 단계는,
    상기 특정 그룹의 사용자에 의해 제출된 각 실행 쿼리에 할당된 우선 순위를 감소시키는 단계;
    를 포함하는 것을 특징으로 하는 관계형 데이터베이스 작업 부하 관리 방법.
  7. 제1항에 있어서,
    사용자가 특정한 쿼리는 상기 감소시키는 단계에서 배제되는 것을 특징으로 하는 관계형 데이터베이스 작업 부하 관리 방법.
  8. 관계형 데이터베이스 시스템에서 실행 쿼리를 모니터링하고 설정된 시간 구간에서 각 실행 쿼리에 할당된 우선 순위를 감소시키도록 구성된 처리 시스템;
    을 포함하는 관계형 데이터베이스 작업 부하 매니저.
  9. 제8항에 있어서,
    상기 처리 시스템은 상기 설정된 시간 구간에서 상기 실행 쿼리를 모니터링하도록 구성된 것을 특징으로 하는 관계형 데이터베이스 작업 부하 매니저.
  10. 제8항에 있어서,
    상기 처리 시스템은 해당하는 실행 쿼리에 관련된 스테드를 모니터링하도록 구성된 것을 특징으로 하는 관계형 데이터베이스 작업 부하 매니저.
  11. 제8항에 있어서,
    상기 설정된 시간 구간은 관리자에 의해 정의되는 것을 특징으로 하는 관계형 데이터베이스 작업 부하 매니저.
  12. 제8항에 있어서,
    상기 처리 시스템은 각 실행 쿼리에 할당된 상기 우선 순위를 관리자에 의해 정의된 양만큼 감소시키도록 구성된 것을 특징으로 하는 관계형 데이터베이스 작업 부하 매니저.
  13. 제8항에 있어서,
    상기 처리 시스템은 특정 그룹의 사용자에 의해 제출된 실행 쿼리를 모니터링하고 상기 특정 그룹의 사용자에 의해 제출된 각 실행 쿼리에 할당된 우선 순위를 감소시키도록 구성된 것을 특징으로 하는 관계형 데이터베이스 작업 부하 매니저.
  14. 제8항에 있어서,
    상기 처리 시스템은 관리자에 의해 특정된 쿼리에 할당된 우선 순위를 변경하지 않은 상태로 남겨두도록 구성된 것을 특징으로 하는 관계형 데이터베이스 작 업 부하 매니저.
  15. 관계형 데이터베이스 작업 부하 매니저의 처리 시스템에 의해 실행가능한 명령어들을 포함하는 기계 판독 가능한 매체에 있어서,
    상기 명령어는,
    관계형 데이터베이스 시스템에서 실행 쿼리를 모니터링하는 단계; 및
    설정된 시간 구간에서 각 실행 쿼리에 할당된 우선 순위를 감소시키는 단계;
    를 포함하는 기계 판독 가능한 매체.
  16. 제15항에 있어서,
    상기 모니터링하는 단계는 상기 설정된 시간 구간에서 실행되는 것을 특징으로 하는 기계 판독 가능한 매체.
  17. 제15항에 있어서,
    상기 모니터링하는 단계는,
    해당하는 실행 쿼리와 관련된 스레드를 모니터링하는 단계;
    를 포함하는 것을 특징으로 하는 기계 판독 가능한 매체.
  18. 제15항에 있어서,
    상기 설정된 시간 구간은 관리자에 의해 정의되는 것을 특징으로 하는 기계 판독 가능한 매체.
  19. 제15항에 있어서,
    상기 감소시키는 단계는 각 실행 쿼리에 할당된 상기 우선 순위를 관리자에 의해 정의된 양만큼 감소시키는 것을 특징으로 하는 기계 판독 가능한 매체.
  20. 제15항에 있어서,
    상기 모니터링하는 단계는,
    특정 그룹의 사용자에 의해 제출된 실행 쿼리를 모니터링하는 단계;
    를 포함하고,
    상기 감소시키는 단계는,
    상기 특정 그룹의 사용자에 의해 제출된 각 실행 쿼리에 할당된 우선 순위를 감소시키는 단계;
    를 포함하는 것을 특징으로 하는 기계 판독 가능한 매체.
  21. 제15항에 있어서,
    사용자가 특정한 쿼리는 상기 감소시키는 단계에서 배제되는 것을 특징으로 하는 기계 판독 가능한 매체.
KR1020097000863A 2006-06-26 2007-06-26 관계형 데이터베이스 관리 시스템 작업 부하 매니저 Ceased KR20090054424A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US81691006P 2006-06-26 2006-06-26
US60/816,910 2006-06-26

Publications (1)

Publication Number Publication Date
KR20090054424A true KR20090054424A (ko) 2009-05-29

Family

ID=38846305

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097000863A Ceased KR20090054424A (ko) 2006-06-26 2007-06-26 관계형 데이터베이스 관리 시스템 작업 부하 매니저

Country Status (4)

Country Link
US (1) US20070299812A1 (ko)
EP (1) EP2038739A4 (ko)
KR (1) KR20090054424A (ko)
WO (1) WO2008002627A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101529270B1 (ko) * 2013-06-28 2015-06-29 주식회사 진스커뮤니케이션즈 검색 엔진을 이용한 데이터베이스 관리방법 및 그 시스템
US9904708B2 (en) 2014-02-20 2018-02-27 TmaxData Co., Ltd. Apparatus and method for processing query in database with hybrid storage

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7792819B2 (en) * 2006-08-31 2010-09-07 International Business Machines Corporation Priority reduction for fast partitions during query execution
US20090248631A1 (en) * 2008-03-31 2009-10-01 International Business Machines Corporation System and Method for Balancing Workload of a Database Based Application by Partitioning Database Queries
US9047124B2 (en) * 2008-10-14 2015-06-02 Hewlett-Packard Development Company, L.P. Query scheduler
US20100161368A1 (en) * 2008-12-23 2010-06-24 International Business Machines Corporation Managing energy in a data center
EP2517124A1 (en) * 2009-12-23 2012-10-31 Ab Initio Technology LLC Managing queries
US20110252430A1 (en) * 2010-04-07 2011-10-13 Apple Inc. Opportunistic Multitasking
GB2506164A (en) 2012-09-24 2014-03-26 Ibm Increased database performance via migration of data to faster storage
US9336068B2 (en) 2013-06-07 2016-05-10 Apple Inc. Throttling of application access to resources
US9767168B2 (en) * 2014-11-21 2017-09-19 Red Hat, Inc. Federation optimization using ordered queues
US20180246987A1 (en) * 2015-09-04 2018-08-30 Entit Software Llc Graph database management
WO2017044119A1 (en) 2015-09-11 2017-03-16 Hewlett Packard Enterprise Development Lp Graph database and relational database mapping
US11755658B2 (en) 2018-06-12 2023-09-12 Nuvolo Technologies Corporation Intelligent buffering of queries from a mobile application

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3451985B2 (ja) * 1999-05-27 2003-09-29 日本電気株式会社 動画像類似度算出装置および方法
US6647441B1 (en) * 2000-09-15 2003-11-11 Hewlett-Packard Development Company, L.P. Method of maximizing servicing capability of large numbers of I/O descriptors
US6944630B2 (en) * 2000-11-22 2005-09-13 Bmc Software Database management system and method which monitors activity levels and determines appropriate schedule times
US6895585B2 (en) * 2001-03-30 2005-05-17 Hewlett-Packard Development Company, L.P. Method of mixed workload high performance scheduling
US6763359B2 (en) * 2001-06-06 2004-07-13 International Business Machines Corporation Learning from empirical results in query optimization
US7509671B1 (en) * 2001-06-20 2009-03-24 Microstrategy Incorporated Systems and methods for assigning priority to jobs in a reporting system
US6938035B2 (en) * 2001-10-03 2005-08-30 International Business Machines Corporation Reduce database monitor workload by employing predictive query threshold
US7051020B2 (en) * 2002-06-27 2006-05-23 International Business Machines Corporation Intelligent query re-execution
US7249141B2 (en) * 2003-04-30 2007-07-24 Microsoft Corporation Automated layout of relational databases
US20050010558A1 (en) * 2003-07-11 2005-01-13 International Business Machines Corporation Data query system load balancing
US7174328B2 (en) * 2003-09-02 2007-02-06 International Business Machines Corp. Selective path signatures for query processing over a hierarchical tagged data structure
US20060026179A1 (en) * 2003-12-08 2006-02-02 Brown Douglas P Workload group trend analysis in a database system
US7483918B2 (en) * 2004-08-10 2009-01-27 Microsoft Corporation Dynamic physical database design
US7379953B2 (en) * 2005-02-22 2008-05-27 International Business Machines Corporation Systems and methods for resource-adaptive workload management
US20060212429A1 (en) * 2005-03-17 2006-09-21 Microsoft Corporation Answering top-K selection queries in a relational engine
JP4314221B2 (ja) * 2005-07-28 2009-08-12 株式会社東芝 構造化文書記憶装置、構造化文書検索装置、構造化文書システム、方法およびプログラム
US8145611B2 (en) * 2005-09-20 2012-03-27 Teradata Us, Inc. Servicing queries in a database system
US7958159B1 (en) * 2005-12-19 2011-06-07 Teradata Us, Inc. Performing actions based on monitoring execution of a query
US20070204271A1 (en) * 2006-02-28 2007-08-30 Andrew Gaiarsa Method and system for simulating a multi-CPU/multi-core CPU/multi-threaded CPU hardware platform
US8826280B1 (en) * 2006-03-23 2014-09-02 Emc Corporation Processing raw information for performing real-time monitoring of task queues
US8813082B2 (en) * 2006-06-22 2014-08-19 International Business Machines Corporation Thread priority based on object creation rates

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101529270B1 (ko) * 2013-06-28 2015-06-29 주식회사 진스커뮤니케이션즈 검색 엔진을 이용한 데이터베이스 관리방법 및 그 시스템
US9904708B2 (en) 2014-02-20 2018-02-27 TmaxData Co., Ltd. Apparatus and method for processing query in database with hybrid storage

Also Published As

Publication number Publication date
WO2008002627A2 (en) 2008-01-03
EP2038739A4 (en) 2012-05-30
US20070299812A1 (en) 2007-12-27
EP2038739A2 (en) 2009-03-25
WO2008002627A3 (en) 2008-08-28

Similar Documents

Publication Publication Date Title
KR20090054424A (ko) 관계형 데이터베이스 관리 시스템 작업 부하 매니저
US11030009B2 (en) Systems and methods for automatically scaling compute resources based on demand
RU2454704C2 (ru) Способ и система для выполнения программных приложений и машиночитаемый носитель
US11740934B2 (en) Systems and methods for thread management to optimize resource utilization in a distributed computing environment
US6026424A (en) Method and apparatus for switching long duration tasks from synchronous to asynchronous execution and for reporting task results
US9116755B2 (en) System and method for managing a hybrid compute environment
CN107943576B (zh) 应用程序的启动优化方法、装置、设备、系统及介质
US10686728B2 (en) Systems and methods for allocating computing resources in distributed computing
US20080222434A1 (en) Method of power-aware job management and computer system
US20080172419A1 (en) Managing events in a computing environment
US9958933B2 (en) Opportunistic waking of an application processor
US11036542B2 (en) Automatically limiting repeated checking on completion of a command without relinquishing a processor
US20220222111A1 (en) Deep learning framework scheduling
US8799474B2 (en) Apparatus and method to allocate limited resources
US8056083B2 (en) Dividing a computer job into micro-jobs for execution
JP2508589B2 (ja) サ―バ運用方式
RU2769106C1 (ru) Способ, устройство и система для предоставления услуг, носитель данных и электронное устройство
EP2255281B1 (en) System and method for managing a hybrid compute environment
US20160188638A1 (en) Apparatus and method for managing usage of a database system resources by concurrent database users of a database system
RU2450330C2 (ru) Аппаратно-реализуемый способ выполнения программ
US20250013626A1 (en) Controlling concurrently executing threads
KR20250106845A (ko) 어플리케이션의 ui 반응성과 연관된 스레드를 식별하기 위한 방법 및 장치
KR20250041964A (ko) 자원 관리를 위한 전자 장치 및 방법
CN119342046A (zh) 一种显示设备远程控制方法、装置、电子设备及存储介质
CN114489824A (zh) 一种快速启动的控制方法、装置及电子设备

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20090115

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20120601

Comment text: Request for Examination of Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20130716

Patent event code: PE09021S01D

E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20140106

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20130716

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I