MUMPS

MUMPSとは、1960年代末にアメリカのマサチューセッツ総合病院で医療情報処理用のアプリケーションを開発し実行するた�…

MUMPS

MUMPSとは、1960年代末にアメリカマサチューセッツ総合病院で医療情報処理用のアプリケーションを開発し実行するために開発された、プログラミング言語とその環境である。

MUMPSという名前は、「Massachusetts general hospital Utility Multi-Programming System」 の頭字語である。

病院が自分達の業務を実装するために、高価なメインフレームではなく、ミニコンなどの比較的安価なコンピュータ上で軽快に動作するように開発した。オリジナルのソースコードこそ公開されてはいないが、仕様は全て公開して自由に利用できるようにしたため、一時期は複数のソフトウェアベンダーがMUMPS処理系の開発・販売をしていた。

MUMPSの処理系は、ハードウェアが直接実行可能な機械語コードを生成するのではなく、コンパイラは仮想マシン中間言語コードを生成し、それをインタプリタ(仮想マシン)で実行する。また、ベースのプラットフォームの違いを仮想マシンのレイヤで抽象化し、プログラマには違いを意識させず、アプリケーションのポータビリティを保つ。

また、実行環境に専用のデータベース管理システム (DBMS) を内包し、かつ、その機能・性能がデータベース専用のソフトウェアに迫る・または凌駕するほど強力であるため、アメリカの医療界を通じて日本のみならず全世界の医療界でも広域に普及した。ただし、システム利用者・運用管理担当はパッケージソフトウェアに組み込まれたMUMPSを利用している場合が多いため、広く利用されている割に知名度は低い。

M言語

M言語 (M Language) は、MUMPSで動作するアプリケーションを記述するプログラミング言語である。(MUMPS用の開発言語であるため → M言語)

ISO/IEC11756 Information technology−Programming languages−MUMPSととしてISO規格となっており、日本では 「JIS X 3011:1995 プログラム言語 MUMPS」 として国家規格となっている。

なお、エクセルPower Query英語版 で使用するプログラミング言語も「M言語」と呼ばれるが、上記とは全く別のものである。

MUMPSのデータベース

  • 特徴(多分岐ツリー構造、スパース配列によるデータ格納により「多次元データベース」と称される。)

近年のMUMPS

かつてあった複数のMUMPSベンダーは、度重なる買収・合併の結果により、現在は数社のみ存在している(インターシステムズ社、F.I.S社等)。アプリケーション開発手法としてMUMPS/M言語そのものは医療業界以外に広く普及しなかった。

しかし、インターシステムズ社がMUMPSのDBMS部分を強化し、かつM言語以外の多言語(Java/C・C++/VBなど)、Web技術(XML/Webサービス)による短期開発 (RAD) 機能、データベースとしての運用管理機能(分散データベース、ログによる可用性向上)を強化して、多次元データベース「Caché」(キャシェと読む)として販売している。原理的に複雑なツリー構造となっているデータの検索や文字列処理が得意なので、データベース全体が巨大で見通しの悪いようなアプリケーションにおいて、より高いパフォーマンスが期待される。CSPと呼ばれるWebアプリ開発では、ホームページ制作ソフトとしてポピュラーなDreamweaverを画面エディタとして使えるのも、魅力的と言える。

「Caché」は現在医療分野のみならず、開発効率のよさと運用性能の高さにより、RDBMSの独擅場であった金融・製造・物流などの基幹業務など多岐にわたり採用されている。ODBCドライバが用意されているので、他のDBMSからの移行もさほど困難ではないだろう。

関連項目

外部リンク

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.