JP5146440B2 - 無共有型データベース管理システム - Google Patents
無共有型データベース管理システム Download PDFInfo
- Publication number
- JP5146440B2 JP5146440B2 JP2009254559A JP2009254559A JP5146440B2 JP 5146440 B2 JP5146440 B2 JP 5146440B2 JP 2009254559 A JP2009254559 A JP 2009254559A JP 2009254559 A JP2009254559 A JP 2009254559A JP 5146440 B2 JP5146440 B2 JP 5146440B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- server
- database
- module
- storage
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
「無共有型データベース管理システム」
無共有型データベース管理システムは、複数データベースサーバからなる大規模データベースシステムの構成法の一つである。無共有型データベース管理システムでは、計算機の主要要素であるプロセッサ、メモリおよびストレージが、各データベースサーバごとに割り当てられ、ネットワーク以外の構成要素を共有しない。データベースを構成するデータも各データベースサーバごとに分配され、その割り当てストレージに格納される。よって各データベースサーバは、データベースの互いに素な部分集合を処理対象データとして担当し、部分集合ごとに処理を行うことになる。
無共有データベース管理システムに新たなデータベースサーバを追加する際には、一般的に新規サーバマシンを追加し、新規サーバマシン上でデータベースサーバを実行する。新規サーバマシンを追加したことで、データベースサーバを実行するための資源が増加し、性能向上に繋がる。本発明では、前記資源のうち、演算能力向上にかかわるものを「CPUリソース」と呼ぶ事とする。また、ストレージ入出力性能向上にかかわるものを「ストレージI/Oリソース」と呼ぶ事とする。
前記のとおり、無共有型データベース管理システムにデータベースサーバを新規に追加する際や、無共有型データベース管理システムからデータベースサーバを取り外す際には、データベースサーバ間でのデータの均衡を取る必要がある。本発明では、この操作を以下「データの再配置」と呼ぶこととする。
ストレージ仮想化は、ネットワーク上のストレージの使いやすさを向上させる手段の一つである。ネットワーク上に複数台のストレージが存在し、それらを単一のサーバから使用する際に、あたかも単一のストレージを使用しているように見せることで、運用管理も一つに統合でき、管理コストの低減に繋がる。本発明では、ストレージ仮想化を行う場所を「(ストレージ)仮想化層」と呼ぶ。ストレージ仮想化層は一般にストレージ上、ストレージ管理ミドルウエア、ファイルシステム上に存在する。オペレーティングシステムはストレージをボリューム単位で管理する。そこで、本発明では、仮想化されたストレージを「論理ボリューム」と呼ぶ。また、論理ボリュームを構成する個々のストレージを「単位ボリューム」と呼ぶ。
従来の手法としては、DB2 バージョン7.2添付のオンラインマニュアル「管理者の手引き 第30章」に記載のALTER NODEGROUPステートメントを使用する手法がある。この手法では、図2(a)に示すように新規データベースサーバの追加を行う際には、新規データベースサーバの割り当てストレージにデータ領域を追加し(21)、複数データベースサーバからなる無共有型データベース管理システムに新規データベースサーバを追加(22)した後に、データ量の均衡を取るためにデータベースサーバ間でデータの再配置を行う(23)となっていた。また、図2(b)に示すデータベースサーバの取り外しを行う際には、データの再配置を行い取り外し対象データベースサーバのデータ領域を空にし(24)、その後データベースサーバの取り外しを行う(25)となっていた。
図3はバックエンドモジュール当たり1つのデータ領域を割り当てた際のバックエンドモジュールの構成を示す。バックエンドモジュール(31)は共有ストレージ(32)上の一つのデータ領域(33)と結び付けられる。また、この構成の元ではデータ領域に割り当てられていないバックエンドモジュール(34)を考える。バックエンドモジュール(31)は、マッピングモジュールによって、共有ストレージ上の共有データ領域を割り当てられる。各バックエンドモジュールは割り当てられたデータ領域上に処理対象データを格納し、探索を行う。また、ソートやマージといったデータ演算も行う。これは複数のバックエンドモジュールでデータをやり取りしながら行うこともある。
「サーバの追加」
前記サーバ監視モジュールが高負荷を検出することで、サーバの追加処理が開始され、スケジューラモジュール(4)によって図4に示す処理フローが作成される。処理フローにおいて、まず新規追加サーバが準備される(41)。ここではプールサーバ群の中から適当なサーバを選び、現用サーバ群の構成情報が伝えられる。
前記サーバ監視モジュールが低負荷を検出することで、サーバの取り外し処理が開始され、スケジューラモジュール(4)によって図5に示す処理フローが作成される。
図6は本発明の別の実施例の構成を示す。図6にはバックエンドモジュールと共有ストレージ内の各領域との関係のみ示すが、データベース管理システム全体の構成要素は図1に示す先の実施例と同様であるので図中で省略している。本実施例では、共有ストレージ62のデータ領域63は、そのデータの探索処理、演算処理を担当するバックエンドモジュール61に対応してではなく、より小さな単位に細分化されている。細分化は、例えば領域識別子のハッシュ値を用いたハッシュ分割法による。ただし、各バックエンドモジュールへのデータ領域の割り当てがハッシュ値によって直接定まるのではなく、ハッシュ値と担当するバックエンドモジュールとの対応関係を記録・管理するハッシュ値・モジュールID対応表によって定める。この構成により、バックエンドモジュールの追加投入もしくは削減の時に必要となるデータ領域の割り当て変更は、上記のハッシュ値・モジュールID対応表を更新するのみで可能となる。この割り当ての変更は、データの実移動を伴わないため、瞬時に行うことが可能である。したがって、バックエンドモジュールの追加もしくは削除に際し、データベース管理システム本来のアクセス処理の性能低下が先の実施例に増して回避可能である。
「サーバの追加」
前記サーバ監視モジュールが高負荷を検出することで、サーバの追加処理が開始され、スケジューラモジュール(4)によって図8に示す処理フローが作成される。
前記サーバ監視モジュールが低負荷を検出することで、サーバの追加処理が開始され、スケジューラモジュール(4)によって図9に示す処理フローが作成される。
図10は共有ストレージ上のストレージ仮想化層(103)によって仮想化された仮想ボリュームを用いる実施例の構成を示す。複数のバックエンドモジュール101は各々データ探索及び、データ演算を行う。そのデータ探索の対象は各々の仮想ボリューム105である。共有ストレージ102に設けられたストレージ仮想化層103によって、共有ストレージ上の複数の単位ボリューム106が仮想ボリューム105に関連付けられる。関連付けにはマップ10Aを用いる。ここでもバックエンドモジュール間のデータ配分にはハッシュ分割法を用いる。即ち、バックエンドモジュールが扱うデータ識別子のハッシュ値が等しいデータは同一データグループ107に属するデータと見なされる。また、それらのデータグループはそれぞれ単位ボリューム106に重複なく配置される。バックエンドモジュールを新たに追加したとき、もしくは削除したときに生じるデータ移動の最小単位は上記のデータグループである。
図11において、111はストレージ管理ミドルウエア上のストレージ仮想化層(113)によって仮想化されたストレージ(115)を用いた際のバックエンドモジュールである。ストレージ管理ミドルウエアは、バックエンドモジュール(111)と共有ストレージ(112)の間に入り、バックエンドモジュール毎のデータ領域割り当てを管理し仮想ボリューム(115)を割り当てる。データ領域割り当ては共有ストレージ(112)上の単位ボリューム(116)と仮想ボリューム(115)の関連付けとして実現する。関連付けにはマップ(11A)を用いる。ここでもバックエンドモジュール間のデータ配分にはハッシュ分割法を用いる。さらに、ハッシュ値が等しい物を同一データグループ(117)内に配置する事とし、データ移動の最小単位とする。また、データグループはそれぞれ単位ボリューム(116)に重複なく配置される。
図12において、121は共有ファイルシステム上のストレージ仮想化層(123)によって仮想化されたストレージ(125)を用いた際のバックエンドモジュールである。ここではファイルシステムとして、NFSのようなサーバ−クライアント型のファイルシステムを想定している。ファイルシステムは、バックエンドモジュール(121)と共有ストレージ(122)の間に入り、バックエンドモジュール毎のデータ領域割り当てを管理し仮想ボリューム(125)を割り当てる。データ領域割り当ては共有ストレージ(125)上の単位ボリューム(126)と仮想ボリューム(125)の関連付けとして実現する。関連付けにはファイルサーバ上のマップ(12A)を用いる。ここでもバックエンドモジュール間のデータ配分にはハッシュ分割法を用いる。さらに、ハッシュ値が等しい物を同一データグループ(127)内に配置する事とし、データ移動の最小単位とする。また、データグループはそれぞれ単位ボリューム(126)に重複なく配置される。
図13において、131はデータベース管理システムに内蔵されたストレージ仮想化層(133)によって仮想化されたストレージ(134)上の仮想ボリューム(135)を用いた際のバックエンドモジュールである。ストレージ仮想化層によって、共有ストレージ上の共有ストレージ(132)上の複数の単位ボリューム(136)が仮想ボリュームに関連付けられる。関連付けにはマップ管理モジュール(13B)上のマップ(13A)を用いる。ここでもバックエンドモジュール間のデータ配分にはハッシュ分割法を用いる。さらに、ハッシュ値が等しい物を同一データグループ(137)内に配置する事とし、データ移動の最小単位とする。また、データグループはそれぞれ単位ボリューム(136)に重複なく配置される。
2.フロントエンドモジュール
3.バックエンドモジュール
4.スケジューラモジュール
5.サーバ監視モジュール
6.共有ストレージ
7.マッピングモジュール
8.現用サーバ群
9.プールサーバ群。
Claims (1)
- データベース管理システムであって、
データの探索、演算を行う複数のバックエンドモジュールと、
それぞれがデータベースを構成するデータのハッシュ分割法によって細分化された一部を格納し前記バックエンドモジュールの数よりも多い数の複数の単位ボリュームを含み、前記複数のバックエンドモジュールから共有される共有ストレージと、
各々が前記複数のバックエンドモジュールのいずれか一つからアクセス可能な複数の仮想ボリュームに前記単位ボリュームの少なくとも一つを重複しないように対応付け、前記複数の単位ボリュームの各々が前記複数のバックエンドモジュールのいずれか一つからアクセスされるように前記複数の単位ボリュームと前記複数の仮想ボリュームとを関連付けるストレージ仮想化手段と、
前記複数の単位ボリュームに保持されたデータの識別子であるハッシュ値と前記複数のバックエンドモジュールとの対応関係を保持した対応表を管理するマッピングモジュールと、
前記データベースへの問い合わせを受け付け、前記マッピングモジュールにおける前記対応表を参照して前記複数のバックエンドモジュールに向けた問い合わせのプランを作成するフロントエンドモジュールと、を有し、
前記データベース管理システムに前記バックエンドモジュールの追加又は取り外しを行う場合、前記マッピングモジュールが前記対応表における前記ハッシュ値と前記バックエンドモジュールとの関連づけを変更することにより前記複数のバックエンドモジュールへの割り当てデータを前記単位ボリューム単位で変更することを特徴とするデータベース管理システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009254559A JP5146440B2 (ja) | 2009-11-06 | 2009-11-06 | 無共有型データベース管理システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009254559A JP5146440B2 (ja) | 2009-11-06 | 2009-11-06 | 無共有型データベース管理システム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004003601A Division JP2005196602A (ja) | 2004-01-09 | 2004-01-09 | 無共有型データベース管理システムにおけるシステム構成変更方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010033599A JP2010033599A (ja) | 2010-02-12 |
JP5146440B2 true JP5146440B2 (ja) | 2013-02-20 |
Family
ID=41737901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009254559A Expired - Fee Related JP5146440B2 (ja) | 2009-11-06 | 2009-11-06 | 無共有型データベース管理システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5146440B2 (ja) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09218858A (ja) * | 1996-02-14 | 1997-08-19 | Hitachi Ltd | 分散型データベース管理システム |
JP2003085014A (ja) * | 2001-09-12 | 2003-03-20 | Toshiba Corp | ネットワークシステムのボリューム管理方法及び計算機 |
JP2003296153A (ja) * | 2002-03-29 | 2003-10-17 | Fujitsu Ltd | ストレージシステムおよびそのためのプログラム |
-
2009
- 2009-11-06 JP JP2009254559A patent/JP5146440B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010033599A (ja) | 2010-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2005196602A (ja) | 無共有型データベース管理システムにおけるシステム構成変更方法 | |
US11966417B2 (en) | Caching systems and methods | |
US11675815B1 (en) | Multi-cluster warehouse | |
US10901796B2 (en) | Hash-based partitioning system | |
US20200356552A1 (en) | Data ingestion using file queues | |
US9977689B2 (en) | Dynamic scaling of management infrastructure in virtual environments | |
CN101556557B (zh) | 一种基于对象存储设备的对象文件组织方法 | |
JP4631301B2 (ja) | 記憶装置のキャッシュ管理方法 | |
US10394782B2 (en) | Chord distributed hash table-based map-reduce system and method | |
JP4801761B2 (ja) | データベース管理方法およびシステム並びにその処理プログラム | |
Zhou et al. | Mocgraph: Scalable distributed graph processing using message online computing | |
US10810054B1 (en) | Capacity balancing for data storage system | |
CN104679594B (zh) | 一种中间件分布式计算方法 | |
JP2012226427A (ja) | リソース管理方法及び計算機システム | |
Wang et al. | Hybrid pulling/pushing for i/o-efficient distributed and iterative graph computing | |
JP2007249468A (ja) | Cpu割当方法、cpu割当プログラム、cpu割当装置、および、データベース管理システム | |
KR20180100475A (ko) | 하이브리드 데이터 룩-업 방법 | |
Wang et al. | Improved intermediate data management for mapreduce frameworks | |
JP5146440B2 (ja) | 無共有型データベース管理システム | |
Gao et al. | Memory-efficient and skew-tolerant MapReduce over MPI for supercomputing systems | |
JP7458610B2 (ja) | データベースシステム、及びクエリ実行方法 | |
JP2013088920A (ja) | 計算機システム及びデータ管理方法 | |
US12267390B2 (en) | Multi-cluster warehouse | |
US20240086386A1 (en) | Multihost database host removal shortcut | |
Luo et al. | Supporting cost-efficient multi-tenant database services with service level objectives (SLOs) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091113 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120321 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120517 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120710 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121005 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20121012 |
|
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: 20121030 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121112 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5146440 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151207 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |