quarta-feira, outubro 07, 2015

Natural System Files

Quando trabalhamos com Natural e Adabas em ambientes Mainframe, uma dúvida bastante comum, principalmente para quem está começando a administrar esse ambiente, é entender exatamente onde ficam armazenados os programas, objetos, definições e informações utilizadas pelas diversas ferramentas do ecossistema Natural. Afinal, quando desenvolvemos um programa Natural, criamos uma biblioteca, definimos um DDM no Predict ou configuramos informações no Natural Security, onde exatamente essas informações são gravadas? A resposta é que grande parte dessas informações não fica armazenada diretamente em datasets tradicionais do z/OS. O Adabas atua como o repositório de dados para diversos componentes do ecossistema Natural, utilizando files específicos para armazenar programas, objetos, definições e informações de configuração. Esses arquivos possuem funções diferentes e são fundamentais para o funcionamento do ambiente. Dependendo dos produtos instalados e da configuração utilizada pela organização, podemos encontrar files responsáveis pelo armazenamento dos objetos Natural, informações de segurança, definições de dados, informações do Predict, spool e outros componentes. Abaixo estão os principais System Files normalmente encontrados em um ambiente Natural/Adabas:

+-------------+------------------------------------------------------------------------------------------------+
| System File | Descrição                                                                                      |
+-------------+------------------------------------------------------------------------------------------------+
| FNAT        | Contém os programas e objetos Natural fornecidos pela Software AG.                             |
+-------------+------------------------------------------------------------------------------------------------+
| FUSER       | Contém programas e objetos Natural geralmente desenvolvidos pelos usuários.                    |
+-------------+------------------------------------------------------------------------------------------------+
| FSEC        | Utilizado quando o Natural Security está instalado.                                            |
|             | Contém informações necessárias ao funcionamento e controle do Natural Security.                |
+-------------+------------------------------------------------------------------------------------------------+
| FSPOOL      | Utilizado quando o Natural Advanced Facilities está instalado.                                 |
|             | Contém informações relacionadas ao spool e aos relatórios gerenciados pelo produto.            |
+-------------+------------------------------------------------------------------------------------------------+
| FDIC        | Contém informações relacionadas aos Data Definition Modules (DDMs).                            |
|             | Quando o Predict está instalado, também pode conter informações utilizadas pelo                |
|             | Predict Dictionary System.                                                                     |
|             | Quando o Natural Development Server está instalado, também pode armazenar descrições           |
|             | relacionadas às aplicações.                                                                    |
+-------------+------------------------------------------------------------------------------------------------+

FNAT — Natural System File

O **FNAT** é um dos principais System Files do ambiente Natural. De forma simplificada, podemos considerá-lo como um repositório que contém objetos e componentes Natural fornecidos pelo próprio produto. Nele podem existir objetos utilizados pelo Natural e por seus diversos componentes, incluindo recursos necessários ao funcionamento do ambiente. É importante entender que o FNAT não deve ser confundido com o local onde ficam todos os programas desenvolvidos pelos usuários. Essa função está normalmente associada ao **FUSER**. Por isso, em uma instalação Natural, é comum encontrarmos uma separação entre os objetos fornecidos pelo sistema e aqueles criados pelas equipes de desenvolvimento.

FUSER — User System File

O **FUSER** é particularmente importante para os desenvolvedores Natural. É nele que normalmente ficam armazenados os programas, subprogramas, subrotinas, mapas, copycodes e outros objetos desenvolvidos pelos usuários, dependendo da organização das bibliotecas e da configuração do ambiente. Quando um desenvolvedor entra no Natural, acessa uma biblioteca e trabalha com seus programas, esses objetos precisam estar armazenados em algum lugar. É justamente nesse contexto que o FUSER desempenha um papel fundamental. Podemos imaginar a estrutura conceitualmente desta maneira:
Adabas
  |
  +-- FUSER
       |
       +-- Biblioteca A
       |     +-- Programa 1
       |     +-- Programa 2
       |     +-- Subprograma
       |
       +-- Biblioteca B
       |     +-- Programa 10
       |     +-- Mapa
       |     +-- Subrotina
       |
       +-- Biblioteca C
             +-- Programas
             +-- Copycodes
             +-- Outros objetos
Essa organização é extremamente importante porque permite que o Natural trabalhe com bibliotecas e objetos sem que cada programa precise existir como um dataset independente no sistema operacional.

FSEC — Natural Security

Quando o **Natural Security** está instalado, entra em cena outro System File importante: o **FSEC**. O FSEC armazena informações utilizadas pelo Natural Security para controlar aspectos relacionados à segurança e ao acesso ao ambiente Natural. Isso permite implementar mecanismos de controle sobre usuários, bibliotecas, objetos e recursos do ambiente, conforme a configuração adotada pela organização. Em ambientes corporativos de grande porte, essa camada de segurança é especialmente importante, pois existem normalmente centenas ou milhares de usuários, bibliotecas e aplicações. Assim, o Natural Security funciona como uma camada adicional de controle sobre o ambiente Natural. Uma maneira simples de visualizar seria:
Usuário
   |
   v
Natural Security
   |
   +---- FSEC
           |
           +---- Informações de segurança
           +---- Controle de acesso
           +---- Configurações do ambiente
Dessa forma, o FSEC não deve ser tratado simplesmente como mais um file de aplicação. Ele faz parte da infraestrutura utilizada pelo Natural Security.

FSPOOL — Natural Advanced Facilities

O FSPOOL está relacionado ao Natural Advanced Facilities quando esse componente está instalado no ambiente. Esse System File é utilizado para armazenar informações relacionadas ao gerenciamento de spool e relatórios. Em ambientes mais antigos, nos quais o Natural Advanced Facilities é utilizado, entender a existência do FSPOOL pode ser importante durante atividades de manutenção, migração ou troubleshooting. Isso porque determinadas informações que aparentemente estão relacionadas apenas à execução ou impressão de relatórios podem estar armazenadas no próprio ambiente Adabas.

FDIC — Data Definition Modules e Predict

Outro System File extremamente importante é o **FDIC**. O FDIC está relacionado aos **Data Definition Modules (DDMs)**, que possuem um papel fundamental na comunicação entre os programas Natural e as estruturas de dados do Adabas. Quando trabalhamos com Natural e Adabas, o programa precisa conhecer a estrutura dos dados que serão utilizados. É nesse contexto que entram os DDMs. Um DDM pode ser entendido, de maneira simplificada, como uma descrição da estrutura de um arquivo de dados que pode ser utilizada pelos programas Natural. Por exemplo, imagine um arquivo Adabas contendo informações de clientes:
Adabas File
     |
     +-- Cliente
          |
          +-- Código
          +-- Nome
          +-- CPF
          +-- Data de Nascimento
          +-- Endereço
          +-- Telefone
O DDM fornece ao Natural uma representação desses campos que pode ser utilizada durante o desenvolvimento dos programas. Quando o **Predict** está instalado, o FDIC também assume uma importância ainda maior, pois passa a estar relacionado às informações utilizadas pelo **Predict Dictionary System**. Nesse cenário, o FDIC funciona como uma espécie de repositório de definições e metadados utilizados pelos produtos.

Qual é a relação entre Natural, Adabas e esses System Files?

Uma maneira interessante de entender o funcionamento do ambiente é separar três conceitos. Primeiro temos o Adabas, responsável pelo armazenamento dos dados. Depois temos os System Files, que são files Adabas utilizados pelos próprios produtos e ferramentas do ecossistema Natural. E finalmente temos os **programas e objetos Natural**, que são armazenados nesses repositórios de acordo com a finalidade de cada System File. Podemos representar essa relação da seguinte forma:
                         ADABAS
                            |
        +-------------------+-------------------+
        |                   |                   |
       FNAT                FUSER               FDIC
        |                   |                   |
        |                   |                   +-- DDMs
        |                   |                   +-- Predict
        |                   |
        |                   +-- Programas
        |                   +-- Subprogramas
        |                   +-- Mapas
        |                   +-- Subrotinas
        |
        +-- Objetos Natural
                            
        +---------------------------------------+
        | FSEC                                  |
        | Natural Security                      |
        +---------------------------------------+
        
        +---------------------------------------+
        | FSPOOL                                |
        | Natural Advanced Facilities           |
        +---------------------------------------+


Por que conhecer esses arquivos é importante?

Conhecer os System Files é fundamental para quem trabalha com administração de Natural e Adabas. Em uma situação de manutenção, por exemplo, alguém pode perguntar onde está armazenado determinado programa Natural. A resposta não é simplesmente "no Adabas". É necessário saber **qual banco**, **qual file**, **qual biblioteca** e **qual objeto** está envolvido. Da mesma maneira, quando existe um problema relacionado ao Natural Security, o FSEC passa a ser um dos componentes importantes da investigação. Se o problema estiver relacionado a DDMs ou ao Predict, o FDIC passa a ter papel central. Se o ambiente utiliza recursos do Natural Advanced Facilities, o FSPOOL também precisa ser considerado. Essa separação facilita bastante o trabalho de administração e troubleshooting.

Um ponto importante para administradores Adabas

É importante lembrar que os System Files são **files Adabas**. Portanto, eles estão sujeitos às mesmas preocupações administrativas que outros arquivos do ambiente. Backup, restore, proteção, disponibilidade, espaço, manutenção e procedimentos de recuperação precisam ser tratados com cuidado. Um problema no FUSER, por exemplo, pode afetar diretamente o acesso aos programas e objetos utilizados pelos desenvolvedores. Da mesma forma, problemas no FSEC podem comprometer o funcionamento das configurações do Natural Security. Por isso, conhecer a localização lógica dessas informações é tão importante quanto conhecer os próprios programas.

Natural e Adabas: uma arquitetura integrada

Quando começamos a trabalhar com Natural, pode parecer que estamos apenas utilizando uma linguagem de programação. Na realidade, o ecossistema é muito mais amplo. Temos o Natural como ambiente de desenvolvimento e execução, o Adabas como banco de dados e diversos System Files responsáveis por armazenar informações utilizadas pelos próprios produtos. Essa arquitetura explica por que ambientes Natural/Adabas conseguem permanecer funcionando durante muitos anos. Os programas, definições, informações de segurança e metadados não estão espalhados aleatoriamente. Eles fazem parte de uma estrutura integrada entre o Natural e o Adabas. Para quem trabalha com Mainframe, conhecer essa estrutura é fundamental.

Resumo dos principais System Files

Para facilitar a consulta, podemos resumir:
FNAT    → Objetos e componentes do Natural fornecidos pelo sistema

FUSER   → Programas e objetos desenvolvidos pelos usuários

FSEC    → Informações utilizadas pelo Natural Security

FSPOOL  → Informações do Natural Advanced Facilities / spool

FDIC    → DDMs e informações relacionadas ao Predict
           e outros componentes que utilizam o Data Dictionary

Conclusão

Entender onde ficam armazenados os objetos do Natural é uma das primeiras coisas que um profissional precisa aprender quando começa a trabalhar com esse ecossistema. O código-fonte que desenvolvemos, os objetos compilados, os DDMs, as informações do Predict e as configurações de segurança não estão simplesmente "soltos" dentro do ambiente. Eles estão organizados em **System Files específicos**, armazenados no Adabas. Essa arquitetura pode parecer antiga para quem está acostumado com linguagens e plataformas modernas, mas possui uma lógica muito bem definida e continua sendo utilizada em muitos ambientes corporativos de grande porte. Para quem trabalha com **Natural, Adabas, Predict ou Natural Security**, conhecer FNAT, FUSER, FSEC, FSPOOL e FDIC é fundamental não apenas para desenvolvimento, mas também para administração, backup, recuperação, migração e troubleshooting. Este material foi baseado nas informações apresentadas na documentação **Natural Version 4.1.2 for Mainframes – Fundamentals**, sendo especialmente útil para quem trabalha com versões tradicionais do Natural em ambientes Mainframe. E existe uma pergunta interessante para quem trabalha diariamente com Natural: **Você sabe exatamente em qual banco Adabas e em quais files estão armazenadas as bibliotecas e os programas do seu ambiente?** Essa informação pode parecer simples, mas em uma situação de manutenção ou recuperação de emergência, conhecer essa estrutura pode fazer toda a diferença.

0 Comments:

Enviar um comentário