Adabasは「adaptable database system」の略称[1] [2]で、 Software AGがIBMメインフレーム上で動作するように開発したデータベースパッケージです。1971年に非リレーショナル[3]データベースとして発売されました。2019年現在、AdabasはLinux、Unix、Windowsを含むより幅広いプラットフォームで使用できるように販売されています[4]。[5]
Adabas では、同じテーブルに複数のデータ関係を保存できます。
歴史
Adabasは、1971年にSoftware AGによってDOS/360、OS/MFT、またはOS/MVTを使用するIBMメインフレームシステム向けに最初にリリースされました[6] 。現在では、 BS2000、z/VSE、z/OS、Unix、Linux、Microsoft Windowsなどのさまざまなエンタープライズシステムで利用できます。[7] Adabasは、Software AGのプログラミング言語Naturalと組み合わせて使用されることが多く、バックエンドでAdabasをデータベースとして使用する多くのアプリケーションはNaturalで開発されています。2016年に、Software AGは、AdabasとNaturalを2050年以降もサポートすると発表しました。[8]
Adabasは3つの主要な逆リストDBMSパッケージの1つであり、他の2つはComputer Corporation of AmericaのModel 204とADRのDatacom/DBである。[9]
4GLサポート
1979年にNatural [10] [11]が導入されて以来、Adabasデータベースの人気は高まってきました。1990年までにSAS [12]がAdabasをサポートするようになりました。
非リレーショナル
2015年のホワイトペーパーで、IBMは「Adabasのようなプレリレーショナルデータベースで書かれたアプリケーションはもはや主流ではなく、IT業界の標準に従っていない」と述べています。[13]しかし、Adabasデータベースはリレーショナルモデルに従って設計することができます。Adabasをさまざまなリレーショナルデータベースに変換するツールやサービスはありますが、[14] [15]このような移行は通常コストがかかります。[16] [17]
ハードウェアzIIPブースト
IBMのzIIP(System z Integrated Information Processor)特殊用途プロセッサは、「Adabasへの直接のリアルタイムSQLアクセス」を可能にします(データが非リレーショナル形式で保存されている場合でも)。[18]
Adabas データ モデル
AdabasはAdaptable Data Base System [19]の頭字語です(元々はすべて大文字で書かれていましたが、現在では製品名には最初の大文字のみが使用されています)。
Adabas は、次の特性または用語を持つ逆リストデータベース です。
- テーブル(ファイルと呼ばれる)と行(レコードと呼ばれる)を主要な組織単位として扱う
- 列(フィールドと呼ばれる)は行の構成要素である
- 埋め込みSQLエンジンはありません。Adabas SQL Gateway経由のSQLアクセスは、2004年に買収した会社CONNXを通じて導入されました。[20] AdabasへのODBC、JDBC、OLE DBアクセスを提供し、 COBOLプログラムを使用してAdabasへのSQLアクセスを可能にします。
- 検索機能では、インデックス付きフィールド、インデックスなしフィールド、またはその両方を使用できます。
- 参照整合性制約をネイティブに強制しないため、親子関係はアプリケーション コードによって維持される必要があります。
- 非正規化の 2 つの方法(レコード内の繰り返しグループ (「定期グループ」) とレコード内の複数値フィールド (「複数値フィールド」)) をサポートします。
Adabasは通常、大量のデータ処理を必要とするアプリケーションや、高トランザクションのオンライン分析処理環境で使用されます。[21]
Adabas へのアクセスは通常、READ、FIND、HISTOGRAM などの Natural ステートメントのいずれかを使用して Natural モジュールを介して行われます。これらのステートメントは、ファイルのオープンやクローズなどの追加のコマンドを内部的に生成します。Adabas データは直接呼び出しによって取得することもできます。[引用が必要]
Adabas に対して実行される Natural プログラムの例
名前= 'JONES'または= 'BAKER' 、都市= 'BOSTON'から'NEW YORK' 、都市NE 'CHAPEL HILL'で、給与が28000未満の従業員を名前で並べ替えて検索します。名前を表示- 名 -都市給与END - 検索END
上記のプログラムでは、WITH 句で指定された検索条件は Adabas によって処理され、WHERE 句で指定された追加のフィルタリングは Natural によって実行されます。
プログラムの出力:
名前 ファーストネーム 都市 給与
---------------------------------
ベイカー ポーリン ダービー 4450
ジョーンズ マーサ カラマズー 21000
ジョーンズ ケビン ダービー 7000
ナチュラル(4GL)
Naturalは独自の第4世代プログラミング言語です。これは最初の(1971年)Adabasリリースには含まれていませんでした。[22]
自然プログラムは、解釈的に「実行」することも、コンパイルされたオブジェクトとして「実行」することもできます。[23]コンパイルされたプログラムは、オペレーティングシステムのサービスをより直接的に使用でき、より高速に実行できます。
支持者たちは、NaturalはCOBOLの競合相手から「サービス( SOA )を書くための言語としてJavaと競合する存在」へと進化したと述べている。[24]
ナチュラルについて
画面指向のエディタが組み込まれた Natural には、システムと言語という 2 つの主要コンポーネントがあります。
システムは、ユーザーと処理環境の他のすべてのコンポーネント間の通信の中心的な手段です。
この言語は構造化されており、従来の言語よりも手続き的ではありません。
自然オブジェクト (プログラム、マップ、データ領域など) は、DOS ディレクトリに似た構造を持つライブラリに格納され、最大 8 文字の識別子を使用して名前を付けることができます。
オブジェクトは、たとえ異なるタイプであっても、同じ名前を持つことはできません (同じライブラリ内)。
Natural は、オンライン実行とバッチ実行の両方を提供します。バッチ プログラムは、最大 32 個の作業ファイルの読み取り/書き込みと、最大 32 個のレポートの印刷が可能です。Natural は、開発者がコードをステップ実行して変数の内容を表示できる対話型デバッガーもサポートしています。
z/OS、z/VSE、BS2000/OS、Linux、Unix、Windows用のバージョンが存在します。[25]
言語機能
Natural は Adabas ファイルだけでなく、Oracle、 DB2などもサポートします。
サンプルコード:
DEFINE DATA LOCAL 01 EMPLOYEES従業員のビュー02 SALARY ( 1 ) END-DEFINE READ従業員を名前で表示 データ の終わりにMIN ( EMPLOYEES . SALARY ( 1 )) ( EM = ZZZ 、ZZZ 、ZZ9 ) AVER ( EMPLOYEES . SALARY ( 1 )) ( EM = ZZZ 、ZZZ 、ZZ9 ) MAX ( EMPLOYEES . SALARY ( 1 )) ( EM = ZZZ 、ZZZ 、ZZ9 ) END-ENDDATA END-READ END
出力:
ページ 1 18-08-22 16:42:22
年次 年次 年次
給料 給料 給料
----------- ----------- -----------
0 240,976 6,380,000
この言語は、変数の明示的な型付けを使用して強く型付けされており、次のいずれかになります。
- 英数字
- 数値ゾーン 10 進数、合計 27 桁まで、そのうち 7 桁は小数点の右側になります。
- パック10進数、[26]「数値」と同じ制限)
- 整数 (1、2、または 4 バイト、範囲 -128 ~ 127 / -32,768 ~ 32,767、および -2,147,483,648 ~ 2,147,483,647)
- 日付
- 時間(日付を含む)
- 論理的(真か偽か)
- バイナリ
- 制御変数並列化CICSマップ属性
- 浮動小数点数(4 または 8 バイト)
システムファイル
システム ファイルは、Natural が使用するために予約されている Adabas ファイルであり、次のような内容が含まれます (ただし、これらに限定されません)。
- すべての Natural プログラム (ソース形式 (プログラム) とオブジェクト形式 (コンパイル済み) の両方) がライブラリにグループ化されています。
- ファイル定義モジュール、またはデータ定義モジュール (DDM)。Adabas または Natural でサポートされている他のデータベース内で定義されたフィールド、およびフィールドのグループ化/サブセットであるユーザービューを記述します。
- 自然なエラーメッセージ。
- ヘルプ機能のテキスト。
システム ファイルは Adabas に限定されません。Natural はメインフレーム オペレーティング システム上の VSAM にプログラムを格納することもできます。Natural は Windows およびさまざまな Unix 実装上のファイル システムを使用します。
プログラム
自然物は最大 8 文字の名前で識別され、最初の文字はアルファベットでなければなりません。
Natural プログラム エディターでは、最大 72 行のソースを使用できます。行には 4 桁の番号が付けられます。この番号は、プログラムの作成時に Natural によって生成されます。行番号はコンパイラとエディターによって使用され、プログラム内で重要な論理機能を持つ場合があります。
コメントは次の 2 つの方法で追加できます。
- 完全な行コメントは、「*」または「**」プレフィックスによって識別されます。
- 注釈付きのコード行には「/*」があり、その右側にあるものはすべてコメントです。
例:
0010 * この2行(0010と0020) 0020 **はコメントです。 0030 FORMAT LS = 80 /* この行の部分(0030)と同様に 0040 * 注意: 「/*」形式では、スラッシュとアスタリスクの間にスペースはありません。 。 。 0200 終了
「END」または「.」はプログラムの終了を示します。
Hello World コードの例:
* NATURALのHello World 「Hello World!」と書いてください。 終わり
関連製品
ほとんどの Natural インストールには、次のようなアドオン製品が含まれています。
- Natural Security - ユーザー、ライブラリ、ファイル (テーブル) に関連するセキュリティを管理するために使用されます。
- Predict - ファイル、関係、プログラムなどを定義および文書化するために使用される辞書。
- Natural Construct - Natural アプリケーションを生成するために使用されるコード ジェネレーター。
参照
参考文献
- ^ SM Deen (1977). データベースシステムの基礎. p. 174. ISBN 1349158437。
- ^ 「Adaptable Data Base System(ADABAS)は、西ドイツのダルムシュタットにある Software AG によって開発されました。最初のバージョンは 1971 年に登場し、現在ではヨーロッパと米国で 80 を超える導入実績があります。」
- ^ 「歴史的には、解決策は Adabas で使用される反転構造などの非リレーショナル構造を使用することでした...」John Watson (2007)。Pro Oracle Collaboration Suite 10g。324 ページ。ISBN 978-1430202356。
- ^ 以前は大文字で表記されていたが、現在はAdabasとなっている
- ^ 「Software AG 製品ドキュメント」. document.softwareag.com . 2023 年3 月 22 日閲覧。
- ^ 「Adabas はインストールベースにおいて引き続き重要な役割を果たしている」 。2017年2 月 12 日閲覧。
- ^ 「Adabas & Natural Database Management System - Software AG」 。 2017年2月12日閲覧。
- ^ 「Software AG、新たな「Adabas & Natural 2050」アジェンダを発表」(プレスリリース)。2016年8月31日。
- ^ 「Software AG メモリ」。2011 年 3 月 25 日
。ADABAS は、3 つの主要な逆リスト DBMS の 1 つであり、他の 2 つは Computer Corporation of America の Model 204 と ADR の Datacom/DB です。
- ^ 「Adabas の新製品」。Computerworld 1978 年 5 月 29 日、p. 27。
- ^ 「Adabas データ辞書システムと Adacom バッチ レポート ライターはどちらも 7 月にリリースされる予定で、自然言語プログラミング言語である Natural は... 完全に再入可能で、マルチスレッドで、優先度ディスパッチが可能なこのシステムはアルファ テスト中であり、1979 年 1 月に一般リリースされる予定です。」
- ^ 「SAS/ACCESS 9.2 ADABAS へのインターフェース: リファレンス」(PDF)。
- ^ 「Adabas から IBM DB2 for z/OS への変換」(PDF)。
- ^ 「ADABAS データベースの IBM DB2、Oracle、Microsoft SQL Server への移行」。
- ^ 「...第 4 世代言語 (4GL) で記述されたアプリケーションをより現代的な言語に変換すること、および標準プログラミング言語で記述されたアプリケーションを新しいリレーショナル データベースに直接アクセスできるように適応させることが含まれます。この範囲には、Software AG の Adabas および Natural が含まれます...」
- ^ 「Adabas から DB2 への変換」。
- ^ 「コスト: 「これまでのところ、変換に 2 年と 3,000 万ドルがかかっています。」 _対_ 利点: (ただし) 「単一の SQL ステートメント (結合を含む) で、何ページものコードを置き換えることができます。」
- ^ 「データ仮想化で Adabas と Natural へのアクセスを簡素化する 5 つの方法」(PDF)。1990 年。
- ^ プラット&アダムスキー、1987、p. 471
- ^ 「CONNX for Adabas | CONNX ソリューション」www.connx.com 。2017年9 月 1 日閲覧。
- ^ 「ADABAS とは何か?」
- ^ 「Adabas / Natural – 先駆者からリレゲーターへ - 40 年以上にわたる高速かつ独自の技術」。[永久リンク切れ ]
- ^ 「自然プログラムアクティビティ」。
- ^ 「COBOL/DB2 と Natural/ADABAS のどちらが優れているか」 2011 年 7 月 6 日。
- ^ 「リソースライブラリ」. Resources.softwareag.com . 2023年3月22日閲覧。
- ^ 「パック 10 進数形式」。IBM。2012年6 月。
文献
- Pratt, Philip J.; Adamski, Joseph J. (1987)。データベースシステム: 管理と設計。ボストン: Boyd & Fraser Publishing Company。ISBN 0-87835-227-9。
外部リンク
- ADABAS製品ホームページ
- ADABAS 開発者コミュニティ
- ADABASディスカッションフォーラム
