JP2007513426A - 異種コンピュータシステムにわたる複雑計算 - Google Patents
異種コンピュータシステムにわたる複雑計算 Download PDFInfo
- Publication number
- JP2007513426A JP2007513426A JP2006542690A JP2006542690A JP2007513426A JP 2007513426 A JP2007513426 A JP 2007513426A JP 2006542690 A JP2006542690 A JP 2006542690A JP 2006542690 A JP2006542690 A JP 2006542690A JP 2007513426 A JP2007513426 A JP 2007513426A
- Authority
- JP
- Japan
- Prior art keywords
- program
- data
- database
- nodes
- statement
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/256—Integrating or interfacing systems involving database management systems in federated or virtual databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B50/00—ICT programming tools or database systems specially adapted for bioinformatics
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B50/00—ICT programming tools or database systems specially adapted for bioinformatics
- G16B50/30—Data warehousing; Computing architectures
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/70—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5017—Task decomposition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/509—Offload
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/964—Database arrangement
- Y10S707/966—Distributed
- Y10S707/971—Federated
- Y10S707/972—Partitioning
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- Biotechnology (AREA)
- Bioethics (AREA)
- Public Health (AREA)
- Biomedical Technology (AREA)
- Pathology (AREA)
- Epidemiology (AREA)
- Primary Health Care (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明はデータベースシステムに関し、より具体的には、異種コンピュータシステムにわたる複雑計算に関する。
科学計算における共通のシナリオは、多様な異なるフォーマットで格納されたデータにアクセスし、処理する複数の異種環境にわたり、複雑計算を実行することである。たとえば、1つの複雑計算は、遺伝子の配列およびそれらの引用の多様なデータベース内の遺伝物質のDNA適合を検索するものである。異種環境は、異なる、そしてしばしば互換性のないハードウェア、オペレーティングシステム、およびアプリケーションソフトウェアの組み合わせを含む。一般的に、これらの異なるシステムは、特定のニーズに応えるため個々に購入され、企業は、複数のコンピュータシステムに散在する情報を有するであろう。システム業者は、競争相手の販売に勝る競争力を備えようとするため、異なるシステムは、ほぼ本質的に互換性がない。構造化照会言語(SQL)基準およびリレーショナルモデルに基づくリレーショナルデータベースマネジメントシステム(DBMS)でさえ、SQL実施、データベース定義、および通信機構の差異のために、互換性がない。したがって、複雑計算を実行するための異種システムを組みあわせる仕事は困難である。
本発明の、外部関数を登録し、データベースマネジメントシステムから並列に呼び出すことのできるプログラマチックインターフェースによって、これらおよびその他の必要性が検討される。したがって、本発明の一態様は、それぞれデータベースシステムから受信されたコマンドに応えて計算を行うプログラムをスタートするよう構成された処理を実行する複数のノードで、計算を統合する方法に関する。データベースシステムでクエリを受信することに応じて、複数のコマンドが処理に送信され、各対応する処理に同時に計算を行う。結果は各処理から受信され、ステートメントの実行は受信された結果に基づいて終了される。
複雑計算のためのシステム、方法、およびソフトウェアが説明される。以下の記載において、説明の目的で、本発明の充分な理解をもたらすために多数の具体的な詳細が説明される。しかし、当業者にとって、本発明は、これら具体的な詳細を伴うことなく、または同等の配置とともに実行されてよいことは明白である。その他の場合、本発明を不必要に不明瞭にすることを防ぐべく、ブロック図に既知の構造および装置が示される。
図1は、複雑計算を行うべく本発明の一実施形態が配置されるところの異種環境100を示す概略図である。特に、異種環境100はデータベースマネジメントシステム(DBMS)プラットフォーム101および異種プラットフォーム103を含む。プラットフォーム103は、ハードウェア、オペレーティングシステム、およびアプリケーションソフトウェアの組み合わせが、DBMSプラットフォーム101のハードウェア、オペレーティングシステム、およびアプリケーションソフトウェアと異なるまたは互換性がない場合に、異種であると考えられてよい。配置環境によって、本発明の実施形態は1以上の追加の異種プラットフォーム105を含んでよい。ここではプラットフォーム103および105は異種として説明されるが、1以上のプラットフォーム103および105がDBMSプラットフォーム101と同種であって、なお本発明のその他の特徴からもたらされる利点のいくつかを実現してもよい。したがって、本発明は同種もしくは同種/異種混合の環境において有利である。
される。1以上の計算プログラム117は、複雑計算を行うべく異質のデータベース119と相互作用してよく、リレーショナルデータベース109への格納およびユーザーもしくはアプリケーションプラグラムへの提示のため、最終的にデータベースサーバ107に結果を返してよい。
一実施形態において、DBMSプラットフォーム101において実行中のアプリケーションは、異種プラットフォーム103および105の能力、および異種プラットフォーム103および105内に常駐し異種プラットフォーム103および105間の複雑計算を
統合するのに充分な計算プログラム117の能力を示す情報を含む、プログラミングインターフェースレジストリ111にアクセスするノンブロッキング方式プログラミングインターフェースを用いる、他のプラットフォーム103および105上の並列プログラム117を呼び出せる。この情報は、前もってデータベース管理者によって入力されているのが好ましいが、情報のうちいくらかは、クエリでインタラクティブに得られる。たとえば、プログラミングインターフェースレジストリ111内の情報は、DBMSプラットフォーム101に対して有効な異種プラットフォーム103および105を識別し、計算プログラム117をデータベースサーバ107内のプログラマチックインターフェースのためにこれらのプラットフォーム103および105と関連付けるために用いられてもよく、データベースサーバはプログラム117の各デーモン115に、デーモンの対応するプラットフォーム103および105上で実行されてよいことを通知できる。
一連のローを返すテーブル関数として用いられる。一方、関数が一連のロー(たとえば、整数のコレクション)を返さない場合、その関数はまた、SELECTリストもしくはオブジェクトタイプのためのユーザー定義のメソッドで用いられてよい。
複数の異種システムにわたって複雑計算を統合する本発明の一実施形態の操作が図2に説明される。ステップ201において、データベースサーバ107はクエリ、もしくはプログラミングレジストリインターフェースにリストされる外部ルーチンへの呼び出しを含むデータベースステートメントを受け取り、ステートメント内の呼び出しを操作するスレッドを生じる。構造化照会言語(SQL)の典型的なクエリは以下のようなものであってよい。
は、多様なコンピュータシステム103上で実行できるプログラム117であり、ゲノムデータベース119の遺伝子配列データベースにアクセスし、編集距離内の引数のヌクレオチドの結果に適合するゲノムデータベース119内の全てのDNA配列に対し、シーケンス識別子(「sequence_id」)を返す。ヌクレオチドは、DNAに対してはアデニン(A)、グアニン(G)、チミン(T)、シトシン(C)であり、RNAに対しては、アデニン(A)、グアニン(G)、ウラシル(U)、シトシン(C)である。この実施例において異種環境100は、それぞれ異なるデータベースとインターフェースに対処する必要のある、多様な遺伝子配列の独占データベースを有する異種コンピュータシステム103および105を含む。引用テーブル「c」は、ほとんどのユーザーには不明瞭なシーケンス識別子(「sequence_id」=「seq_id」)を、よりユーザーに理解しやすい対応するシーケンスのソース引用に関連付ける。所望の並列度は、上に示すように、クエリでは空白のままでよく、この場合並列度は、プログラミングインターフェースレジストリ111で既にセットアップされているデフォルトになる。
ラム117が各要求のために再起動する必要がなければ、要求は新しい一連の引数を渡すだけでよい。
図2に関して説明されるアプローチは、強力かつ柔軟であり、多様な異なる呼び出し方針を処理することができる。たとえば、最も単純な事例のひとつは、ノードと、リレーショナルデータベース109外部の各関数のデータとの間に1対1マッピングのある環境である。すなわち、各ノード103および105は、プログラミングインターフェースレジストリ111に、ファイルシステム内(たとえば、スレッドが初期化されている場合は環境設定ファイルを介して)の特定の場所の、特定のデータ本体もしくはデータコンテナにアクセスするようコード化された関数を実行可能であるものとして登録されている。この場合、スタブ関数113は、SQLクエリで供給される引数で関数を実行するよう登録された全てのノードのデーモン115に、コマンドを送信する。具体的には、コンピュータクラスター上で並列実行される関数は、所与のパターンを検索し、所定の編集距離内にパターンを含む一連のシーケンス番号をローとして返す関数である。
先の事例はノードとデータコンテナ間の、1対1もしくは全単射マッピングを特徴とした。しかし、一実施形態は、非全単射マッピングもしくは「m」ノードと「n」データコンテナ間の「m−to−n」マッピングをサポートできる。非全単射マッピングは、いくつかのノードが、たとえばNFS(ネットワークファイルシェアリング)を介して、同一のデータコンテナのうちの少なくともいくつかへのアクセスをシェアする場合に可能である。この場合、追加的な潜在パラメータが、計算プログラム117を実行する各スレッドに渡され、スレッドが処理を必要としていることをデータコンテナに知らせる。データベースサーバ107はデータコンテナの構造を解釈できる必要はなく、データベースサーバ107はいかにデータコンテナを特定するか(たとえば、ファイルシステム119内のパス名で)、またいかに各関数についてノードをコンテナにマッピングするかを知る必要がある。このようなマッピングテーブルは、表1に示すように、プログラミングレジストリ111、リレーショナルデータベース109、または他の場所に格納されてよい。
現段階では、データベースサーバ107は、関数を実行するにあたり、データコンテナを「枝刈り」していない、すなわち、要求を満たすために実際に検索される必要のあるデータコンテナの数を減らしていない。いくつかのコンテナは、クエリに応答するためにアクセスされる必要はなく、データコンテナ上の不経済な検索やその他の操作を防ぐことが望ましい。この実施例において、枝刈りは外部関数の実施者によってなされてよい。たとえば、外部関数に対する引数は、ファイルヘッダを見ることで、あるデータコンテナがローを返さないことを素早く(たとえばO(1)時間)決定するのに用いられてよい。たとえば、dna_matchがE.coliのシーケンス上でのみ求められている場合、E.coli引数はクエリで以下のように特定される。
属性レベルフィルタリング機構が充分に柔軟でないことがあり得る。このような場合には、ユーザー定義の分割関数が各関数に関連付けられてよい。この関数は、デーモン115を呼び出す前に呼び出され、クエリに応答するためにアクセスされる必要がある一連のデータコンテナを決定する。分割関数はデータベースサーバ107のコンテキスト内で実行し、並列化される必要はない。分割関数のシグネチャーは、これが一連のコンテナを返すこと以外は、実行される関数と同一である。たとえば、
データコンテナ枝刈りに必要なものに加え、WHERE節条件を並列関数に渡すことがさらに望ましい。たとえば、ユーザーは、SQLのWHERE条件に「編集距離」を補うことを望んでよい。このWHERE節はコンテナを枝刈りするのには用いられないが、一連の結果にフィルターをかける時、もしくはそれ自身の実行中に用いられるべく、並列関数に渡される。したがって、検索を他のテーブルに記録されたedit_distanceに限定するためには、次のクエリが用いられてよい。
上記で説明された分割方法は、物理的ノード内の複数のスレッドに適合するよう、容易に拡張される。物理的ノードが所与の関数に対してNスレッド数まで実行することができる場合、ノードは、スレッド間の作業を分割する時に、N論理ノードとして、もしくは仮想処理装置として扱われてよい。コホート内通信(すなわち、関数を実行するリーフレベルスレッド間の通信)がないか、データベースコントロール外のコホート内通信がないか、であるため、データベースサーバ107は同一の物理的ノード上にスレッドを配置するよう試みる必要がない。スレッドおよびノードの選択は、データコンテナへのアクセス、物理的ノード上の負荷などの、上で説明されたその他のパラメータに基づく。
図3は、本発明による実施形態が実施されるところのコンピュータシステム300を説明する。コンピュータシステム300は、バス301もしくはその他の情報を通信する通信機構と、バス301に連結され情報を処理する処理装置303を含む。コンピュータシステム300はまた、バス301に連結されて処理装置303に実行されるべき情報や指示を格納する、ランダムアクセスメモリ(RAM)やその他のダイナミック記憶装置などのメインメモリ305を含む。メインメモリ305はまた、一時的な変数もしくはその他の処理装置303による指示の実行中の中間情報を格納するのにも用いられる。コンピュータシステム300はさらに、読み取り専用メモリ(ROM)307もしくはその他の、バス301に連結されて処理装置303に対する静的情報および指示を格納する、静的記憶装置を含んでよい。磁気ディスクもしくは光ディスクなどの記憶装置309は、バス301に連結され、情報および指示を絶え間なく格納する。
フェース317はデジタルサブスクライバライン(DSL)カードもしくはモデム、総合デジタル通信網(ISDN)カード、ケーブルモデム、電話モデム、または任意のその他の、対応するタイプの通信線にデータ通信接続を提供する通信インターフェースであってよい。その他の実施例として、通信インターフェース317は、データ通信接続を互換性のあるLANに提供するローカルエリアネットワーク(LAN)カード(たとえば、イーサネット(登録商標)もしくは非同期転送モデル(ATM)ネットワークに対して)でよい。ワイヤレスリンクもまた実施されてよい。これらの任意の実施において、通信インターフェース317は、多様なタイプの情報を表すデジタルデータストリームを運ぶ、電気、電磁気、または光学の信号を送受信する。さらに、通信インターフェース317は、ユニバーサルシリアルバス(USB)インターフェース、PCMCIA(PCメモリーカード国際協会)インターフェースなどの周辺インターフェース装置を含んでよい。図3では単一の通信インターフェース317が示されているが、複数の通信インターフェースもまた用いることができる。
Claims (10)
- 各ノードにおいて、データベースシステムから受信したコマンドに応えて計算を行うプログラムをスタートさせるよう構成された対応する処理を実行することと、
データベースシステムにおいて、計算を行う外部ルーチンを特定するステートメントを受信することと;ステートメントを受信することに応えて、
計算を行う複数のコマンドを、前記各対応する処理に同時に送ることと、
前記各処理から結果を受信することと、
前記各処理から受信した結果に基づいて、ステートメントの処理を終了することと、から構成される複数のノードに配置された複数のデータコンテナ上で計算を統合する方法。 - 計算を行う外部ルーチンを特定するデータベースシステムにおいてステートメントを受信することと、
ステートメントを受信することに応えて、
計算を行う複数のコマンドを、コマンドに応えて計算を行う複数の各プログラムをスタートするよう構成された、複数の各処理に送信することと、
前記各処理から結果を受信することと、
前記各処理から受信した結果に基づいて、ステートメントの処理を終了することと、から構成される複数のノードに配置された複数のデータコンテナ上で計算を統合する方法。 - 計算を行うことのできる複数のノードからノードのコホートを決定することからさらに構成され、複数の各処理はノードのコホートに対応することを特徴とする、請求項2に記載の方法。
- 複数のノードは、ノードのコホートに含まれない少なくとも1つのノードを含むことを特徴とする、請求項3に記載の方法。
- 前記決定することは、各ノードにサポートされる並列度に基づくことを特徴とする、請求項3に記載の方法。
- プログラムとデータコンテナの間の関連付けを特定するレジストリにアクセスすることからさらに構成され、
前記決定することは、プログラムとデータコンテナの間の関連付けに基づくことを特徴とする、請求項3に記載の方法。 - データコンテナに対する各属性を特定するレジストリにアクセスすることからさらに構成され、
前記決定することは、データコンテナに対する各属性をステートメントのパラメータに適合させることに基づくことを特徴とする、請求項3に記載の方法。 - プログラムおよびデータコンテナに関連付けられた分割関数を特定するレジストリにアクセスすることからさらに構成され、
前記決定することは、プログラムおよびデータコンテナに関連付けられた分割関数を実行した結果に基づくことを特徴とする、請求項3に記載の方法。 - 少なくともいくつかのプログラムを並列で実行することを特徴とする、請求項2に記載の方法。
- 計算を統合するための指示を持つコンピュータ読み取り可能な媒体で、前記指示は、請求項1に記載の方法を行う1以上の処理装置による実行があり次第、配置される。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/724,834 | 2003-12-02 | ||
US10/724,834 US7047252B2 (en) | 2003-12-02 | 2003-12-02 | Complex computation across heterogenous computer systems |
PCT/US2004/040114 WO2005057410A1 (en) | 2003-12-02 | 2004-12-02 | Complex computation across heterogenous computer systems |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2007513426A true JP2007513426A (ja) | 2007-05-24 |
JP2007513426A5 JP2007513426A5 (ja) | 2007-11-29 |
JP4774372B2 JP4774372B2 (ja) | 2011-09-14 |
Family
ID=34620148
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006542690A Active JP4774372B2 (ja) | 2003-12-02 | 2004-12-02 | 異種コンピュータシステムにわたる複雑計算 |
Country Status (9)
Country | Link |
---|---|
US (1) | US7047252B2 (ja) |
EP (1) | EP1690183B1 (ja) |
JP (1) | JP4774372B2 (ja) |
CN (1) | CN1890643B (ja) |
AU (1) | AU2004297890B2 (ja) |
CA (1) | CA2545933C (ja) |
DE (1) | DE602004020919D1 (ja) |
HK (1) | HK1090147A1 (ja) |
WO (1) | WO2005057410A1 (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013536492A (ja) * | 2010-07-07 | 2013-09-19 | アリババ・グループ・ホールディング・リミテッド | 複数のシステムを用いたデータ解析 |
JP2015022388A (ja) * | 2013-07-17 | 2015-02-02 | 株式会社東芝 | データベース・システム |
WO2017056189A1 (ja) * | 2015-09-29 | 2017-04-06 | 株式会社日立製作所 | 管理システム、データ処理方法、及び記憶媒体 |
JP2017517775A (ja) * | 2014-06-11 | 2017-06-29 | オラクル・インターナショナル・コーポレイション | データストリームのカスタムパーティション |
US10628424B2 (en) | 2016-09-15 | 2020-04-21 | Oracle International Corporation | Graph generation for a distributed event processing system |
US10713249B2 (en) | 2016-09-15 | 2020-07-14 | Oracle International Corporation | Managing snapshots and application state in micro-batch based event processing systems |
US10880363B2 (en) | 2017-03-17 | 2020-12-29 | Oracle International Corporation | Integrating logic in micro batch based event processing systems |
US10958714B2 (en) | 2017-03-17 | 2021-03-23 | Oracle International Corporation | Framework for the deployment of event-based applications |
US10956422B2 (en) | 2012-12-05 | 2021-03-23 | Oracle International Corporation | Integrating event processing with map-reduce |
Families Citing this family (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9767167B2 (en) * | 2000-04-27 | 2017-09-19 | Proquest Llc | Method and system for retrieving search results from multiple disparate databases |
EP1831803A2 (en) * | 2004-12-15 | 2007-09-12 | Koninklijke Philips Electronics N.V. | System and method for managing binary large objects |
US7680862B2 (en) * | 2005-04-18 | 2010-03-16 | Oracle International Corporation | Rewriting table functions as SQL strings |
US7693912B2 (en) | 2005-10-31 | 2010-04-06 | Yahoo! Inc. | Methods for navigating collections of information in varying levels of detail |
US20070100883A1 (en) * | 2005-10-31 | 2007-05-03 | Rose Daniel E | Methods for providing audio feedback during the navigation of collections of information |
US20070100915A1 (en) * | 2005-10-31 | 2007-05-03 | Rose Daniel E | Methods for displaying dynamic suggestions in a user interface |
US7388781B2 (en) * | 2006-03-06 | 2008-06-17 | Sandisk Il Ltd. | Multi-bit-per-cell flash memory device with non-bijective mapping |
US8848442B2 (en) * | 2006-03-06 | 2014-09-30 | Sandisk Il Ltd. | Multi-bit-per-cell flash memory device with non-bijective mapping |
US7962926B2 (en) * | 2006-04-05 | 2011-06-14 | International Business Machines Corporation | Method, system, and program storage device for generating a retry message when a thread in a real-time application is unavailable to process a request to utilize the real-time application |
US20080027782A1 (en) * | 2006-04-07 | 2008-01-31 | Juliana Freire | Managing provenance of the evolutionary development of workflows |
US8060391B2 (en) * | 2006-04-07 | 2011-11-15 | The University Of Utah Research Foundation | Analogy based workflow identification |
US20080040181A1 (en) * | 2006-04-07 | 2008-02-14 | The University Of Utah Research Foundation | Managing provenance for an evolutionary workflow process in a collaborative environment |
US7680765B2 (en) * | 2006-12-27 | 2010-03-16 | Microsoft Corporation | Iterate-aggregate query parallelization |
CN101236513B (zh) * | 2007-01-30 | 2012-07-18 | 阿里巴巴集团控股有限公司 | 一种分布式任务系统和分布式任务管理方法 |
US8209701B1 (en) * | 2007-09-27 | 2012-06-26 | Emc Corporation | Task management using multiple processing threads |
US8006175B2 (en) * | 2007-10-29 | 2011-08-23 | Microsoft Corporation | Calculation of spreadsheet data |
US20090125553A1 (en) * | 2007-11-14 | 2009-05-14 | Microsoft Corporation | Asynchronous processing and function shipping in ssis |
US8190633B2 (en) * | 2008-06-16 | 2012-05-29 | The University Of Utah Research Foundation | Enabling provenance management for pre-existing applications |
US10789272B2 (en) | 2011-06-06 | 2020-09-29 | International Business Machines Corporation | Scalable, distributed containerization across homogenous and heterogeneous data stores |
EP2746936A4 (en) | 2011-10-24 | 2015-03-11 | Huawei Tech Co Ltd | METHOD AND SYSTEM FOR STARTING AN APPLICATION IN A LINUX CONTAINER |
WO2013086384A1 (en) | 2011-12-08 | 2013-06-13 | Oracle International Corporation | Techniques for maintaining column vectors of relational data within volatile memory |
US9342314B2 (en) | 2011-12-08 | 2016-05-17 | Oracle International Corporation | Efficient hardware instructions for single instruction multiple data processors |
US10534606B2 (en) | 2011-12-08 | 2020-01-14 | Oracle International Corporation | Run-length encoding decompression |
US9697174B2 (en) | 2011-12-08 | 2017-07-04 | Oracle International Corporation | Efficient hardware instructions for processing bit vectors for single instruction multiple data processors |
US9792117B2 (en) | 2011-12-08 | 2017-10-17 | Oracle International Corporation | Loading values from a value vector into subregisters of a single instruction multiple data register |
CN103455366A (zh) * | 2012-06-01 | 2013-12-18 | 阿里巴巴集团控股有限公司 | 一种调用外部系统服务的方法及装置 |
US9336302B1 (en) | 2012-07-20 | 2016-05-10 | Zuci Realty Llc | Insight and algorithmic clustering for automated synthesis |
US9292569B2 (en) * | 2012-10-02 | 2016-03-22 | Oracle International Corporation | Semi-join acceleration |
US8849871B2 (en) * | 2012-10-04 | 2014-09-30 | Oracle International Corporation | Efficient pushdown of joins in a heterogeneous database system involving a large-scale low-power cluster |
US9166865B2 (en) * | 2012-11-07 | 2015-10-20 | International Business Machines Corporation | Mobility operation resource allocation |
US9378232B2 (en) | 2013-09-21 | 2016-06-28 | Oracle International Corporation | Framework for numa affinitized parallel query on in-memory objects within the RDBMS |
US10089486B2 (en) * | 2013-10-31 | 2018-10-02 | Hewlett Packard Enterprise Development Lp | Non-blocking registration in distributed transactions |
CN103645940A (zh) * | 2013-12-04 | 2014-03-19 | 清华大学 | 远程调用方法及系统 |
US10437843B2 (en) | 2014-07-29 | 2019-10-08 | Microsoft Technology Licensing, Llc | Optimization of database queries via transformations of computation graph |
US10169433B2 (en) * | 2014-07-29 | 2019-01-01 | Microsoft Technology Licensing, Llc | Systems and methods for an SQL-driven distributed operating system |
US10176236B2 (en) | 2014-07-29 | 2019-01-08 | Microsoft Technology Licensing, Llc | Systems and methods for a distributed query execution engine |
US20160140195A1 (en) * | 2014-11-19 | 2016-05-19 | Oracle International Corporation | Custom parallization for database table loading |
US10073885B2 (en) | 2015-05-29 | 2018-09-11 | Oracle International Corporation | Optimizer statistics and cost model for in-memory tables |
US9990308B2 (en) | 2015-08-31 | 2018-06-05 | Oracle International Corporation | Selective data compression for in-memory databases |
CN105528253A (zh) * | 2015-11-24 | 2016-04-27 | 无锡江南计算技术研究所 | 一种异构众核系统上的流水式通信并行方法 |
US10055358B2 (en) | 2016-03-18 | 2018-08-21 | Oracle International Corporation | Run length encoding aware direct memory access filtering engine for scratchpad enabled multicore processors |
US10402425B2 (en) | 2016-03-18 | 2019-09-03 | Oracle International Corporation | Tuple encoding aware direct memory access engine for scratchpad enabled multi-core processors |
US10061714B2 (en) | 2016-03-18 | 2018-08-28 | Oracle International Corporation | Tuple encoding aware direct memory access engine for scratchpad enabled multicore processors |
US10061832B2 (en) | 2016-11-28 | 2018-08-28 | Oracle International Corporation | Database tuple-encoding-aware data partitioning in a direct memory access engine |
US10599488B2 (en) | 2016-06-29 | 2020-03-24 | Oracle International Corporation | Multi-purpose events for notification and sequence control in multi-core processor systems |
US10380058B2 (en) | 2016-09-06 | 2019-08-13 | Oracle International Corporation | Processor core to coprocessor interface with FIFO semantics |
US10936554B2 (en) | 2016-09-17 | 2021-03-02 | Oracle International Corporation | Incremental rationalization in hierarchical systems |
US10783102B2 (en) | 2016-10-11 | 2020-09-22 | Oracle International Corporation | Dynamically configurable high performance database-aware hash engine |
US10176114B2 (en) | 2016-11-28 | 2019-01-08 | Oracle International Corporation | Row identification number generation in database direct memory access engine |
US10459859B2 (en) | 2016-11-28 | 2019-10-29 | Oracle International Corporation | Multicast copy ring for database direct memory access filtering engine |
US10725947B2 (en) | 2016-11-29 | 2020-07-28 | Oracle International Corporation | Bit vector gather row count calculation and handling in direct memory access engine |
US11205103B2 (en) | 2016-12-09 | 2021-12-21 | The Research Foundation for the State University | Semisupervised autoencoder for sentiment analysis |
CN107273525A (zh) * | 2017-06-23 | 2017-10-20 | 上海携程商务有限公司 | 函数式查询方法及系统 |
CN107918676B (zh) * | 2017-12-15 | 2022-01-18 | 联想(北京)有限公司 | 结构化查询的资源优化方法及数据库查询系统 |
DE102018104752A1 (de) * | 2018-03-01 | 2019-09-05 | Carl Zeiss Ag | Verfahren zum Ausführen und Übersetzen eines Computerprogrammes in einem Rechnerverbund, insbesondere zum Steuern eines Mikroskops |
US11467878B2 (en) * | 2018-09-28 | 2022-10-11 | Amazon Technologies, Inc. | Orchestration of computations using a remote repository |
US11868355B2 (en) * | 2019-03-28 | 2024-01-09 | Indiavidual Learning Private Limited | System and method for personalized retrieval of academic content in a hierarchical manner |
CN110008042A (zh) * | 2019-03-28 | 2019-07-12 | 北京易华录信息技术股份有限公司 | 一种基于容器的算法级联方法及系统 |
US20200320035A1 (en) * | 2019-04-02 | 2020-10-08 | Micro Focus Software Inc. | Temporal difference learning, reinforcement learning approach to determine optimal number of threads to use for file copying |
US20220222256A1 (en) * | 2019-04-03 | 2022-07-14 | University Of South Florida | Batched query processing and optimization |
US11461324B2 (en) | 2019-08-29 | 2022-10-04 | Oracle International Corporation | First futamura projection in the context of SQL expression evaluation |
US11531652B2 (en) * | 2019-08-30 | 2022-12-20 | Oracle International Corporation | Database modularization of pluggable guest languages |
US11294894B2 (en) | 2019-08-30 | 2022-04-05 | Oracle International Corporation | Dynamic resolution of dependencies for database guest languages |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07271738A (ja) * | 1994-03-31 | 1995-10-20 | Nec Corp | ソフトウエア・アーキテクチャを用いた高度並列コンピュータ・システムの制御方式 |
JPH10232875A (ja) * | 1997-02-19 | 1998-09-02 | Hitachi Ltd | データベース管理方法および並列データベース管理システム |
US6009455A (en) * | 1998-04-20 | 1999-12-28 | Doyle; John F. | Distributed computation utilizing idle networked computers |
US6041344A (en) * | 1997-06-23 | 2000-03-21 | Oracle Corporation | Apparatus and method for passing statements to foreign databases by using a virtual package |
WO2000028431A1 (en) * | 1998-11-05 | 2000-05-18 | Bea Systems, Inc. | Clustered enterprise javatm having a message passing kernel in a distributed processing system |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6434694B1 (en) * | 1998-06-29 | 2002-08-13 | Sun Microsystems, Inc. | Security for platform-independent device drivers |
US6483851B1 (en) * | 1998-11-13 | 2002-11-19 | Tektronix, Inc. | System for network transcoding of multimedia data flow |
US6434594B1 (en) * | 1999-03-09 | 2002-08-13 | Talk2 Technology, Inc. | Virtual processing network enabler |
US20030158886A1 (en) * | 2001-10-09 | 2003-08-21 | Walls Jeffrey J. | System and method for configuring a plurality of computers that collectively render a display |
US6924799B2 (en) * | 2002-02-28 | 2005-08-02 | Hewlett-Packard Development Company, L.P. | Method, node, and network for compositing a three-dimensional stereo image from a non-stereo application |
US20030212742A1 (en) * | 2002-05-07 | 2003-11-13 | Hochmuth Roland M. | Method, node and network for compressing and transmitting composite images to a remote client |
-
2003
- 2003-12-02 US US10/724,834 patent/US7047252B2/en not_active Expired - Lifetime
-
2004
- 2004-12-02 JP JP2006542690A patent/JP4774372B2/ja active Active
- 2004-12-02 CA CA002545933A patent/CA2545933C/en active Active
- 2004-12-02 WO PCT/US2004/040114 patent/WO2005057410A1/en not_active Application Discontinuation
- 2004-12-02 EP EP04812592A patent/EP1690183B1/en active Active
- 2004-12-02 DE DE602004020919T patent/DE602004020919D1/de active Active
- 2004-12-02 AU AU2004297890A patent/AU2004297890B2/en active Active
- 2004-12-02 CN CN2004800356557A patent/CN1890643B/zh active Active
-
2006
- 2006-09-26 HK HK06110710.2A patent/HK1090147A1/xx unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07271738A (ja) * | 1994-03-31 | 1995-10-20 | Nec Corp | ソフトウエア・アーキテクチャを用いた高度並列コンピュータ・システムの制御方式 |
JPH10232875A (ja) * | 1997-02-19 | 1998-09-02 | Hitachi Ltd | データベース管理方法および並列データベース管理システム |
US6041344A (en) * | 1997-06-23 | 2000-03-21 | Oracle Corporation | Apparatus and method for passing statements to foreign databases by using a virtual package |
US6009455A (en) * | 1998-04-20 | 1999-12-28 | Doyle; John F. | Distributed computation utilizing idle networked computers |
WO2000028431A1 (en) * | 1998-11-05 | 2000-05-18 | Bea Systems, Inc. | Clustered enterprise javatm having a message passing kernel in a distributed processing system |
JP2002529855A (ja) * | 1998-11-05 | 2002-09-10 | ビーイーエイ システムズ, インコーポレイテッド | 分散処理システムにおけるメッセージパッシングカーネルを有するクラスター化エンタープライズジャバ |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013536492A (ja) * | 2010-07-07 | 2013-09-19 | アリババ・グループ・ホールディング・リミテッド | 複数のシステムを用いたデータ解析 |
US10956422B2 (en) | 2012-12-05 | 2021-03-23 | Oracle International Corporation | Integrating event processing with map-reduce |
JP2015022388A (ja) * | 2013-07-17 | 2015-02-02 | 株式会社東芝 | データベース・システム |
JP2017517775A (ja) * | 2014-06-11 | 2017-06-29 | オラクル・インターナショナル・コーポレイション | データストリームのカスタムパーティション |
WO2017056189A1 (ja) * | 2015-09-29 | 2017-04-06 | 株式会社日立製作所 | 管理システム、データ処理方法、及び記憶媒体 |
US11573965B2 (en) | 2016-09-15 | 2023-02-07 | Oracle International Corporation | Data partitioning and parallelism in a distributed event processing system |
US10789250B2 (en) | 2016-09-15 | 2020-09-29 | Oracle International Corporation | Non-intrusive monitoring output of stages in micro-batch streaming |
US10713249B2 (en) | 2016-09-15 | 2020-07-14 | Oracle International Corporation | Managing snapshots and application state in micro-batch based event processing systems |
US10628424B2 (en) | 2016-09-15 | 2020-04-21 | Oracle International Corporation | Graph generation for a distributed event processing system |
US11615088B2 (en) | 2016-09-15 | 2023-03-28 | Oracle International Corporation | Complex event processing for micro-batch streaming |
US11657056B2 (en) | 2016-09-15 | 2023-05-23 | Oracle International Corporation | Data serialization in a distributed event processing system |
US11977549B2 (en) | 2016-09-15 | 2024-05-07 | Oracle International Corporation | Clustering event processing engines |
US10880363B2 (en) | 2017-03-17 | 2020-12-29 | Oracle International Corporation | Integrating logic in micro batch based event processing systems |
US10958714B2 (en) | 2017-03-17 | 2021-03-23 | Oracle International Corporation | Framework for the deployment of event-based applications |
US11394769B2 (en) | 2017-03-17 | 2022-07-19 | Oracle International Corporation | Framework for the deployment of event-based applications |
US11503107B2 (en) | 2017-03-17 | 2022-11-15 | Oracle International Corporation | Integrating logic in micro batch based event processing systems |
Also Published As
Publication number | Publication date |
---|---|
EP1690183A1 (en) | 2006-08-16 |
CN1890643A (zh) | 2007-01-03 |
CA2545933C (en) | 2009-09-15 |
AU2004297890A1 (en) | 2005-06-23 |
JP4774372B2 (ja) | 2011-09-14 |
HK1090147A1 (en) | 2006-12-15 |
CN1890643B (zh) | 2011-02-02 |
US20050119988A1 (en) | 2005-06-02 |
WO2005057410A1 (en) | 2005-06-23 |
DE602004020919D1 (de) | 2009-06-10 |
AU2004297890B2 (en) | 2009-02-19 |
CA2545933A1 (en) | 2005-06-23 |
US7047252B2 (en) | 2006-05-16 |
EP1690183B1 (en) | 2009-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4774372B2 (ja) | 異種コンピュータシステムにわたる複雑計算 | |
US8112443B2 (en) | Method and system for executing a database query | |
US7885969B2 (en) | System and method for executing compute-intensive database user-defined programs on an attached high-performance parallel computer | |
US9092491B2 (en) | Searching documentation across interconnected nodes in a distributed network | |
US8478790B2 (en) | Mechanism for co-located data placement in a parallel elastic database management system | |
US7143078B2 (en) | System and method for managed database query pre-optimization | |
US7451136B2 (en) | System and method for searching multiple disparate search engines | |
US8620903B2 (en) | Database distribution system and methods for scale-out applications | |
US7558922B2 (en) | Apparatus and method for quick retrieval of search data by pre-feteching actual data corresponding to search candidate into cache memory | |
US7464073B2 (en) | Application of queries against incomplete schemas | |
US7103613B2 (en) | Object oriented query root leaf inheritance to relational join translator method, system, article of manufacture, and computer program product | |
US6850927B1 (en) | Evaluating queries with outer joins by categorizing and processing combinations of relationships between table records | |
CN110019314B (zh) | 基于数据项分析的动态数据封装方法、客户端和服务端 | |
US20120036166A1 (en) | Effective dating for table or relationship modifications | |
US11204746B2 (en) | Encoding dependencies in call graphs | |
US7213014B2 (en) | Apparatus and method for using a predefined database operation as a data source for a different database operation | |
US8719242B2 (en) | System and method for a database access statement interceptor | |
US8606744B1 (en) | Parallel transfer of data from one or more external sources into a database system | |
US7707138B2 (en) | Identifying columns for row based operations | |
US20070136332A1 (en) | System for managing a user defined type in a database |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070928 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070928 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071010 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100518 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100817 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100907 |
|
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: 20110621 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110627 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140701 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4774372 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |