UDAConceptualArchitectures Reviewing Data Access Conceptual Architectures OpenLink's Universal Data Access products all share the same, basic architecture.
Users are humans or non-human agents that leverage applications to obtain or manipulate SQL data held in data repositories. Users are identified by the hostname or IP address of the machine which hosts their target application(s).
The application layer refers to the sum total of applications, individual instances of applications, and any supporting frameworks that users exploit in the target architecture. Each instance of the application(s) is tasked with returning SQL data to users in a manner that is meaningful to them.
The data access layer comprises the middleware that communicates and fulfills SQL data requests between calling applications and data repositories. The data access layer may contain some combination of OpenLink UDA products, driver managers, database native clients, 3rd-party data sources or connection URLs, JREs, and SDKs. Necessary combinations and configuration of elements in the data access layer varies depending on other key factors in the overall architecture.
Data refers to SQL data that is contained in the target data repository or repositories.
Arrows depict TCP/IP and local IPC communications between architectural components. TCP/IP-based communications are indicated by arrows with broken lines. Local IPC-based communications are indicated by arrows with solid lines. Applications must be ... ODBC, JDBC, OLE DB and/or ADO .NET compliant SQL compliant Hosted on a platform for which OpenLink produces UDA client products Speak the same data access API as the UDA client product OpenLink client products must be ... Installed on a supported platform Installed on the same machine as the client application Paired with same version OpenLink server components when applicable The same bit format (32bit, 64bit) as the client application The same bit format as any other architectural component (i.e., driver manager) on the client machine <tgroup><thead /><tbody> <row> <entry> OpenLink's Single-Tier Lite drivers for DB2, Informix, Ingres, Oracle, and Progress must be installed on the same machine as the DBMS native client. OpenLink's Bridge drivers must be installed on the same machine as a functional JDBC or ODBC data source. </entry></row></tbody></tgroup></table><para>OpenLink server products must be ...</para> <itemizedlist mark="bullet" spacing="compact"><listitem>Installed on a supported platform</listitem> </itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem>The same bit format as any other architectural component (i.e., DBMS, DBMS native client) on the client machine</listitem> </itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem>Paired with same version OpenLink client components</listitem> </itemizedlist><table><title /><tgroup><thead /><tbody> <row> <entry> OpenLink's Multi-Tier Agents for DB2, Informix, Ingres, Oracle, and Progress must be installed on the same machine as the DBMS or DBMS native client. OpenLink's Multi-Tier Bridge Agents must be installed on the same machine as a functional JDBC or ODBC data source. </entry></row></tbody></tgroup></table><para>Data repositories must be ...</para> <itemizedlist mark="bullet" spacing="compact"><listitem>SQL compliant</listitem> </itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem>Some version supported by OpenLink</listitem> </itemizedlist><para>TCP/IP Networking must be ...</para> <itemizedlist mark="bullet" spacing="compact"><listitem>Enabled among machines comprised by the architecture</listitem> </itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem>Permit relevant machines to communicate through firewalls, where applicable</listitem> </itemizedlist><para> </para> <bridgehead class="http://www.w3.org/1999/xhtml:h3"> </bridgehead> <para>OpenLink assumes that potential users:</para> <itemizedlist mark="bullet" spacing="compact"><listitem>Want to query, migrate, or integrate SQL data using some combination of ODBC, JDBC, OLE DB, and/or ADO .NET compliant applications.</listitem> </itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem>Already possess the requisite applications and data repositories.</listitem> </itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem>Already possess 3rd-party JDBC or ODBC data sources when bridge connectivity is required.</listitem> </itemizedlist><para> </para> <bridgehead class="http://www.w3.org/1999/xhtml:h3"> </bridgehead> <para>Architects need to determine ...</para> <itemizedlist mark="bullet" spacing="compact"><listitem>The prioritization of performance, price, and security.</listitem> </itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem>Which machines can host OpenLink Data Access components.</listitem> </itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem>How the data access layer will be secured.</listitem> </itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem>What non-OpenLink data access architectural components exist in the architecture or can be easily obtained.</listitem> </itemizedlist><para> </para> <bridgehead class="http://www.w3.org/1999/xhtml:h3"> </bridgehead> <itemizedlist mark="bullet" spacing="compact"><listitem>Applications or data repositories may be hosted on platforms that OpenLink does not support.</listitem> </itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem>OpenLink may not have products that support connectivity to legacy data repositories.</listitem> </itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem>All architectural components hosted on a client machine must share the same bit descriptor, e.g., 32 or 64 bit. All architectural components hosted on a server machine must share the same bit descriptor. The same is true for components hosted on a gateway machine. </listitem> </itemizedlist></section></docbook>