プログラムが自身の処理する情報を保存するには、そのプログラムでファイルを使用する必要があります。 大量の情報を処理する場合は、通常、情報の保存と検索にデータベースやその他の型のデータ・ソースを使用します。データベース内に保存する情報の管理には、商用ソフトウェア (IBM® DB2® など) が役立ちます。
最も一般的なタイプのデータベースは、リレーショナル・データベース です。簡単に言えば、リレーショナル・データベース内の情報は表に格納されています。これらの表は、相互参照が可能となっています。リレーショナル・データベース管理システム (RDBMS) が、それぞれの表と関係を追跡します。データベース・マネージャーとの対話には、SQL と呼ばれる特殊な言語を使用します。一般的なタイプの RDBMS としては、IBM DB2、Microsoft SQL Server、Oracle、およびオープン・ソースの MySQL などがあります。
メインフレームの世界では、現在でも階層データベース が一般的です。 階層データベースは、ツリー状の構造になっており、各セグメント (表に相当) は親セグメント (各セグメントごとに 1 つのみ) と複数の子セグメントを持つことができます。階層データベース・マネージャーの例としては、IMS™ が挙げられます。 このデータベース・マネージャーとは、DL/I 言語を使用して対話できます。
この他に、ご使用のオペレーティング・システムが提供する下位レベルのデータ構造を使用するオプションがあります。この型のデータ・ソースを使用することにより、データの保存と検索の詳細について、より多くの部分をユーザー自身が管理することができます。IBM MVS™ システムでは、VSAM (仮想記憶アクセス方式) と呼ばれるファイル・アクセス方式を使用しています。 この方式では、プレーンな順次アクセス・ファイルと索引付きファイル (キー を使用してデータを追跡するもの) などのような、異なる複数のタイプのファイルに対して、直接書き込みを実行できます。
EGL では、実装に関する詳細ではなく、ビジネス・ロジックにフォーカスした、少数の基本コマンド (情報をフェッチしてレコードに入れる get など) を提供することを基本方針としています。 この仕組みの概要については、レコードの読み取りと書き込みを参照してください。