Download presentation
Presentation is loading. Please wait.
Published byStephany Walsh Modified over 8 years ago
1
11 Connecting with Ingres: Understanding the Ingres Architecture Bruce Lunsford Architect, Ingres Connectivity 1
2
2 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Abstract Ever wonder how Enterprise Access, Star, Ingres, Ingres Net, OpenROAD, and all the other offerings fit together? Do you need to understand which drivers to use, how to interface and take advantage of Ingres within your solution? This session is an overview of how the various products work together and how to adapt the Ingres family of solutions to meet your needs.
3
3 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Agenda Ingres Architecture Overview Ingres/Net & GCF Application Environments Enterprise Access EDBC STAR Replicator OpenROAD Application Server
4
4 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Ingres Architecture Overview Client Server Interprocess communication over various OS protocols Ingres GCF (General Communications Facility) Ingres DBMS process OS threads Internal threads (optional, not recommended in general) Recovery and archiver run as separate processes Multiple instances may be started Identified by 2-character installation id Enables multiple installations per machine
5
5 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. GCF and Ingres Net GCF provides communication capability among all the components of Ingres. It enables message passing between Ingres applications (front-ends) and servers (back-ends) on the same or different machines in a manner transparent to the caller. GCF often considered synonymous with Ingres/Net; however, technically speaking, Ingres/Net is only the GCC sub-facility of GCF.
6
6 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Consistent Messaging Interface All clients and servers support a single messaging API called GCA GCA is used to pass requests from clients to servers and obtains responses from servers as network messages GCA (along with GCF) hides the following: Location and system architecture of client from server Location and system architecture of server from client
7
7 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Functions and Characteristics Transport SQL-oriented messages between applications and servers. Handle machine/OS data type and language (character set) differences transparently to the application and server Authenticate user (security) Route application requests to appropriate server Load balancing (simple) Common interface for all components
8
8 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Functions and Characteristics Synchronous and asynchronous execution Support multiple network protocols Client-server, point-to-point protocol (not a queuing or publish/subscribe protocol) Provides multiple simultaneous network connections
9
9 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Architecture (GCA, GCC, GCN, etc) GCA – Application Program Interface GCB – Communication Bridge GCC – Communication Server (aka, Ingres/Net) GCD – Data Access Server GCN – Name Server GC – Compatibility Library routines – local IPC and network protocol drivers (TCP/IP, DECNET, etc) GC* - other internal components Primary Components:
10
10 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Architecture (GCA, GCC, GCN, etc) Application GCN GCC GCN (Local) DBMS (Remote) DBMS Ingres Client / Server Ingres Server [vnode::]dbname[/dbtype] - Local server port registrations - Vnode database Registration of server ports to GCN are done once at startup of each process … (see dash/dotted line) and then bedchecked periodically to make sure still running and get load balance info.
11
11 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Architecture (GCA, GCC, GCN, etc) Application GCN GCC Ingres Client GCC GCN (Remote) DBMS Ingres Server GCB GCN Ingres Bridge
12
12 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Architecture (GCA, GCC, GCN, etc) Application GCN GCC GCN (Local) DBMS (Remote) DBMS Ingres Client / Server Ingres Server GCA GCAGCA GCAGCA GCAGCA GCAGCA
13
13 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. GCC Architecture (GCF) Ingres/NET Layers ESQL, OpenROAD,SQL/TM, ABF, … LIBQ GCA GCA CL OpenA PI ODBC Driver ODBC Appl/Mg r GCA GCA CL GCN GCA GCA CL GCC CL GCD GCA GCA CL GCC CL JDBC or.Net Appl JDBC or.Net Driver GCC GCA GCA CL GCC CL GCA GCA CL GCN GCA GCA CL DBM S Machine Boundary GCA Connections GCC Connections GCA Connections Front End Name Server Name Server Comm Server Comm Server Back End DAS Server OpenA PI
14
14 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. GCC Architecture - Simplified ESQL, OpenROAD,SQL/TM, ABF, … LIBQ OpenA PI ODBC Driver ODBC App GCD JDBC or.Net Appl JDBC or.Net Driver GCC DBM S Machine Boundary GCA Connections GCC Connections GCA Connections Front End Ingres/Net Back End DAS Ingres/Net GCD DBM S GCA Connections Drivers (Perl, Python, PHP, etc) use: OpenA PI
15
15 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Architecture Points Back-end unaware of type of front-end Front-end unaware of type of back-end Back-end can be Ingres DBMS, STAR, EA, or EDBC Front-end applications all go through one of following: ESQL/LIBQ OpenAPI For JDBC and.Net, OpenAPI is in the DAS
16
16 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Open Application Program Interface (OpenAPI) C language callable interface for database access Specific to Ingres Functionality similar to ODBC Asynchronous processing Uses callbacks Synchronous processing Multithreaded application support Ideal for App Servers and Windowing Apps Used by Ingres ODBC, PHP and Ruby drivers and DAS
17
17 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Primary Uses of ODBC Windows-centric applications Simple, ad hoc Visual Basic applications Web-based ASP systems Industry-standard interface C language functions Other drivers often have bridge to ODBC JDBC-ODBC, OLE/DB-ODBC, PHP-ODBC, etc
18
18 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. ODBC Driver: Architecture ODBC Driver Manager Application 3.5 ODBC Driver Ingres OpenAPI Ingres Net ADO OLE DB
19
19 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. ODBC on Unix/Linux Ingres 3.5 driver Supported with unixODBC driver manager Ingres driver manager added in Ingres 2006 No need to download 3 rd party driver manager Administrative tool (forms-based)
20
20 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. JDBC Call-level Java API Used directly by Java apps Used by all J2EE servers and Java tools Used by higher-level Java database abstractions Hibernate, Torque, etc Database-independent connectivity Ingres r3/2006 JDBC driver at 3.0 compliance level Ingres 2.6 at 2.0 compliance level Type 4 driver – no Ingres client required
21
21 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. What is.NET? Simplified programming model More robust Components bound to version End of “DLL Hell” Common language runtime Type system Microsoft intermediate language Compile once — run anywhere
22
22 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Common Language Runtime Common language runtime Replaces COM plumbing Self-describing components Stack-based Intermediate Language (MSIL) Like Java bytecode Execution engine Like Java JVM Common type system All chars and strings are Unicode
23
23 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Compilers/Languages Compilers C#, J#, VB.NET, C, C++ Languages Microsoft C#, J#, VB.NET, ASP.NET, C++, Jscript Third party Cobol, Fortran, Perl, Pascal, Python, Smalltalk and so on
24
24 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Ingres.Net Data Provider Ingres r3 =>.Net 1.1 / VS 2003 1.1 is database specific Ingres 2006 r2 =>.Net 2.0 / VS 2005 2.0 is database independent Tighter integration with VS Written in C# Modelled after Ingres JDBC driver: No Ingres client required Accesses Ingres Data Access Server (DAS)
25
25 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Data Access.NET Application Data Access Server Data Access Server.NET Data Provider.NET Data Provider Data Set Databas e TCP/IP DBMS XML
26
26 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Popular Industry-standard Languages 3 Ps => Perl, PHP, Python Ruby Written on top of: ESQL/C OpenAPI ODBC More portable to/from other DBMS’s than OpenAPI More engineers familiar with ODBC than OpenAPI An ODBC-based driver often comes with a language
27
27 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Ingres DBMS Applications to Ingres Perl PHP Python Ruby ESQL OpenAPI OpenROAD ABF ODBC JDBC.Net Ingres Client Application s Ingres DBMS Ingres/Net
28
28 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Enterprise Access (EA) Designed to provide a consistent relational interface to a number of different datasources residing on various platforms Commonly referred to as a “Gateway” From OpenROAD or Ingres Client to a non-Ingres DBMS Client generally unaware that DBMS is not Ingres Where you see “Ingres DBMS”, substitute “EA”
29
29 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. EA Applications to Ingres Perl PHP Python Ruby ESQL OpenAPI OpenROAD ABF ODBC JDBC.Net Ingres Client Application s EA Ingres/Net
30
30 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. SQL Access to Datasources Data is accessed via SQL regardless of the datasource type Relational Datasources Non-relational Datasources SQL access requires the following: Consistent SQL dialect implementation Consistent metadata interface Consistent messaging interface (GCF)
31
31 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Consistent SQL Dialect OpenSQL is implemented in all Ingres clients and servers Based on SQL92 entry with Ingres specific extensions All OpenSQL statements are part of native Ingres SQL dialect Allows portable applications to be written
32
32 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Relational Datasource Support Gateway acts as an intermediary by performing the following functions Translates OpenSQL queries to native DBMS dialect Transforms OpenSQL data types to native DBMS data types Handles OpenSQL metadata queries Physically interfaces to native datasources Handles responses and results from native DBMS
33
33 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Enterprise Access Seamless access to a wide variety of relational and non-relational data stores Enterprise Access SQL Server Oracle DB2UDB RMS All data stores look like Ingres databases Accessed through SQL embedded directly in the OpenROAD 4GL Access via ODBC, JDBC or.NET Data Provider
34
34 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Enterprise Access Benefits Real-Time Access, no extracts One Copy of Data for Everyone Access from any platform or client Supports distributed database processing Supports replication 1-way only: Ingres => EA
35
35 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Enterprise Access Uses Migration from other DBMS’s to Ingres Introduce Ingres into new environments Apps can still access existing non-Ingres data Apps written for Ingres run against any DBMS Federated Data Store
36
36 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Enterprise Access Solution Single SQL Dialect Business Logic
37
37 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. EDBC Legacy data is locked away in mainframes Billions of dollars have been invested in legacy application development Developing new mainframe applications is slow and expensive Corporations need to Web-enable their legacy data and systems Migration of data not an option (legacy apps are still serving business needs) Legacy applications can be difficult to integrate The Corporate Dilemma
38
38 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. EDBC allows Web-generation application development tools to leverage corporate DATA directly No need for new or pre-existing applications on the host EDBC is non-intrusive: it integrates seamlessly with existing transaction systems (CICS/TS, IDMS/DC, IMS/TM etc) EDBC is DATA Access Middleware
39
39 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Same basic architecture as EA OpenSQL support Relational and non-relational gateways Mainframe based Makes mainframe DBMS’s look like Ingres to the applications Separate EDBC client provided Can use Ingres client instead EDBC often used standalone Extends Ingres reach to mainframe DBMS’s EDBC Architecture and Functions
40
40 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. CA-IDMS/DB CA-Datacom/DB EDBC Server for z/OS and OS/390 CLIENTCLIENTCLIENTCLIENTCLIENTCLIENT AGEN T CLIENT EDBC=ODBC+JDBC Everywhere (in development)
41
41 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. EDBC Client Components Platforms Windows: XP, 2000, 2003 UNIX: AIX, Solaris, HP/UX, Linux Mainframe: Linux/390 and z/OS Subset of Ingres Client components No Forms-based Development tools (ABF, QBF, RBF, etc) ODBC and JDBC (*focus*) Network configuration utility Database Object Manager (Visual DBA) COBOL Data Mapping Utility (VSAM and IMS) Interchangeable with Ingres client EDBC client can access Ingres or EA Ingres client can access EDBC
42
42 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Ingres, Enterprise Access, EDBC C#.NETASPJSPVB/VBAJavaJ2EE Enterprise Access ESQL, OpenAPI, ODBC Driver, JDBC Driver,.NET Data Provider IMS VSAM DB2 IDMS Datacom Oracle Sybase Informix SQL Server DB2UDB Ingres Client Servers Connectivity EDBC
43
43 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Architecture with STAR CA-IDMS/DB CA-Datacom/DB CLIENTCLIENTCLIENTCLIENTCLIENTCLIENT AGEN T CLIENT Enterprise Access Ingres Distributed Option (STAR) Oracl e MS SQL IBM DB2 UDB … EDBC Server for z/OS … Ingres
44
44 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Federated Database View
45
45 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies.
46
46 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. OpenROAD Overview OpenROAD is a powerful RAD solution that combines: A comprehensive, graphical, component based IDE A highly productive, 4GL based object-oriented modeling, design and programming environment A framework, platform and database agnostic, high-performance client and server runtime infrastructure OpenROAD is used to: Build large scale, n-tier mission critical business applications Deploy robust, rich browser (thin) and desktop (thick) apps Integrate and coordinate a wide variety of architectures (Java,.Net) and enterprise data stores
47
47 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. OpenROAD Components Platform independent Graphical forms development Object-oriented 4GL Interactive debugger Database independence Support for external controls Build fat/thin clients and server components Development WorkbenchOpenROAD Server Platform independent High-performance architecture Visual Server Farm Admin Client agnostic access (Java,.Net, VB, ASP, JSP, OpenROAD, etc.) Supports XML In/Out Client access via DCOM or HTTP (through any web server) Thin/Thick Clients Platform independent Rich browser (thin) or desktop (thick) applications Secure application delivery OpenROAD Platform Support Windows Linux HP-UX Sun Solaris AIX HP Tru64
48
48 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Ingres Tools Evolution Continues Clients Enterprise Data Stores Desktop Ingres/Net Ingres DBMS Web Apache TomcatWindows IIS Middleware & Application Servers JSP, PHP, Perl, Python… OpenROAD 4GL Server OpenROAD Server Pooler Oracle SQL Server Enterprise Access DB2 UDB RDB EDBC IMS VSAM DB2 IDMS, Datacom DCOM OpenROAD 4GL Server OpenROAD 4GL Server 4GL4GL 4GL4GL 4GL4GL Linux / Unix / VMS Microsoft Windows Wireless Mobile Phone W ML HTTP OpenROAD Server OpenROAD eClient 4GL4GL DCO M JNIC# API JBOSS WebLogic JSP, Java Servlets/Beans Windows IIS 6 ASP.NE T AS P OpenRO AD mClient 4GL4GL HTTP Clients Ingres ODBCHTTP Browser HTML, VBScript … DC OM Windows/Linux/Un ix Fat Clients Ingres/Net OpenRO AD Client C++, VB … Java, C# 4GL4GL ABF Client OSLOSL Embedd ed C Client ESQ L/C H TT P
49
49 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Summary The architecture supports: Any type of Ingres or industry-standard application Accessing any DBMS On any platform Transparently Ingres is committed to supporting popular application languages via driver technology New drivers automatically get access to all that the Ingres products offer Use STAR to: Simplify heterogeneous DBMS environments to the applications & users Join data across DBMS’s (keep the application simple) Migrate data (with EA and EDBC) Replicator – another tool for data access and migration OpenROAD Application Server is not just for OpenROAD apps…
50
50 © 2005 Ingres Corporation (Ingres). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Questions
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.