JP6615342B2 - 分散データベースの負荷を平準化するための方法および装置 - Google Patents

分散データベースの負荷を平準化するための方法および装置 Download PDF

Info

Publication number
JP6615342B2
JP6615342B2 JP2018522846A JP2018522846A JP6615342B2 JP 6615342 B2 JP6615342 B2 JP 6615342B2 JP 2018522846 A JP2018522846 A JP 2018522846A JP 2018522846 A JP2018522846 A JP 2018522846A JP 6615342 B2 JP6615342 B2 JP 6615342B2
Authority
JP
Japan
Prior art keywords
load
servers
server
data slice
ranked
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.)
Active
Application number
JP2018522846A
Other languages
English (en)
Other versions
JP2018521439A (ja
Inventor
▲潤▼▲謀▼ ▲鄒▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Publication of JP2018521439A publication Critical patent/JP2018521439A/ja
Application granted granted Critical
Publication of JP6615342B2 publication Critical patent/JP6615342B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Description

本出願は、2015年7月29日に出願した、発明の名称を「分散データベースの負荷を平準化するための方法および装置」とする中国特許出願第201510456585.2号の優先権の利益を主張するものであり、その開示は、参照によりその全体が本明細書に組み込まれる。
本開示は、インターネット技術に関し、特に、分散データベースの負荷を平準化するための方法および装置に関する。
近年、データ量の急速な増大に伴って、分散データベース技術も急速に発展してきた。分散データベース技術は、元の集中データベース内のデータを多数のデータスライスに分割し、それらを複数の独立したデータストレージノード上に分散して記憶し、物理的に分散された複数のデータストレージユニットを接続して論理的に統一されたデータベースを形成する。分散データベース技術では、ストレージ負荷を共有するために複数のサーバが使用されるスケーラブルなシステムアーキテクチャを使用しており、これは、システムの信頼性、可用性、およびアクセス効率を改善するだけでなく、拡張もしやすい。データスライスのバランスの取れた分散を維持するために、分散データベースシステム全体にわたるサーバ上のデータスライスの数がマイグレーション閾値に達したときに、最大数のデータスライスを記憶しているサーバ上のデータスライスをより少ない数のデータスライスを記憶しているサーバに移動する必要がある。たとえば、データセットがサーバA上に100個のデータスライスを、サーバB上に50個のデータスライスを有している場合、サーバA上のデータスライスをサーバBに、2つのサーバ上のデータセットのデータスライスの数が近い値になるか、または等しくなるまで移動する必要がある。
本開示の実施形態は、分散データベースの負荷を平準化して分散データベースシステム全体の負荷を効果的に低減するための方法および装置を実現する。
本開示の実施形態は、分散データベースの負荷を平準化するための方法を提供し、この方法は、
統計期間中に分散データベースシステム内のすべてのサーバの負荷および各サーバ上の各データスライスの負荷割合をカウントするステップと、
最高から最低に向かってそれぞれのサーバの負荷に応じてそれぞれのサーバをランク付けし、ランク上位n個のサーバを高負荷サーバとして決定し、ランク下位n個のサーバを低負荷サーバとして決定するステップであって、nは正の整数である、ステップと、
高負荷サーバおよび低負荷サーバを横断して動作を実行するステップとを含み、この動作は、
最高から最低に向かって第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスをランク付けし、最高から最低に向かって逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスをランク付けするステップであって、iは正の整数であり、iはn以下である、ステップと、
第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスを第i位ソースデータスライスとして決定し、逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定し、第i位ソースデータスライスと第i位ターゲットデータスライスとを交換するステップとを含む。
本開示の実施形態は、プロセッサとメモリとを備える、分散データベースの負荷を平準化するための装置を実現するものであり、このメモリはプロセッサによって実行可能な命令を記憶し、これらの命令は実行されると、
統計期間中に分散データベースシステム内のすべてのサーバの負荷および各サーバ上の各データスライスの負荷割合をカウントするステップと、
最高から最低に向かってそれぞれのサーバの負荷に応じてそれぞれのサーバをランク付けし、ランク上位n個のサーバを高負荷サーバとして決定し、ランク下位n個のサーバを低負荷サーバとして決定するステップであって、nは正の整数である、ステップと、
高負荷サーバおよび低負荷サーバを横断して動作を実行するステップとを実行し、前記動作は、
最高から最低に向かって第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスをランク付けし、最高から最低に向かって逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスをランク付けするステップであって、iは正の整数であり、iはn以下である、ステップと、
第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスを第i位ソースデータスライスとして決定し、逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定し、第i位ソースデータスライスと第i位ターゲットデータスライスとを交換するステップとを含む。
本開示の実施形態は、コンピュータ命令を記憶する非一時的記憶媒体を実現し、コンピュータ命令は、
統計期間中に分散データベースシステム内のすべてのサーバの負荷および各サーバ上の各データスライスの負荷割合をカウントするステップと、
最高から最低に向かってそれぞれのサーバの負荷に応じてそれぞれのサーバをランク付けし、ランク上位n個のサーバを高負荷サーバとして決定し、ランク下位n個のサーバを低負荷サーバとして決定するステップであって、nは正の整数である、ステップと、
高負荷サーバおよび低負荷サーバを横断して動作を実行するステップとを実行するようにプロセッサによって実行可能であり、前記動作は、
最高から最低に向かって第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスをランク付けし、最高から最低に向かって逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスをランク付けするステップであって、iは正の整数であり、iはn以下である、ステップと、
第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスを第i位ソースデータスライスとして決定し、逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定し、第i位ソースデータスライスと第i位ターゲットデータスライスとを交換するステップとを含む。
本開示の実施形態による分散データベースシステムは、サーバの負荷に応じてサーバをランク付けし、高負荷サーバおよび低負荷サーバをそれぞれフィルタ処理で取り除き、高負荷サーバ上で高負荷割合を有するデータスライスと低負荷サーバ上で低負荷割合を有するデータスライスとを交換し、それによって、一方では、高負荷サーバの負荷を効果的に低減し、他方では、低負荷サーバの負荷圧力の一部を低減し、低負荷サーバ上のデータスライスの一部が交換で出されたせいで新たに交換で入ったデータスライスに対する負荷空間の一部をスペアとして取っておき、それにより、高負荷サーバ上のデータスライスが低負荷サーバにおいて交換されたときに、これにより低負荷サーバの負荷が大きくなりすぎ得る状況を回避し、分散データベースシステム全体の負荷を効果的に低減する。
分散データベースの負荷を平準化するための装置が本開示の実施形態により配置されるシステム全体の図である。 本開示による分散データベースの負荷を平準化するための方法の第1の実施形態のフローチャートである。 本開示による分散データベースの負荷を平準化するための方法の第2の実施形態のフローチャートである。 本開示による分散データベースの負荷を平準化するための方法の第3の実施形態のフローチャートである。 本開示による分散データベースの負荷を平準化するための方法の第4の実施形態のフローチャートである。 本開示による分散データベースの負荷を平準化するための方法の第5の実施形態のフローチャートである。 本開示による分散データベースの負荷を平準化するための方法の第6の実施形態のフローチャートである。 本開示による分散データベースの負荷を平準化するための装置のモジュールの第1の実施形態の概略図である。 本開示による分散データベースの負荷を平準化するための装置のモジュールの第2の実施形態の概略図である。
本開示の目的の達成、特性、および利点は、実施形態および添付図面を参照しつつ詳細に説明される。
本明細書で説明されている詳細な実施形態は、本開示を単に例示しているだけであり、本開示を限定することを意図されていないことを理解されたい。
データスライスの分散のバランスを取るための従来の方法は、データスライスの容量のみを考慮しているが、データスライスによって占有される負荷を考慮していない。しかしながら、移動されるべきデータスライスによって占有される負荷が高すぎる場合、データスライスが別のサーバに移動されたときに、これにより他のサーバの負荷が高くなりすぎ、分散データベースシステムの全体的効率に影響を及ぼし得る。
図1を参照すると、図1は、分散データベースの負荷を平準化するための装置が本開示の実施形態により配置されるシステム全体の図である。システムは、CPUなどのプロセッサ101、ネットワークインターフェース104、ユーザインターフェース103、メモリ105、および通信バス102を備え得る。通信バス102は、これらの構成要素の間で接続および通信を実行するように構成される。ユーザインターフェース103は、ディスプレイ、キーボード、標準有線インターフェース、および標準ワイヤレスインターフェースを含み得る。ネットワークインターフェース104は、標準有線インターフェースおよび標準ワイヤレスインターフェース(たとえば、Wi-Fiインターフェース)を含み得る。メモリ105は、高速ランダムアクセスメモリ(RAM)であり得るか、または磁気ディスクストレージなどの、不揮発性メモリまたは非一時的メモリであってもよい。メモリ105は、上で説明されているプロセッサ101からリモートの場所に配置されているストレージデバイスであってもよい。コンピュータ記憶媒体として、メモリ105は、オペレーティングシステム、ネットワーク通信モジュール、ユーザインターフェースモジュール、および分散データベースの負荷を平準化するためのプログラムを備え得る。
分散データベースの負荷を平準化するための装置が、図1に示されているように配置されるシステムでは、ネットワークインターフェース104は、サーバまたは端末に接続してサーバまたは端末とのデータ通信を実行するように主に構成され、ユーザインターフェース103は、ユーザ命令を受け取り、ユーザと対話的にやり取りするように主に構成され、プロセッサ101は、メモリ105に記憶されている分散データベースの負荷を平準化するためのプログラムを呼び出して動作を実行することが可能であり、この動作は、
統計期間中に分散データベースシステム内のすべてのサーバの負荷および各サーバ上の各データスライスの負荷割合をカウントするステップと、
最高から最低に向かってそれぞれのサーバの負荷に応じてそれぞれのサーバをランク付けし、ランク上位n個のサーバを高負荷サーバとして決定し、ランク下位n個のサーバを低負荷サーバとして決定するステップであって、nは正の整数である、ステップと、
高負荷サーバおよび低負荷サーバを横断して動作を実行するステップとを含み、この動作は、
最高から最低に向かって第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスをランク付けし、最高から最低に向かって逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスをランク付けするステップであって、iは正の整数であり、iはn以下である、ステップと、
第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスを第i位ソースデータスライスとして決定し、逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定し、第i位ソースデータスライスと第i位ターゲットデータスライスとを交換するステップとを含む。
一実施形態において、プロセッサ101は、メモリ105に記憶されている分散データベースの負荷を平準化するためのプログラムを呼び出して動作を実行し、この動作は、
逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定するステップと、
第i位にランク付けられている高負荷サーバ上で第j位のランク付け負荷割合を有するデータスライスを第i位ソースデータスライスとして決定するステップであって、jは正の整数であり、jの初期値は1であり、jは第i位にランク付けされた高負荷サーバ上のデータスライスの数以下である、ステップと、
それぞれのサーバの中で逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、第i位ターゲットデータスライスおよび第i位ソースデータスライスが交換された後に事前決定された負荷割合閾値よりも大きいかどうかを事前決定するステップと、
もしそうであれば、第i位にランク付けされた高負荷サーバ上で第j位のランク付け負荷割合を有するデータスライスの次のデータスライスを使用して第i位ソースデータスライスを更新し、それぞれのサーバの中で逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、第i位ターゲットデータスライスおよび更新された第i位ソースデータスライスが交換された後に、逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が事前決定された負荷割合閾値以下になるまで、事前決定された負荷割合閾値よりも大きいかどうかを事前決定するステップとを含む。
一実施形態において、プロセッサ101は、メモリ105に記憶されている分散データベースの負荷を平準化するためのプログラムを呼び出して、次の動作、
第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が事前決定された負荷割合閾値よりも大きいかどうかを決定するステップと、
もしそうであれば、第i位にランク付けされた高負荷サーバ上のデータスライスを使用して交換動作を実行することを拒否するか、または
もしそうでなければ、逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定するステップを実行するステップとをさらに実行する。
一実施形態において、プロセッサ101は、メモリ105に記憶されている分散データベースの負荷を平準化するためのプログラムを呼び出して、次の動作、
現在の統計期間として次の統計期間に入り、現在の統計期間の間にすべてのサーバの負荷をカウントするステップと、
最高から最低に向かってそれぞれのサーバの負荷に応じてそれぞれのサーバをランク付けし、現在の統計期間内でランク上位n個のサーバを高負荷サーバとして決定するステップと、
現在の統計期間内のn個の高負荷サーバが、前の統計期間におけるn個の高負荷サーバと同じであるかどうかを決定するステップと、
もしそうであれば、事前決定された負荷割合閾値を増やし、現在の統計期間内のすべての高負荷サーバを再平準化する、すなわち、高負荷サーバおよび低負荷サーバを再び横断し、対応する動作を実行するステップとをさらに実行する。
一実施形態において、プロセッサ101は、メモリ105に記憶されている分散データベースの負荷を平準化するためのプログラムを呼び出して、次の動作、
最高から最低に向かってそれぞれのサーバのCPU負荷に応じてそれぞれのサーバをランク付けし、ランク上位n1個のサーバを高負荷サーバの第1のグループとして決定し、ランク下位n1個のサーバを低負荷サーバの第1のグループとして決定するステップであって、n1はnよりも小さい正の整数である、ステップと、
高負荷サーバの第1のグループおよび低負荷サーバの第1のグループをそれぞれのサーバから除外し、最高から最低に向かってランク付けで残っているサーバのトラフィック負荷に応じて残っているサーバをランク付けし、ランク上位n2個のサーバを高負荷サーバの第2のグループとして決定し、ランク下位n2個のサーバを低負荷サーバの第2のグループとして決定するステップであって、n2はnよりも小さい正の整数であり、n1+n2=nである、ステップとをさらに実行する。
一実施形態において、プロセッサ101は、メモリ105に記憶されている分散データベースの負荷を平準化するためのプログラムコードを呼び出して、次の動作、
分散データシステムからアイドル状態のサーバの情報を取得するステップと、
第i位にランク付けされた高負荷サーバから第i位ソースデータスライスをアイドル状態のサーバに転送するステップと、
逆順で第i位にランク付けされた低負荷サーバから第i位ターゲットデータスライスを第i位にランク付けされた高負荷サーバに転送するステップと、
アイドル状態のサーバに転送された第i位ソースデータスライスを逆順で第i位にランク付けされた低負荷サーバに転送するステップとを実行する。
図1において説明されているように装置が配置されている分散データベースおよび分散データベースシステムの負荷を平準化するための装置は、サーバの負荷に応じてサーバをランク付けし、高負荷サーバおよび低負荷サーバをそれぞれフィルタ処理で取り除き、高負荷サーバ上で高負荷割合を有するデータスライスと低負荷サーバ上で低負荷割合を有するデータスライスとを交換し、それによって、一方では、高負荷サーバの負荷を効果的に低減し、他方では、低負荷サーバの負荷圧力の一部を低減し、低負荷サーバ上のデータスライスの一部が交換で出されたせいで新たに交換で入ったデータスライスに対する負荷空間の一部をスペアとして取っておき、それにより、高負荷サーバ上のデータスライスが低負荷サーバにおいて交換されたときに、これにより低負荷サーバの負荷が大きくなりすぎ得る状況を回避し、分散データベースシステム全体の負荷を効果的に低減する。
図2に示されているように、図2は、本開示による分散データベースの負荷を平準化するための方法の第1の実施形態のフローチャートである。本発明の実施形態において言及されている分散データベースの負荷を平準化するための方法は、以下のステップを含む。
ステップS10において、分散データベースシステム内のすべてのサーバの負荷および各サーバ上の各データスライスの負荷割合が、統計期間中にカウントされる。
本発明の実施形態の分散データベースシステムは、複数の共有サーバを備え、各サーバは、複数のデータスライスをロードされる。各サーバ上に、監視および報告用プログラムが予め配備され、これにより、データ要求の件数およびデータスライスがアクセスされたときに占有されているトラフィックの量などの情報を定期的間隔で分散データベースシステムの統計データベースに報告する。一方で、システムは、ウェブマスターサーバから現在の統計期間中にそれぞれのサーバの負荷、たとえば、CPU負荷およびトラフィック負荷も取得し得る。現在の統計期間内に報告されるデータ要求の件数および特定のデータスライスのアクセスのトラフィックの量およびデータスライスが配置されているサーバの負荷などの情報に従って、システムは、サーバの負荷におけるデータスライスの負荷割合、すなわち、サーバがサーバの全負荷においてデータスライスのアクセス要求を処理するときに引き起こされる負荷の割合を取得する。統計期間は、毎日24時間、またはそれ以上であるものとしてよい。24時間を例に取ると、監視および報告用プログラムは、5分おきにデータを報告するものとしてよく、次いで、24時間内にデータスライスに対して288件の報告情報がある。統計を出しやすくするために、288件の報告情報は、長い報告情報連鎖にマージされてよく、各データスライスは、1つの報告情報連鎖に対応する。一方で、システムは、毎日決まった時間に、たとえば、毎日1:00AMにウェブマスターサーバからそれぞれのサーバの負荷を取得し得る。
ステップS20において、それぞれのサーバは、最高から最低に向かってそれぞれのサーバの負荷に応じてランク付けされ、ランク上位n個のサーバは、高負荷サーバとして決定され、ランク下位n個のサーバは、低負荷サーバとして決定され、nは正の整数である。
負荷平準化を達成するために、本発明の実施形態では、高負荷サーバ上のデータスライスと低負荷サーバ上のデータスライスとを交換する。サーバは、最高から最低に向かってカウントされたそれぞれのサーバの負荷に応じてそれぞれのサーバをランク付けするものとしてよく、最高にランク付けされたサーバは最高負荷を有し、最低にランク付けされたサーバは最低負荷を有する。次いで、上位n個のサーバは、高負荷サーバとしてみなされ、下位n個のサーバは、低負荷サーバとしてみなされる。負荷平準化動作は、サーバの2つのグループ上のデータスライスを交換することである。
ステップS30において、第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスは、最高から最低に向かって第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスの負荷割合に応じてランク付けされ、逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスは、最高から最低に向かって逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスの負荷割合に応じてランク付けされ、iは正の整数であり、iはn以下である。
高負荷サーバおよび低負荷サーバは、ペアとして予め1つのグループにまとめられるものとしてよい。本発明の実施形態において、それぞれの高負荷サーバは、最高から最低に向かってそれぞれの高負荷サーバの負荷に応じてランク付けされるものとしてよく、それぞれの低負荷サーバも、最高から最低に向かってそれぞれの低負荷サーバの負荷に応じてランク付けされるものとしてよい。次いで、高負荷サーバのキューに入っている第i位にランク付けされた高負荷サーバおよび低負荷サーバのキューに入っている逆順で第i位にランク付けされた低負荷サーバは、ペアとして1つのグループにまとめられてよく、たとえば、最大の負荷を有する高負荷サーバと最低の負荷を有する低負荷サーバとをペアリングし、2番目に大きい負荷を有する高負荷サーバと2番目に低い負荷を有する低負荷サーバとをペアリングし、というように続くものとしてよい。または、高負荷サーバのキューに入っている第i位にランク付けされた高負荷サーバおよび低負荷サーバのキューに入っている第i位にランク付けされた低負荷サーバ、または高負荷サーバおよび低負荷サーバは、ランダムにペアリングされる。ペアリングされた高負荷サーバおよび低負荷サーバの各グループについて、サーバ上のそれぞれのデータスライスは、最高から最低に向かってそれぞれのデータスライスの負荷割合に応じてランク付けされる。
ステップS40において、第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスは、第i位ソースデータスライスとして決定され、逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスは、第i位ターゲットデータスライスとして決定される。
ステップS50において、第i位ソースデータスライスおよび第i位ターゲットデータスライスは、交換される。
高負荷サーバの負荷を低減するために、高負荷サーバ上のデータスライスが低負荷サーバに移動されるものとしてよく、低負荷サーバに負荷をかけすぎることによって引き起こされる低負荷サーバの過剰な負荷増大を防ぐために、本発明の実施形態では、高負荷サーバ上で比較的高い負荷を有する1つまたは複数のデータスライスのみを負荷サーバに移動し、その一方で、低負荷サーバ上で比較的低い負荷を有するデータスライスを高負荷サーバに移動するものとしてよく、2つのサーバからそれぞれ移動されたスライスの数は等しく、これにより、高負荷サーバと低負荷サーバとの間のデータスライスの交換を実現する。このようにして、高負荷サーバの負荷は、効率的に低減され、その一方で、低負荷サーバ上のデータスライスの一部は交換で出されるので、低負荷サーバの負荷圧力の一部は、低減され、新たに交換で入ったデータスライスに対する負荷空間の一部は、スペアに回され、それにより、高負荷サーバ上のデータスライスが低負荷サーバで交換で入り、そのため負荷サーバの負荷が大きくなりすぎ得る状況を効率的に回避し得る。
ステップS60において、すべての高負荷サーバが平準化されるかどうか、すなわち、高負荷サーバおよび低負荷サーバがすべて横断されるかどうかが決定され(たとえば、iがnに等しいかどうかを決定する)、もしそうであれば、プロセスはステップS61に進み、さもなければ、i+1で、プロセスはステップS30に戻る。
ステップ61において、平準化が完了したと決定される、すなわち、高負荷サーバおよび低負荷サーバが横断されたと決定される。
1つのグループにペアリングされた高負荷サーバおよび低負荷サーバ上のソースデータスライスおよびターゲットデータスライスが交換された後、プロセスは、ペアリングされた高負荷サーバおよび低負荷サーバの次のグループに進み、ソースデータスライスとターゲットデータスライスとを交換し、平準化プロセスは、ペアリングされた高負荷サーバおよび低負荷サーバのすべてのグループ上のソースデータスライスおよびターゲットデータスライスが交換されるまで続く。
本発明の実施形態の分散データベースシステムは、サーバの負荷に応じてサーバをランク付けし、高負荷サーバおよび低負荷サーバをそれぞれフィルタ処理で取り除き、高負荷サーバ上で高負荷割合を有するデータスライスと低負荷サーバ上で低負荷割合を有するデータスライスとを交換し、それによって、一方では、高負荷サーバの負荷を効果的に低減し、他方では、低負荷サーバの負荷圧力の一部を低減し、低負荷サーバ上のデータスライスの一部が交換で出されたせいで新たに交換で入ったデータスライスに対する負荷空間の一部をスペアとして取っておき、それにより、高負荷サーバ上のデータスライスが低負荷サーバにおいて交換されたときに、これにより低負荷サーバの負荷が大きくなりすぎ得る状況を回避し、分散データベースシステム全体の負荷を効果的に低減する。
図3に示されているように、図3は、本開示による分散データベースの負荷を平準化するための方法の第2の実施形態のフローチャートである。本発明の実施形態は、図2に示されている実施形態のステップを含み、ステップS40は、次に示すステップを含む。
ステップS41において、逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスは、第i位ターゲットデータスライスとして決定される。
本発明の実施形態において、最高から最低に向かって負荷に応じてランク付けされた低負荷サーバについて、前の方にランク付けされた低負荷サーバは、比較的高い負荷を有し、後の方にランク付けされた低負荷サーバは、比較的低い負荷を有し、その一方で、高負荷サーバについては、前の方にランク付けされた高負荷サーバは、比較的高い負荷を有し、後の方にランク付けされた高負荷サーバは、比較的低い負荷を有する。分散データベースシステムの負荷を最も効率的に平準化するために、最高の負荷を有するサーバは、最低の負荷を有するサーバとペアリングされるものとしてよく、2番目に高い負荷を有するサーバは、2番目に低い負荷を有するサーバとペアリングされるものとしてよく、というように続く、すなわち、第i位にランク付けされた高負荷サーバは、逆順で第i位にランク付けされた低負荷サーバとグループとしてペアリングされる。
ペアリングされた高負荷サーバと低負荷サーバのグループについて、本発明の実施形態では、高負荷サーバ上の1つのデータスライスと低負荷サーバ上の1つのデータスライスとを交換するだけであり、複数のデータスライスが交換されてよく、その場合、使用される方法は、データスライスの1つのペアを交換する仕方と同じ仕方で推定され得る。ターゲットデータスライスは、低負荷サーバ上で決定されるものとしてよく、高負荷サーバの負荷を著しく低減するために、低負荷サーバ上で最低負荷割合を有するデータスライスは、ターゲットデータスライスとして使用される。
ステップS42において、第i位にランク付けられている高負荷サーバ上で第j位のランク付け負荷割合を有するデータスライスは、第i位ソースデータスライスとして決定される。
ソースデータスライスは、高負荷サーバ上で決定されるが、決定されたソースデータスライスおよびターゲットデータスライスは、直接的に交換されないが、選択されたソースデータスライスが適切なものかどうかが事前決定される。ソースデータスライスが決定されるべきであるときに、第j位にランク付けされた負荷割合を有するデータスライスは、ソースデータスライスとして使用され、jは正の整数であり、jの初期値は1であり、jは高負荷サーバ上のデータスライスの数以下である。すなわち、最初に、ソースデータスライスは、最高負荷割合を有するデータスライスから始めて選択されるものとしてよく、事前決定の後、ソースデータスライスが交換されたとしても、分散データベースシステムの全体的負荷圧力がそれでも軽減され得ないと決定された場合に、2番目に高い負荷割合を有するデータスライスは、ソースデータスライスとして使用され、次いで、決定がしかるべく実行される。
ステップS43で、第i位ターゲットデータスライスおよび第i位ソースデータスライスが交換された後に、それぞれのサーバの中で逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、事前決定された負荷割合閾値よりも大きいかどうかが事前決定され、もしそうであれば、j+1とし、プロセスはステップS42に戻るか、またはそうでなければ、ステップS50が実行される。
事前決定を実行するときに、この方法は、ターゲットデータスライスおよびソースデータスライスはすでに交換されていると仮定し、低負荷サーバの全負荷割合からターゲットデータスライスの負荷割合を引いた割合を使用し、それをソースデータスライスの負荷割合と加え、次いで、計算された全負荷割合が事前決定された負荷割合閾値よりも大きいかどうかを比較する。もしそうであれば、このときに選択されたソースデータスライスは適切でないことが指示され、ソースデータスライスが低負荷サーバにおいて交換される場合に、これにより低負荷サーバの負荷が高くなりすぎることがあり、この場合、新しいソースデータスライスが再選択される必要があり、ソースデータスライスは、ソースデータスライスの次にランク付けされる負荷割合を有するデータスライスを使用して更新され、事前決定動作が再び実行される。プロセスは、それぞれのサーバの中で低負荷サーバの全負荷割合が事前決定された負荷割合閾値以下になるまで続き、これは現在選択されているソースデータスライスが適切であることを指示し、現在選択されているソースデータスライスおよびターゲットデータスライスが交換された場合に、現在選択されているソースデータスライスは、低負荷サーバの負荷が高くなりすぎることを引き起こさない。
本発明の実施形態において、交換によって低負荷サーバの負荷が高くなりすぎ得るかどうかが事前決定され、もしそうであれば、新しいリソースデータスライスが再選択され、事前決定が再実行され、これは、選択されたソースデータスライスがターゲットデータスライスと交換された後に低負荷サーバの負荷を高くしすぎないようにするまで行われる。このようにして、この方法は、高負荷サーバの負荷を低減し、その一方で、低負荷サーバの通常負荷を保証し、分散データベースシステム全体が効率よく稼動することを確実にする。
図4に示されているように、図4は、本開示による分散データベースの負荷を平準化するための方法の第3の実施形態のフローチャートである。本発明の実施形態は、図3に示されている実施形態におけるステップを含み、この方法は、ステップS41の前に次に示すステップをさらに含む。
ステップS44で、第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が事前決定された負荷割合閾値よりも大きいかどうかが決定され、もしそうであれば、ステップS45が実行されるか、またはそうでなければ、ステップS41が実行される。
ステップS45で、第i位にランク付けされた高負荷サーバ上のデータスライスは、交換動作を実行するために使用しない。
本発明の実施形態において、事前決定およびデータスライス平準化を実行する前に、これは、高負荷サーバ上のデータスライスの負荷割合が高すぎるかどうかも決定する。高すぎる負荷割合を有するデータスライスが低負荷サーバに移動された後に、これにより低負荷サーバの負荷が高くなりすぎる場合、および次の平準化サイクルを実行するときに、元の低負荷サーバは、高負荷サーバとして決定され、高すぎる負荷割合を有するデータスライスは、再交換で出され、これはデータスライスを繰り返し転送させる。この場合、転送動作を繰り返すことを回避するために、高負荷サーバは高すぎる負荷割合を有するデータスライスを有するが、他の仕方または手動で処理される。それに加えて、高負荷サーバとペアリングされる低負荷サーバについては、これは別の高負荷サーバとペアリングされ得るか、または次の平準化サイクルでペアリングされるように予約され得る。
図5に示されているように、図5は、本開示の分散データベースの負荷を平準化するための方法の第4の実施形態のフローチャートである。本発明の実施形態は、図2に示されている実施形態におけるステップを含み、この方法は、ステップS61の後に、次に示すステップをさらに含む。
ステップS71で、現在の統計期間として次の統計期間に入り、現在の統計期間のすべてのサーバの負荷がカウントされる。
ステップS72で、それぞれのサーバは、最高から最低に向かってそれぞれのサーバの負荷に応じてランク付けされ、ランク上位n個のサーバは、現在の統計期間内に高負荷サーバとして決定される。
ステップS73で、現在の統計期間内のn個の高負荷サーバが、前の統計期間におけるn個の高負荷サーバと同じであるかどうかが決定され、もしそうであれば、ステップS74が実行され、またはそうでなければ、プロセスはステップS10に戻る。
ステップS74で、事前決定された負荷割合閾値が増やされ、プロセスはステップS10に戻る。
本発明の実施形態は、平準化ポリシーが妥当であるかどうかも決定し、次の期間に稼動したときにそれぞれのサーバの負荷をカウントし、前の平準化動作の後のそれぞれのサーバの負荷が改善されているかどうかを決定する。たとえば、7日午前1時に、6日午前1時から7日午前1時までの間のそれぞれのサーバの負荷がカウントされ、第1の平準化動作がサーバに対して実行される。システムが稼動を続け、8日午前1時に、7日午前1時から8日午前1時までのそれぞれのサーバの負荷が評価され、7日の平準化動作の結果が妥当かどうかが決定され、もしそうであれば、第2の平準化動作を実行するために平準化ポリシーが使用されるか、またはそうでなければ、平準化ポリシーは調整され、次の平準化動作を実行するために新しい平準化ポリシーが使用される。統計データに従って、高負荷サーバはサーバの負荷に応じてフィルタ処理により取り除かれる。統計期間内の平準化および稼動の後、フィルタ処理で取り除かれた高負荷サーバおよび平準化の前の高負荷サーバが同じである場合、これは、前の統計期間内の高負荷サーバの負荷圧力が軽減されないことを指示しており、平準化ポリシーは機能しない。この場合、平準化ポリシーは、調整される必要があり、たとえば、事前決定された負荷割合閾値を増やし、比較的大きい負荷割合を有するデータスライスが高負荷サーバ上で選択されたときに、高負荷サーバ上の比較的大きい負荷割合が、低負荷サーバに移されるものとしてよく、これは平準化ポリシーの有効性を確実にする。
図6に示されているように、図6は、本開示による分散データベースの負荷を平準化するための方法の第5の実施形態のフローチャートである。本発明の実施形態は、図2に示されている実施形態におけるステップを含み、この方法のステップS20は、次に示すステップを含む。
ステップS21で、それぞれのサーバは、最高から最低に向かってそれぞれのサーバのCPU負荷に応じてランク付けされ、ランク上位n1個のサーバは、高負荷サーバの第1のグループとして決定され、ランク下位n1個のサーバは、低負荷サーバの第1のグループとして決定され、n1はnよりも小さい正の整数である。
ステップS22で、高負荷サーバの第1のグループおよび低負荷サーバの第1のグループは、それぞれのサーバから除外され、残っているサーバは、最高から最低に向かってランク付けで残っているサーバのトラフィック負荷に応じてランク付けされ、ランク上位n2個のサーバは、高負荷サーバの第2のグループとして決定され、ランク下位n2個のサーバは、低負荷サーバの第2のグループとして決定され、n2はnよりも小さい正の整数であり、n1+n2=nである。
本発明の実施形態において、高負荷サーバおよび低負荷サーバがフィルタ処理で取り除かれるときに、サーバは、CPU負荷およびトラフィック負荷態様でランク付けされるものとしてよく、CPU負荷およびトラフィック負荷の優先度は、予め構成されるものとしてよい。たとえば、本発明の実施形態において、CPU負荷の優先度は、トラフィック負荷の優先度よりも高い。次いで、最初に、システム内のサーバは、最高から最低に向かってそのCPU負荷に応じてランク付けされ、高負荷サーバの第1の集合および低負荷サーバの第1の集合が、フィルタ処理で取り除かれ、次いで、フィルタ処理による取り除き動作が残りのサーバについて実行され、それにより、最高から最低に向かってそのトラフィック負荷に応じて残りのサーバをランク付けし、高負荷サーバの第2の集合および低負荷サーバの第2の集合をフィルタ処理で取り除く。ペアリング動作を実行するときに、高負荷サーバの第1の集合は、低負荷サーバの第1の集合と一対一でペアリングされ、高負荷サーバの第2の集合および低負荷サーバの第2の集合は、一対一でペアリングされる。データスライスが交換されるべきであるときに、それらは、高負荷サーバの第1の集合と低負荷サーバの第1の集合との間、および高負荷サーバの第2の集合と低負荷サーバの第2の集合との間で交換される。本発明の実施形態では、データスライスがそれぞれCPU負荷態様およびトラフィック負荷態様から交換される必要のあるサーバをフィルタ処理で取り除くので、データスライスの交換はターゲットとされることがより多くなり、このことは、さらに平準化ポリシーをより効果的なものにし、分散データベースの負荷全体を低減するために有利である。
図7に示されているように、図7は、本開示の分散データベースの負荷を平準化するための方法の第6の実施形態のフローチャートである。本発明の実施形態は、図2に示されている実施形態におけるステップを含み、ステップS50は、次に示すステップを含む。
ステップS51で、アイドル状態のサーバの取得情報が、分散データシステムから取得される。
ステップS52で、第i位ソースデータスライスは、第i位にランク付けされた高負荷サーバからアイドル状態のサーバに転送される。
ステップS53で、第i位ターゲットデータスライスは、逆順で第i位にランク付けされた低負荷サーバから第i位にランク付けされた高負荷サーバに転送される。
ステップS54で、アイドル状態のサーバに転送された第i位ソースデータスライスは、逆順で第i位にランク付けされた低負荷サーバに転送される。
本発明の実施形態において、低負荷サーバが空いていないときに、ソースデータスライスが低負荷サーバに転送された場合、これにより低負荷サーバの負荷が高くなりすぎ、データ転送の効率に影響を及ぼすことがあるという事実を回避するために、分散データベースシステムは、空きリソースの一部、すなわち、アイドル状態のサーバについて予約され、ソースデータスライスは、最初に、高負荷サーバからアイドル状態のサーバに転送され、次いで、ターゲットデータスライスは、低負荷サーバから高負荷サーバに転送され、ソースデータスライスは、低負荷サーバに転送される。しかしながら、低負荷サーバが空いている場合、ソースデータスライスは、高負荷サーバから低負荷サーバに直接転送されるものとしてよく、次いで、ターゲットデータスライスは、低負荷サーバから高負荷サーバに転送される。低負荷サーバが空いているかどうかが事前決定されるものとしてよく、もしそうならば、交換動作が直接実行されるか、またはそうでなければ、空きサーバを通じて実行され、このことはデータスライスを転送する効率を改善し、負荷平準化が効率的に実行されることを確実にする。
図8に示されているように、図8は、本開示による分散データベースの負荷を平準化するための装置のモジュールの第1の実施形態の概略図である。本発明の実施形態により実現される分散データベースの負荷を平準化するための装置は、次のものを備える。
統計期間中に分散データベースシステム内のすべてのサーバの負荷および各サーバ上の各データスライスの負荷割合をカウントするための統計モジュール10、
最高から最低に向かってそれぞれのサーバの負荷に応じてそれぞれのサーバをランク付けし、ランク上位n個のサーバを高負荷サーバとして決定し、ランク下位n個のサーバを低負荷サーバとして決定し、nは正の整数であり、最高から最低に向かって第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスをランク付けし、最高から最低に向かって逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスをランク付けするための、iは正の整数であり、iはn以下である、ランク付けモジュール20、および
第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスを第i位ソースデータスライスとして決定し、逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定し、第i位ソースデータスライスと第i位ターゲットデータスライスとを交換するための調整モジュール30であって、調整モジュール30のプロセスは、すべての高負荷サーバが平準化される、すなわち、すべての高負荷サーバおよび低負荷サーバが横断されるまで続行される、調整モジュール30。
本発明の実施形態の分散データベースシステムは、複数の共有サーバを備え、各サーバは、複数のデータスライスをロードされる。各サーバ上に、監視および報告用プログラムが予め配備され、これにより、データ要求の件数およびデータスライスがアクセスされたときに占有されているトラフィックの量などの情報を定期的間隔で分散データベースシステムの統計データベースに報告する。一方で、システムは、ウェブマスターサーバから現在の統計期間中にそれぞれのサーバの負荷、たとえば、CPU負荷およびトラフィック負荷も取得し得る。現在の統計期間内に報告されるデータ要求の件数および特定のデータスライスのアクセスのトラフィックの量およびデータスライスが配置されているサーバの負荷などの情報に従って、システムは、サーバの負荷におけるデータスライスの負荷割合、すなわち、サーバがサーバの全負荷においてデータスライスのアクセス要求を処理するときに引き起こされる負荷の割合を取得する。統計期間は、毎日24時間、またはそれ以上であるものとしてよい。24時間を例に取ると、監視および報告用プログラムは、5分おきにデータを報告するものとしてよく、次いで、24時間内にデータスライスに対して288件の報告情報がある。統計を出しやすくするために、288件の報告情報は、長い報告情報連鎖にマージされてよく、各データスライスは、1つの報告情報連鎖に対応する。一方で、システムは、毎日決まった時間に、たとえば、毎日1:00AMにウェブマスターサーバからそれぞれのサーバの負荷を取得し得る。
負荷平準化を達成するために、本発明の実施形態では、高負荷サーバ上のデータスライスと低負荷サーバ上のデータスライスとを交換する。サーバは、最高から最低に向かってカウントされたそれぞれのサーバの負荷に応じてそれぞれのサーバをランク付けするものとしてよく、最高にランク付けされたサーバは最高負荷を有し、最低にランク付けされたサーバは最低負荷を有する。次いで、上位n個のサーバは、高負荷サーバとしてみなされ、下位n個のサーバは、低負荷サーバとしてみなされる。負荷平準化動作は、サーバの2つのグループ上のデータスライスを交換することである。
高負荷サーバおよび低負荷サーバは、ペアとして予め1つのグループにまとめられるものとしてよい。本発明の実施形態において、それぞれの高負荷サーバは、最高から最低に向かってそれぞれの高負荷サーバの負荷に応じてランク付けされるものとしてよく、それぞれの低負荷サーバも、最高から最低に向かってそれぞれの低負荷サーバの負荷に応じてランク付けされるものとしてよい。次いで、高負荷サーバのキューに入っている第i位にランク付けされた高負荷サーバおよび低負荷サーバのキューに入っている逆順で第i位にランク付けされた低負荷サーバは、ペアとして1つのグループにまとめられてよく、たとえば、最大の負荷を有する高負荷サーバと最低の負荷を有する低負荷サーバとをペアリングし、2番目に大きい負荷を有する高負荷サーバと2番目に低い負荷を有する低負荷サーバとをペアリングし、というように続くものとしてよい。または、高負荷サーバのキューに入っている第i位にランク付けされた高負荷サーバおよび低負荷サーバのキューに入っている第i位にランク付けされた低負荷サーバ、または高負荷サーバおよび低負荷サーバは、ランダムにペアリングされる。ペアリングされた高負荷サーバおよび低負荷サーバの各グループについて、サーバ上のそれぞれのデータスライスは、最高から最低に向かってそれぞれのデータスライスの負荷割合に応じてランク付けされる。
高負荷サーバの負荷を低減するために、高負荷サーバ上のデータスライスが低負荷サーバに移動されるものとしてよく、低負荷サーバに負荷をかけすぎることによって引き起こされる低負荷サーバの過剰な負荷増大を防ぐために、本発明の実施形態では、高負荷サーバ上で比較的高い負荷を有する1つまたは複数のデータスライスのみを負荷サーバに移動し、その一方で、低負荷サーバ上で比較的低い負荷を有するデータスライスを高負荷サーバに移動するものとしてよく、2つのサーバからそれぞれ移動されたスライスの数は等しく、これにより、高負荷サーバと低負荷サーバとの間のデータスライスの交換を実現する。このようにして、高負荷サーバの負荷は、効率的に低減され、その一方で、低負荷サーバ上のデータスライスの一部は交換で出されるので、低負荷サーバの負荷圧力の一部は、低減され、新たに交換で入ったデータスライスに対する負荷空間の一部は、スペアに回され、それにより、高負荷サーバ上のデータスライスが低負荷サーバで交換で入り、そのため負荷サーバの負荷が大きくなりすぎ得る状況を効率的に回避し得る。
1つのグループにペアリングされた高負荷サーバおよび低負荷サーバ上のソースデータスライスおよびターゲットデータスライスが交換された後、プロセスは、ペアリングされた高負荷サーバおよび低負荷サーバの次のグループに進み、ソースデータスライスとターゲットデータスライスとを交換し、平準化プロセスは、ペアリングされた高負荷サーバおよび低負荷サーバのすべてのグループ上のソースデータスライスおよびターゲットデータスライスが交換されるまで続く。
本発明の実施形態の分散データベースシステムは、サーバの負荷に応じてサーバをランク付けし、高負荷サーバおよび低負荷サーバをそれぞれフィルタ処理で取り除き、高負荷サーバ上で高負荷割合を有するデータスライスと低負荷サーバ上で低負荷割合を有するデータスライスとを交換し、それによって、一方では、高負荷サーバの負荷を効果的に低減し、他方では、低負荷サーバの負荷圧力の一部を低減し、低負荷サーバ上のデータスライスの一部が交換で出されたせいで新たに交換で入ったデータスライスに対する負荷空間の一部をスペアとして取っておき、それにより、高負荷サーバ上のデータスライスが低負荷サーバにおいて交換されたときに、これにより低負荷サーバの負荷が大きくなりすぎ得る状況を回避し、分散データベースシステム全体の負荷を効果的に低減する。
図9に示されているように、図9は、本開示による分散データベースの負荷を平準化するための装置のモジュールの第2の実施形態の概略図である。本発明の実施形態は、図8に示されている実施形態のモジュールを含み、決定モジュール40をさらに含む。
調整モジュール30は、逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定し、第i位にランク付けられている高負荷サーバ上で第j位のランク付け負荷割合を有するデータスライスを第i位ソースデータスライスとして決定するようにさらに構成され、jは正の整数であり、jの初期値は1であり、jは第i位にランク付けされた高負荷サーバ上のデータスライスの数以下である。
決定モジュール40は、それぞれのサーバの中で逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、第i位ターゲットデータスライスおよび第i位ソースデータスライスが交換された後に事前決定された負荷割合閾値よりも大きいかどうかを事前決定するように構成される。
調整モジュール30は、決定モジュール40が、それぞれのサーバの中で逆順で第i位にランク付けされた低下負荷サーバの全負荷割合が事前決定された負荷割合閾値よりも大きいと事前決定したときに、第i位にランク付けされた高負荷サーバ上で第j位にランク付けされた負荷割合を有するデータスライスの次のデータスライスを使用して第i位ソースデータスライスを更新するようにさらに構成される。
決定モジュール40は、それぞれのサーバの中で逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、第i位ターゲットデータスライスおよび更新された第i位ソースデータスライスが交換された後に、逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が事前決定された負荷割合閾値以下になるまで、事前決定された負荷割合閾値よりも大きいかどうかを事前決定するようにさらに構成される。
本発明の実施形態において、最高から最低に向かってその負荷に応じてランク付けされた低負荷サーバについて、前の方にランク付けされた低負荷サーバは、比較的高い負荷を有し、後の方にランク付けされた低負荷サーバは、比較的低い負荷を有する。その一方で、高負荷サーバについては、前の方にランク付けされた高負荷サーバは、比較的高い負荷を有し、後の方にランク付けされた高負荷サーバは、比較的低い負荷を有する。分散データベースシステムの負荷を最も効率的に平準化するために、最高の負荷を有するサーバは、最低の負荷を有するサーバとペアリングされるものとしてよく、2番目に高い負荷を有するサーバは、2番目に低い負荷を有するサーバとペアリングされるものとしてよく、というように続く、すなわち、第i位にランク付けされた高負荷サーバは、逆順で第i位にランク付けされた低負荷サーバとグループとしてペアリングされる。
ペアリングされた高負荷サーバと低負荷サーバのグループについて、本発明の実施形態では、高負荷サーバ上の1つのデータスライスと低負荷サーバ上の1つのデータスライスとを交換するだけであり、複数のデータスライスが交換されてよく、その場合、使用される方法は、データスライスの1つのペアを交換する仕方と同じ仕方で推定され得る。ターゲットデータスライスは、低負荷サーバ上で決定されるものとしてよく、高負荷サーバの負荷を著しく低減するために、低負荷サーバ上で最低負荷割合を有するデータスライスは、ターゲットデータスライスとして使用される。
ソースデータスライスは、高負荷サーバ上で決定されるが、決定されたソースデータスライスおよびターゲットデータスライスは、直接的に交換されないが、選択されたソースデータスライスが適切なものかどうかが事前決定される。ソースデータスライスが決定されるべきであるときに、第j位にランク付けされた負荷割合を有するデータスライスは、ソースデータスライスとして使用され、jは正の整数であり、jの初期値は1であり、jは高負荷サーバ上のデータスライスの数以下である。すなわち、最初に、ソースデータスライスは、最高負荷割合を有するデータスライスから始めて選択されるものとしてよく、事前決定の後、ソースデータスライスが交換されたとしても、分散データベースシステムの全体的負荷圧力がそれでも軽減され得ないと決定された場合に、2番目に高い負荷割合を有するデータスライスは、ソースデータスライスとして使用され、次いで、決定がしかるべく実行される。
事前決定を実行するときに、この方法は、ターゲットデータスライスおよびソースデータスライスはすでに交換されていると仮定し、低負荷サーバの全負荷割合からターゲットデータスライスの負荷割合を引いた割合を使用し、それをソースデータスライスの負荷割合と加え、次いで、計算された全負荷割合が事前決定された負荷割合閾値よりも大きいかどうかを比較する。もしそうであれば、このときに選択されたソースデータスライスは適切でないことが指示され、ソースデータスライスが低負荷サーバにおいて交換される場合に、これにより低負荷サーバの負荷が高くなりすぎることがあり、この場合、新しいソースデータスライスが再選択される必要があり、ソースデータスライスは、ソースデータスライスの次にランク付けされる負荷割合を有するデータスライスを使用して更新され、事前決定動作が再び実行される。プロセスは、それぞれのサーバの中で低負荷サーバの全負荷割合が事前決定された負荷割合閾値以下になるまで続き、これは現在選択されているソースデータスライスが適切であることを指示し、現在選択されているソースデータスライスおよびターゲットデータスライスが交換された場合に、現在選択されているソースデータスライスは、低負荷サーバの負荷が高くなりすぎることを引き起こさない。
本発明の実施形態において、交換によって低負荷サーバの負荷が高くなりすぎ得るかどうかが事前決定され、もしそうであれば、新しいリソースデータスライスが再選択され、事前決定が再実行され、これは、選択されたソースデータスライスがターゲットデータスライスと交換された後に低負荷サーバの負荷を高くしすぎないようにするまで行われる。このようにして、この方法は、高負荷サーバの負荷を低減し、その一方で、低負荷サーバの通常負荷を保証し、分散データベースシステム全体が効率よく稼動することを確実にする。
さらに、決定モジュール40は、第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が事前決定された負荷割合閾値よりも大きいかどうかを決定するようにさらに構成され、
もしそうであれば、調整モジュール30は、第i位にランク付けされた高負荷サーバ上のデータスライスを使用して交換動作を実行することを拒否するようにさらに構成されるか、または
もしそうでなければ、調整モジュール30は、逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定するステップを実行するようにさらに構成される。
本発明の実施形態において、事前決定およびデータスライス平準化を実行する前に、これは、高負荷サーバ上のデータスライスの負荷割合が高すぎるかどうかも決定する。高すぎる負荷割合を有するデータスライスが低負荷サーバに移動された後に、これにより低負荷サーバの負荷が高くなりすぎる場合、および次の平準化サイクルを実行するときに、元の低負荷サーバは、高負荷サーバとして決定され、高すぎる負荷割合を有するデータスライスは、再交換で出され、これはデータスライスを繰り返し転送させる。この場合、転送動作を繰り返すことを回避するために、高負荷サーバは高すぎる負荷割合を有するデータスライスを有するが、他の仕方または手動で処理される。それに加えて、高負荷サーバとペアリングされる低負荷サーバについては、これは別の高負荷サーバとペアリングされ得るか、または次の平準化サイクルでペアリングされるように予約され得る。
さらに、統計モジュール10は、現在の統計期間として次の統計期間に入り、現在の統計期間の間にすべてのサーバの負荷をカウントするようにさらに構成される。
ランク付けモジュール20は、最高から最低に向かってそれぞれのサーバの負荷に応じてそれぞれのサーバをランク付けし、ランク上位n個のサーバを現在の統計期間内の高負荷サーバとして決定するようにさらに構成される。
決定モジュール40は、現在の統計期間内のn個の高負荷サーバが、前の統計期間におけるn個の高負荷サーバと同じであるかどうかを決定するように構成される。
もしそうならば、調整モジュール30は、事前決定された負荷割合閾値を増やし、現在の統計期間内のすべての高負荷サーバを再平準化する、すなわち、高負荷サーバおよび低負荷サーバを再び横断し、対応する動作を実行するようにさらに構成される。
本発明の実施形態は、平準化ポリシーが妥当であるかどうかも決定し、次の期間に稼動したときにそれぞれのサーバの負荷をカウントし、前の平準化動作の後のそれぞれのサーバの負荷が改善されているかどうかを決定する。たとえば、7日午前1時に、6日午前1時から7日午前1時までの間のそれぞれのサーバの負荷がカウントされ、第1の平準化動作がサーバに対して実行される。システムが稼動を続け、8日午前1時に、7日午前1時から8日午前1時までのそれぞれのサーバの負荷が評価され、7日の平準化動作の結果が妥当かどうかが決定され、もしそうであれば、第2の平準化動作を実行するために平準化ポリシーが使用されるか、またはそうでなければ、平準化ポリシーは調整され、次の平準化動作を実行するために新しい平準化ポリシーが使用される。統計データに従って、高負荷サーバはサーバの負荷に応じてフィルタ処理により取り除かれる。統計期間内の平準化および稼動の後、フィルタ処理で取り除かれた高負荷サーバおよび平準化の前の高負荷サーバが同じである場合、これは、前の統計期間内の高負荷サーバの負荷圧力が軽減されないことを指示しており、平準化ポリシーは機能しない。この場合、平準化ポリシーは、調整される必要があり、たとえば、事前決定された負荷割合閾値を増やし、比較的大きい負荷割合を有するデータスライスが高負荷サーバ上で選択されたときに、高負荷サーバ上の比較的大きい負荷割合が、低負荷サーバに移されるものとしてよく、これは平準化ポリシーの有効性を確実にする。
さらに、ランク付けモジュール20は、
最高から最低に向かってそれぞれのサーバのCPU負荷に応じてそれぞれのサーバをランク付けし、ランク上位n1個のサーバを高負荷サーバの第1のグループとして決定し、ランク下位n1個のサーバを低負荷サーバの第1のグループとして決定し、n1はnよりも小さい正の整数であり、
高負荷サーバの第1のグループおよび低負荷サーバの第1のグループをそれぞれのサーバから除外し、最高から最低に向かってランク付けで残っているサーバのトラフィック負荷に応じて残っているサーバをランク付けし、ランク上位n2個のサーバを高負荷サーバの第2のグループとして決定し、ランク下位n2個のサーバを低負荷サーバの第2のグループとして決定するように構成され、n2はnよりも小さい正の整数であり、n1+n2=nである。
本発明の実施形態において、高負荷サーバおよび低負荷サーバがフィルタ処理で取り除かれるときに、サーバは、CPU負荷およびトラフィック負荷態様でランク付けされるものとしてよく、CPU負荷およびトラフィック負荷の優先度は、予め構成されるものとしてよい。たとえば、本発明の実施形態において、CPU負荷の優先度は、トラフィック負荷の優先度よりも高い。次いで、最初に、システム内のサーバは、最高から最低に向かってそのCPU負荷に応じてランク付けされ、高負荷サーバの第1の集合および低負荷サーバの第1の集合が、フィルタ処理で取り除かれ、次いで、フィルタ処理による取り除き動作が残りのサーバについて実行され、それにより、最高から最低に向かってそのトラフィック負荷に応じて残りのサーバをランク付けし、高負荷サーバの第2の集合および低負荷サーバの第2の集合をフィルタ処理で取り除く。ペアリング動作を実行するときに、高負荷サーバの第1の集合は、低負荷サーバの第1の集合と一対一でペアリングされ、高負荷サーバの第2の集合および低負荷サーバの第2の集合は、一対一でペアリングされる。データスライスが交換されるべきであるときに、それらは、高負荷サーバの第1の集合と低負荷サーバの第1の集合との間、および高負荷サーバの第2の集合と低負荷サーバの第2の集合との間で交換される。本発明の実施形態では、データスライスがそれぞれCPU負荷態様およびトラフィック負荷態様から交換される必要のあるサーバをフィルタ処理で取り除くので、データスライスの交換はターゲットとされることがより多くなり、このことは、さらに平準化ポリシーをより効果的なものにし、分散データベースの負荷全体を低減するために有利である。
さらに、調整モジュール30は、
分散データシステムからアイドル状態のサーバの情報を取得し、
第i位にランク付けされた高負荷サーバから第i位ソースデータスライスをアイドル状態のサーバに転送し、
逆順で第i位にランク付けされた低負荷サーバから第i位ターゲットデータスライスを第i位にランク付けされた高負荷サーバに転送し、
アイドル状態のサーバに転送された第i位ソースデータスライスを逆順で第i位にランク付けされた低負荷サーバに転送するように構成される。
本発明の実施形態において、低負荷サーバが空いていないときに、ソースデータスライスが低負荷サーバに転送された場合、これにより低負荷サーバの負荷が高くなりすぎ、データ転送の効率に影響を及ぼすことがあるという事実を回避するために、分散データベースシステムは、空きリソースの一部、すなわち、アイドル状態のサーバについて予約され、ソースデータスライスは、最初に、高負荷サーバからアイドル状態のサーバに転送され、次いで、ターゲットデータスライスは、低負荷サーバから高負荷サーバに転送され、ソースデータスライスは、低負荷サーバに転送される。しかしながら、低負荷サーバが空いている場合、ソースデータスライスは、高負荷サーバから低負荷サーバに直接転送されるものとしてよく、次いで、ターゲットデータスライスは、低負荷サーバから高負荷サーバに転送される。低負荷サーバが空いているかどうかが事前決定されるものとしてよく、もしそうならば、交換動作が直接実行されるか、またはそうでなければ、空きサーバを通じて実行され、このことはデータスライスを転送する効率を改善し、負荷平準化が効率的に実行されることを確実にする。
本明細書において、「第1」および「第2」のような用語は、一方の実体または動作を他方の実体または動作から差別化するためにのみ使用され、これらの実体または動作の間の実際の関係もしくは順序を示すために必ずしも使用されないことに留意されたい。さらには、「備える」、「含む」などの用語、またはその変化形は、「限定はしないが含む」を意味する。したがって、一連の要素を含むプロセス、方法、対象、またはデバイスは、これらの要素を含むだけでなく、明示的に指定されない他の要素も含むか、またはこれらのプロセス、方法、対象、またはデバイスの固有の要素をさらに含み得る。それ以上制限がない場合、「1つの...を含む」によって指定され得る要素の文脈において、指定された要素を含むプロセス、方法、対象、またはデバイスは、他の同一の要素を含み得る。
本開示の実施形態の順序番号は、説明目的の番号にすぎず、実施形態の上下関係に対する制限と解釈されるべきでない。
実施形態の説明を通じて、当業者は、前述の実施形態における方法が必要な一般的ハードウェアプラットフォームとソフトウェアとによって実装されるものとしてよく、またハードウェアによっても実装され得ることを認識するであろう。しかしながら、ほとんどの場合において、前者が好ましい。この理解に基づき、従来の技術に寄与する本開示の技術的解決方法の一部分は、ソフトウェア製品として具現化されるものとしてよく、コンピュータソフトウェア製品は、端末デバイス(たとえば、携帯電話、コンピュータ、サーバ、またはネットワークデバイス)が本開示の様々な実施形態における方法を実行することを可能にするいくつかの命令を含めて、記憶媒体(たとえば、ROM/RAM、磁気ディスク、または光ディスク)上に記憶される。
前述の説明は、本発明の単に例示的な実施形態にすぎず、本発明の保護範囲を制限することを意図されていない。本発明の精神および原理から逸脱することなく行われる修正、同等物の置換、または改善は、本発明の保護範囲内に収まるであろう。
10 統計モジュール
20 ランク付けモジュール
30 調整モジュール
40 決定モジュール
101 プロセッサ
102 通信バス
103 ユーザインターフェース
104 ネットワークインターフェース
105 メモリ

Claims (18)

  1. 分散データベースの負荷を平準化するための方法であって、
    分散データベースの負荷を平準化するための装置によって、
    統計期間中に分散データベースシステム内のすべてのサーバの負荷および各サーバ上の各データスライスの負荷割合をカウントするステップと、
    最高から最低に向かってそれぞれのサーバの負荷に応じて前記それぞれのサーバをランク付けし、ランク上位n個のサーバを高負荷サーバとして決定し、ランク下位n個のサーバを低負荷サーバとして決定するステップであって、nは正の整数である、ステップと、
    前記高負荷サーバおよび前記低負荷サーバを横断して動作を実行するステップとを含み、前記動作は、
    最高から最低に向かって第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて前記第i位にランク付けされた高負荷サーバ上の前記それぞれのデータスライスをランク付けし、最高から最低に向かって逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて前記逆順で第i位にランク付けされた低負荷サーバ上の前記それぞれのデータスライスをランク付けするステップであって、iは正の整数であり、iはn以下である、ステップと、
    前記第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスを第i位ソースデータスライスとして決定し、前記逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定し、前記第i位ターゲットデータスライスと前記第i位ソースデータスライスとを交換すると仮定し、当該交換をした場合のサーバの全体の負荷割合を計算し、前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、事前決定された負荷割合閾値以下になると決定したことに応じて、前記第i位ソースデータスライスと前記第i位ターゲットデータスライスとを交換するステップとを含む方法。
  2. 前記第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスを第i位ソースデータスライスとして決定し、前記逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定することは、
    前記逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを前記第i位ターゲットデータスライスとして決定するステップと、
    前記第i位にランク付けられている高負荷サーバ上で第j位のランク付け負荷割合を有するデータスライスを前記第i位ソースデータスライスとして決定するステップであって、jは正の整数であり、jの初期値は1であり、jは前記第i位にランク付けされた高負荷サーバ上のデータスライスの数以下である、ステップと、
    前記第i位ターゲットデータスライスと前記第i位ソースデータスライスとを交換すると仮定し、当該交換をした場合のサーバの全体の負荷割合を計算し、前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、前記事前決定された負荷割合閾値よりも大きいかどうかを決定するステップと、
    前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、前記事前決定された負荷割合閾値よりも大きいと決定した場合、前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの前記全体の負荷割合が前記事前決定された負荷割合閾値以下になるまで、前記第i位にランク付けされた高負荷サーバ上で前記第j位のランク付け負荷割合を有する前記データスライスの次のデータスライスを新たな第i位ソースデータスライスとし、前記第i位ターゲットデータスライス前記新たな第i位ソースデータスライスとを交換すると仮定し、当該交換をした場合のサーバの全体の負荷割合を計算し、前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの前記全体の負荷割合が、前記事前決定された負荷割合閾値よりも大きいかどうかを決定するステップとを含む請求項1に記載の方法。
  3. 前記逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを前記第i位ターゲットデータスライスとして決定する前記ステップの前に、前記方法は、
    前記第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が前記事前決定された負荷割合閾値よりも大きいかどうかを決定するステップと、
    前記第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が前記事前決定された負荷割合閾値よりも大きいと決定した場合、前記第i位にランク付けされた高負荷サーバ上のデータスライスを使用して交換動作を実行することを拒否するか、または
    前記第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が前記事前決定された負荷割合閾値以下であると決定した場合、前記逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを前記第i位ターゲットデータスライスとして決定する前記ステップを実行するステップとをさらに含む請求項2に記載の方法。
  4. 前記高負荷サーバおよび前記低負荷サーバを横断して前記動作を実行する前記ステップの後に、前記方法は、
    現在の統計期間として次の統計期間に入り、前記現在の統計期間の間にすべての前記サーバの負荷をカウントするステップと、
    最高から最低に向かって前記それぞれのサーバの負荷に応じて前記それぞれのサーバをランク付けし、前記現在の統計期間内でランク上位n個のサーバを高負荷サーバとして決定するステップと、
    前記現在の統計期間内の前記n個の高負荷サーバが、前の統計期間における前記n個の高負荷サーバと同じであるかどうかを決定するステップと、
    前記現在の統計期間内の前記n個の高負荷サーバが、前の統計期間における前記n個の高負荷サーバと同じであると決定した場合、前記事前決定された負荷割合閾値を増やし、前記現在の統計期間内のすべての前記高負荷サーバを再平準化する、すなわち、高負荷サーバおよび低負荷サーバを再び横断し、対応する動作を実行するステップとをさらに含む請求項2または3に記載の方法。
  5. 最高から最低に向かってそれぞれのサーバの負荷に応じて前記それぞれのサーバをランク付けし、ランク上位n個のサーバを高負荷サーバとして決定し、ランク下位n個のサーバを低負荷サーバとして決定する前記ステップは、
    最高から最低に向かって前記それぞれのサーバのCPU負荷に応じて前記それぞれのサーバをランク付けし、ランク上位n1個のサーバを高負荷サーバの第1のグループとして決定し、ランク下位n1個のサーバを低負荷サーバの第1のグループとして決定するステップであって、n1はnよりも小さい正の整数である、ステップと、
    高負荷サーバの前記第1のグループおよび低負荷サーバの前記第1のグループを前記それぞれのサーバから除外し、最高から最低に向かって前記ランク付けで残っているサーバのトラフィック負荷に応じて残っているサーバをランク付けし、ランク上位n2個のサーバを高負荷サーバの第2のグループとして決定し、ランク下位n2個のサーバを低負荷サーバの第2のグループとして決定するステップであって、n2はnよりも小さい正の整数であり、n1+n2=nである、ステップとを含む請求項1から3のいずれか一項に記載の方法。
  6. 前記第i位ソースデータスライスと前記第i位ターゲットデータスライスとを交換する前記ステップは、
    前記分散データベースシステムからアイドル状態のサーバの情報を取得するステップと、
    前記第i位にランク付けされた高負荷サーバから前記第i位ソースデータスライスを前記アイドル状態のサーバに転送するステップと、
    前記逆順で第i位にランク付けされた低負荷サーバから前記第i位ターゲットデータスライスを前記第i位にランク付けされた高負荷サーバに転送するステップと、
    前記アイドル状態のサーバに転送された前記第i位ソースデータスライスを前記逆順で第i位にランク付けされた低負荷サーバに転送するステップとを含む請求項1から3のいずれか一項に記載の方法。
  7. プロセッサとメモリとを備える、分散データベースの負荷を平準化するための装置であって、前記メモリは前記プロセッサによって実行可能な命令を記憶し、前記命令は前記プロセッサに、
    統計期間中に分散データベースシステム内のすべてのサーバの負荷および各サーバ上の各データスライスの負荷割合をカウントするステップと、
    最高から最低に向かってそれぞれのサーバの負荷に応じて前記それぞれのサーバをランク付けし、ランク上位n個のサーバを高負荷サーバとして決定し、ランク下位n個のサーバを低負荷サーバとして決定するステップであって、nは正の整数である、ステップと、
    前記高負荷サーバおよび前記低負荷サーバを横断して動作を実行するステップとを実行し、前記動作は、
    最高から最低に向かって第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて前記第i位にランク付けされた高負荷サーバ上の前記それぞれのデータスライスをランク付けし、最高から最低に向かって逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて前記逆順で第i位にランク付けされた低負荷サーバ上の前記それぞれのデータスライスをランク付けするステップであって、iは正の整数であり、iはn以下である、ステップと、
    前記第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスを第i位ソースデータスライスとして決定し、前記逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定し、前記第i位ターゲットデータスライスと前記第i位ソースデータスライスとを交換すると仮定し、当該交換をした場合のサーバの全体の負荷割合を計算し、前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、事前決定された負荷割合閾値以下になると決定したことに応じて、前記第i位ソースデータスライスと前記第i位ターゲットデータスライスとを交換するステップとを実行させる装置。
  8. 前記第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスを第i位ソースデータスライスとして決定し、前記逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定する前記ステップは、
    前記逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを前記第i位ターゲットデータスライスとして決定するステップと、
    前記第i位にランク付けられている高負荷サーバ上で第j位のランク付け負荷割合を有するデータスライスを前記第i位ソースデータスライスとして決定するステップであって、jは正の整数であり、jの初期値は1であり、jは前記第i位にランク付けされた高負荷サーバ上のデータスライスの数以下である、ステップと、
    前記第i位ターゲットデータスライスと前記第i位ソースデータスライスとを交換すると仮定し、当該交換をした場合のサーバの全体の負荷割合を計算し、前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、前記事前決定された負荷割合閾値よりも大きいかどうかを決定するステップと、
    前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、前記事前決定された負荷割合閾値よりも大きいと決定した場合、前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの前記全体の負荷割合が前記事前決定された負荷割合閾値以下になるまで、前記第i位にランク付けされた高負荷サーバ上で前記第j位のランク付け負荷割合を有する前記データスライスの次のデータスライスを新たな第i位ソースデータスライスとし、前記第i位ターゲットデータスライス前記新たな第i位ソースデータスライスとを交換すると仮定し、当該交換をした場合のサーバの全体の負荷割合を計算し、前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの前記全体の負荷割合が、前記事前決定された負荷割合閾値よりも大きいかどうかを決定するステップとを含む請求項7に記載の装置。
  9. 前記命令は前記プロセッサに、前記逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを前記第i位ターゲットデータスライスとして決定する前記ステップの前に、
    前記第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が前記事前決定された負荷割合閾値よりも大きいかどうかを決定するステップと、
    前記第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が前記事前決定された負荷割合閾値よりも大きいと決定した場合、前記第i位にランク付けされた高負荷サーバ上のデータスライスを使用して交換動作を実行することを拒否するか、または
    前記第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が前記事前決定された負荷割合閾値以下であると決定した場合、前記逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを前記第i位ターゲットデータスライスとして決定する前記ステップを実行するステップとを実行させる請求項8に記載の装置。
  10. 前記命令は前記プロセッサに、前記高負荷サーバおよび前記低負荷サーバを横断して動作を実行する前記ステップの後に、
    現在の統計期間として次の統計期間に入り、前記現在の統計期間の間にすべての前記サーバの負荷をカウントするステップと、
    最高から最低に向かって前記それぞれのサーバの負荷に応じて前記それぞれのサーバをランク付けし、前記現在の統計期間内でランク上位n個のサーバを高負荷サーバとして決定するステップと、
    前記現在の統計期間内の前記n個の高負荷サーバが、前の統計期間における前記n個の高負荷サーバと同じであるかどうかを決定するステップと、
    前記現在の統計期間内の前記n個の高負荷サーバが、前の統計期間における前記n個の高負荷サーバと同じであると決定した場合、前記事前決定された負荷割合閾値を増やし、前記現在の統計期間内のすべての前記高負荷サーバを再平準化する、すなわち、高負荷サーバおよび低負荷サーバを再び横断し、対応する動作を実行するステップとを実行させる請求項8または9に記載の装置。
  11. 最高から最低に向かってそれぞれのサーバの負荷に応じて前記それぞれのサーバをランク付けし、ランク上位n個のサーバを高負荷サーバとして決定し、ランク下位n個のサーバを低負荷サーバとして決定する前記ステップは、
    最高から最低に向かって前記それぞれのサーバのCPU負荷に応じて前記それぞれのサーバをランク付けし、ランク上位n1個のサーバを高負荷サーバの第1のグループとして決定し、ランク下位n1個のサーバを低負荷サーバの第1のグループとして決定するステップであって、n1はnよりも小さい正の整数である、ステップと、
    高負荷サーバの前記第1のグループおよび低負荷サーバの前記第1のグループを前記それぞれのサーバから除外し、最高から最低に向かって前記ランク付けで残っているサーバのトラフィック負荷に応じて残っているサーバをランク付けし、ランク上位n2個のサーバを高負荷サーバの第2のグループとして決定し、ランク下位n2個のサーバを低負荷サーバの第2のグループとして決定するステップであって、n2はnよりも小さい正の整数であり、n1+n2=nである、ステップとを含む請求項7から9のいずれか一項に記載の装置。
  12. 前記第i位ソースデータスライスと前記第i位ターゲットデータスライスとを交換する前記ステップは、
    前記分散データベースシステムからアイドル状態のサーバの情報を取得するステップと、
    前記第i位にランク付けされた高負荷サーバから前記第i位ソースデータスライスを前記アイドル状態のサーバに転送するステップと、
    前記逆順で第i位にランク付けされた低負荷サーバから前記第i位ターゲットデータスライスを前記第i位にランク付けされた高負荷サーバに転送するステップと、
    前記アイドル状態のサーバに転送された前記第i位ソースデータスライスを前記逆順で第i位にランク付けされた低負荷サーバに転送するステップとを含む請求項7から9のいずれか一項に記載の装置。
  13. コンピュータ命令を記憶する非一時的記憶媒体であって、前記コンピュータ命令はコンピュータに、
    統計期間中に分散データベースシステム内のすべてのサーバの負荷および各サーバ上の各データスライスの負荷割合をカウントするステップと、
    最高から最低に向かってそれぞれのサーバの負荷に応じて前記それぞれのサーバをランク付けし、ランク上位n個のサーバを高負荷サーバとして決定し、ランク下位n個のサーバを低負荷サーバとして決定するステップであって、nは正の整数である、ステップと、
    前記高負荷サーバおよび前記低負荷サーバを横断して動作を実行するステップとを実行するようにプロセッサによって実行可能であり、前記動作は、
    最高から最低に向かって第i位にランク付けされた高負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて前記第i位にランク付けされた高負荷サーバ上の前記それぞれのデータスライスをランク付けし、最高から最低に向かって逆順で第i位にランク付けされた低負荷サーバ上のそれぞれのデータスライスの負荷割合に応じて前記逆順で第i位にランク付けされた低負荷サーバ上の前記それぞれのデータスライスをランク付けするステップであって、iは正の整数であり、iはn以下である、ステップと、
    前記第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスを第i位ソースデータスライスとして決定し、前記逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定し、前記第i位ターゲットデータスライスと前記第i位ソースデータスライスとを交換すると仮定し、当該交換をした場合のサーバの全体の負荷割合を計算し、前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、事前決定された負荷割合閾値以下になると決定したことに応じて、前記第i位ソースデータスライスと前記第i位ターゲットデータスライスとを交換するステップとを実行させる非一時的記憶媒体。
  14. 前記第i位にランク付けられている高負荷サーバ上で高負荷割合を有するデータスライスを第i位ソースデータスライスとして決定し、前記逆順で第i位にランク付けられている低負荷サーバ上で低負荷割合を有するデータスライスを第i位ターゲットデータスライスとして決定することは、
    前記逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを前記第i位ターゲットデータスライスとして決定するステップと、
    前記第i位にランク付けられている高負荷サーバ上で第j位のランク付け負荷割合を有するデータスライスを前記第i位ソースデータスライスとして決定するステップであって、jは正の整数であり、jの初期値は1であり、jは前記第i位にランク付けされた高負荷サーバ上のデータスライスの数以下である、ステップと、
    前記第i位ターゲットデータスライスと前記第i位ソースデータスライスとを交換すると仮定し、当該交換をした場合のサーバの全体の負荷割合を計算し、前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、前記事前決定された負荷割合閾値よりも大きいかどうかを決定するステップと、
    前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの全体の負荷割合が、前記事前決定された負荷割合閾値よりも大きいと決定した場合、前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの前記全体の負荷割合が前記事前決定された負荷割合閾値以下になるまで、前記第i位にランク付けされた高負荷サーバ上で前記第j位のランク付け負荷割合を有する前記データスライスの次のデータスライスを新たな第i位ソースデータスライスとし、前記第i位ターゲットデータスライス前記新たな第i位ソースデータスライスとを交換すると仮定し、当該交換をした場合のサーバの全体の負荷割合を計算し前記それぞれのサーバの中で前記逆順で第i位にランク付けされた低負荷サーバの前記全体の負荷割合が、前記事前決定された負荷割合閾値よりも大きいかどうかを決定するステップとを含む請求項13に記載の非一時的記憶媒体。
  15. 前記コンピュータ命令はコンピュータに、前記逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを前記第i位ターゲットデータスライスとして決定する前記ステップの前に、
    前記第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が前記事前決定された負荷割合閾値よりも大きいかどうかを決定するステップと、
    前記第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が前記事前決定された負荷割合閾値よりも大きいと決定した場合、前記第i位にランク付けされた高負荷サーバ上のデータスライスを使用して交換動作を実行することを拒否するか、または
    前記第i位にランク付けされた高負荷サーバ上で最高負荷割合を有するデータスライスの負荷割合が前記事前決定された負荷割合閾値以下であると決定した場合、前記逆順で第i位にランク付けられている低負荷サーバ上で最低負荷割合を有するデータスライスを前記第i位ターゲットデータスライスとして決定する前記ステップを実行するステップとを実行させる請求項14に記載の非一時的記憶媒体。
  16. 前記コンピュータ命令はコンピュータに、前記高負荷サーバおよび前記低負荷サーバを横断して動作を実行する前記ステップの後に、
    現在の統計期間として次の統計期間に入り、前記現在の統計期間の間にすべての前記サーバの負荷をカウントするステップと、
    最高から最低に向かって前記それぞれのサーバの負荷に応じて前記それぞれのサーバをランク付けし、前記現在の統計期間内でランク上位n個のサーバを高負荷サーバとして決定するステップと、
    前記現在の統計期間内の前記n個の高負荷サーバが、前の統計期間における前記n個の高負荷サーバと同じであるかどうかを決定するステップと、
    前記現在の統計期間内の前記n個の高負荷サーバが、前の統計期間における前記n個の高負荷サーバと同じであると決定した場合、前記事前決定された負荷割合閾値を増やし、前記現在の統計期間内のすべての前記高負荷サーバを再平準化する、すなわち、高負荷サーバおよび低負荷サーバを再び横断し、対応する動作を実行するステップとを実行させる請求項14または15に記載の非一時的記憶媒体。
  17. 最高から最低に向かってそれぞれのサーバの負荷に応じて前記それぞれのサーバをランク付けし、ランク上位n個のサーバを高負荷サーバとして決定し、ランク下位n個のサーバを低負荷サーバとして決定する前記ステップは、
    最高から最低に向かって前記それぞれのサーバのCPU負荷に応じて前記それぞれのサーバをランク付けし、ランク上位n1個のサーバを高負荷サーバの第1のグループとして決定し、ランク下位n1個のサーバを低負荷サーバの第1のグループとして決定するステップであって、n1はnよりも小さい正の整数である、ステップと、
    高負荷サーバの前記第1のグループおよび低負荷サーバの前記第1のグループを前記それぞれのサーバから除外し、最高から最低に向かって前記ランク付けで残っているサーバのトラフィック負荷に応じて残っているサーバをランク付けし、ランク上位n2個のサーバを高負荷サーバの第2のグループとして決定し、ランク下位n2個のサーバを低負荷サーバの第2のグループとして決定するステップであって、n2はnよりも小さい正の整数であり、n1+n2=nである、ステップとを含む請求項13から15のいずれか一項に記載の非一時的記憶媒体。
  18. 前記第i位ソースデータスライスと前記第i位ターゲットデータスライスとを交換する前記ステップは、
    前記分散データベースシステムからアイドル状態のサーバの情報を取得するステップと、
    前記第i位にランク付けされた高負荷サーバから前記第i位ソースデータスライスを前記アイドル状態のサーバに転送するステップと、
    前記逆順で第i位にランク付けされた低負荷サーバから前記第i位ターゲットデータスライスを前記第i位にランク付けされた高負荷サーバに転送するステップと、
    前記アイドル状態のサーバに転送された前記第i位ソースデータスライスを前記逆順で第i位にランク付けされた低負荷サーバに転送するステップとを含む請求項13から15のいずれか一項に記載の非一時的記憶媒体。
JP2018522846A 2015-07-29 2016-07-28 分散データベースの負荷を平準化するための方法および装置 Active JP6615342B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201510456585.2 2015-07-29
CN201510456585.2A CN106713377B (zh) 2015-07-29 2015-07-29 分布式数据库负载调平的方法和装置
PCT/CN2016/092005 WO2017016499A1 (zh) 2015-07-29 2016-07-28 分布式数据库负载调平的方法和装置

Publications (2)

Publication Number Publication Date
JP2018521439A JP2018521439A (ja) 2018-08-02
JP6615342B2 true JP6615342B2 (ja) 2019-12-04

Family

ID=57884113

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018522846A Active JP6615342B2 (ja) 2015-07-29 2016-07-28 分散データベースの負荷を平準化するための方法および装置

Country Status (8)

Country Link
US (1) US10554737B2 (ja)
EP (1) EP3331218B1 (ja)
JP (1) JP6615342B2 (ja)
KR (1) KR102047900B1 (ja)
CN (1) CN106713377B (ja)
AU (1) AU2016299084A1 (ja)
CA (1) CA2990753A1 (ja)
WO (1) WO2017016499A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102054754B1 (ko) 2015-02-04 2019-12-11 후지필름 가부시키가이샤 화상 표시 장치
CN107360067B (zh) * 2017-06-29 2021-08-10 青岛恒金源电子科技有限公司 一种智能家居系统中的网络负载均衡方法
US10324662B2 (en) * 2017-08-28 2019-06-18 International Business Machines Corporation Rebalancing of the first extents of logical volumes among a plurality of ranks
CN108600341A (zh) * 2018-04-09 2018-09-28 广州悦世界信息科技有限公司 一种业务节点分配方法、决策节点及服务器集群
CN110933701B (zh) * 2019-12-12 2022-07-26 新华三大数据技术有限公司 网络负载状态检测方法及装置
CN111193788A (zh) * 2019-12-24 2020-05-22 视联动力信息技术股份有限公司 一种音视频流负载均衡方法和装置
CN117271138B (zh) * 2023-10-27 2024-03-01 山东三木众合信息科技股份有限公司 一种基于数据中心的数据处理方法及系统

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62235646A (ja) * 1986-04-04 1987-10-15 Nec Corp 資源管理方式
US6965651B1 (en) * 2001-05-11 2005-11-15 Micrel, Inc. Method and apparatus for delay adjustment and channel reordering in baseband communication receiving system
JP2005209055A (ja) * 2004-01-26 2005-08-04 Hitachi Ltd ストレージの負荷分散方法
US7457930B2 (en) * 2004-11-19 2008-11-25 International Business Machines Corporation Method for application transparent autonomic data replication improving access performance for a storage area network aware file system
US7281106B1 (en) * 2005-03-23 2007-10-09 Emc Corporation Method and apparatus for selective volume swapping in a data storage device based on merging multiple sets of candidate storage devices
US7281105B1 (en) * 2005-03-23 2007-10-09 Emc Corporation Method and apparatus for selecting data storage devices for participating in logical volume exchange process based on aggregated workload statistics
US8706914B2 (en) * 2007-04-23 2014-04-22 David D. Duchesneau Computing infrastructure
US8375180B2 (en) * 2010-02-05 2013-02-12 International Business Machines Corporation Storage application performance matching
US9606867B2 (en) * 2014-06-05 2017-03-28 International Business Machines Corporation Maintaining data storage in accordance with an access metric
US8448044B2 (en) * 2010-05-19 2013-05-21 Cleversafe, Inc. Retrieving data from a dispersed storage network in accordance with a retrieval threshold
US8886781B2 (en) * 2011-12-13 2014-11-11 Microsoft Corporation Load balancing in cluster storage systems
US9164841B2 (en) * 2012-06-05 2015-10-20 Cleversafe, Inc. Resolution of a storage error in a dispersed storage network
US8930746B1 (en) * 2012-06-30 2015-01-06 Emc Corporation System and method for LUN adjustment
US8949483B1 (en) * 2012-12-28 2015-02-03 Emc Corporation Techniques using I/O classifications in connection with determining data movements
JP2014186364A (ja) * 2013-03-21 2014-10-02 Kddi Corp 分散システム
JP6209863B2 (ja) * 2013-05-27 2017-10-11 富士通株式会社 ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム
CN103327094A (zh) * 2013-06-19 2013-09-25 成都市欧冠信息技术有限责任公司 数据分布式存储方法与系统

Also Published As

Publication number Publication date
US10554737B2 (en) 2020-02-04
EP3331218A1 (en) 2018-06-06
US20180097875A1 (en) 2018-04-05
CN106713377A (zh) 2017-05-24
CA2990753A1 (en) 2017-02-02
EP3331218A4 (en) 2018-07-04
JP2018521439A (ja) 2018-08-02
WO2017016499A1 (zh) 2017-02-02
KR102047900B1 (ko) 2019-12-04
KR20180016479A (ko) 2018-02-14
EP3331218B1 (en) 2022-04-20
AU2016299084A1 (en) 2018-01-18
CN106713377B (zh) 2019-09-13

Similar Documents

Publication Publication Date Title
JP6615342B2 (ja) 分散データベースの負荷を平準化するための方法および装置
CN111614746B (zh) 云主机集群的负载均衡方法、装置及服务器
US8713125B2 (en) Method and system for scaling usage of a social based application on an online social network
CN112256438B (zh) 负载均衡控制方法和装置、存储介质及电子设备
US9594801B2 (en) Systems and methods for allocating work for various types of services among nodes in a distributed computing system
CN107911399B (zh) 一种基于负载预测的弹性伸缩方法及系统
JP6886964B2 (ja) 負荷平衡方法及び装置
CN110365748A (zh) 业务数据的处理方法和装置、存储介质及电子装置
CN104052803A (zh) 一种去中心化的分布式渲染方法及渲染系统
CN110221920B (zh) 部署方法、装置、存储介质及系统
CN107317764B (zh) 流量负载均衡方法、系统、装置和计算机可读存储介质
WO2015196686A1 (zh) 一种数据存储方法以及一种数据存储管理服务器
KR101426673B1 (ko) 검색 시스템에서 시계열 데이터의 효율적 분석을 위한 분산 인덱싱 및 검색 방법
JP2015501991A (ja) 地理的に分散されたデータセンタでのレイテンシ短縮および弾力性改善のための最適化機構
JP2014186364A (ja) 分散システム
CN102375893A (zh) 一种分布式文件系统及其建立副本的方法
WO2020094064A1 (zh) 性能优化方法、装置、设备及计算机可读存储介质
JP6619708B2 (ja) データ分離評価装置、データ分離評価方法およびデータ分離評価プログラム
CN114205361A (zh) 一种负载均衡方法以及服务器
CN105357599B (zh) 一种资源分配的方法及装置
US10193790B2 (en) Systems and methods for an intelligent, distributed, autonomous, and scalable resource discovery, management, and stitching
CN106533730B (zh) Hadoop集群组件指标的采集方法及装置
JP2014219859A (ja) 分散処理システムおよび分散処理方法
JP6163474B2 (ja) ストレージ管理装置、ストレージ管理システム、制御方法及びプログラム
CN113886059A (zh) 一种数据库数据处理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190417

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190927

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191007

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191105

R150 Certificate of patent or registration of utility model

Ref document number: 6615342

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250