350 likes | 481 Views
Bodo Bergmann Senior Software Engineer Ingres Corp. Mastering SOA Challenges more cost-effectively. Contents. Tell me why? SOA INGRES and SOA SOA Challenges Mastering selected challenges. Service-Oriented Architecture (SOA). Definition*:.
E N D
Bodo Bergmann Senior Software Engineer Ingres Corp. Mastering SOA Challenges more cost-effectively
Contents • Tell me why? • SOA • INGRES and SOA • SOA Challenges • Mastering selected challenges
Service-Oriented Architecture (SOA) Definition*: • Defines the use of loosely coupled and interoperable services to support the requirements of business processes and software users. • Services can be accessed without knowledge of underlying platform implementation. • Not tied to a specific technology. • Applications (and other services) are built by combining available services.* based on definition in: www.wikipedia.org (23-Feb-2007)
SOA – An Example BusinessServices InfrastructureServices Applications Data AccessServices Web Clients Data LegacyAssets MobileDevices
Why SOA ? Some objectives: • Link and reuse of available resources. • Reuse of services rather than objects • Respond more quickly and cost-effectively to changing requirements. • Simplify reuse of legacy assets • application and data
What has INGRES to do with SOA • INGRES offers solutions for • Data Management • Data Integration • Development and Deployment of • Services • Clients (Applications, Web, Mobile Devices) • Solutions can easily be integrated into existing SOA infrastructure • Ingres is Business OpenSource vendor • Enterprise-class solutions with minimized TCO
SOA – Challenges (a selection) Master data management SLAs ServiceMonitoring Loadbalancing Interoperability Redundant data synchronization ManagingServiceMetadata 24x7operation Failover Platform independence Performance “Entity aggregation” Security Deployment Legacy & Mainframeintegration OLTP vs. BI/Reporting Access to globallydistributedservices and data Event-Driven Architecture(asynchronous Service usage) Experiencedteams Serviceimplementationand modification Service clientsfor differentplatforms/devices Understandingbusinessrequirements Organizationstructure Sponsorship ...
Mastering selected challenges • Redundant data synchronization • Entity aggregation service • Unified access to different data sources • Legacy & Mainframe integration • Cost-effective service development • Event-Driven Architecture • Clients for different platforms/devices
Challenge Redundant data synchronization • Services use redundant data for different reasons • Performance • Replicated services for • Load Balancing • Failover • Reduce service dependencies • ... • Redundant data have to be synchronized
Possible solution • Use DBMS that provides data replication Service Service
Challenge Entity aggregation service • Aggregates entities in different systems • Provides single view of entities by integrating information from different systems • e.g. combines Customer data from ERP and CRM systems • Integrates horizontal partitions • e.g. geographical separated data • Allows cross entity queries • e. g. from order management and product catalog data
Possible solution • Use DBMS that provides • Replication • of horizontally partitoned data • of data from different systems • Distributed database support • Cross entity queries • e.g. in replicated data from different systems Service
INGRES offering: Ingres DBMS • OpenSource DBMS for the enterprise • Robust • Scalable • High performance and availability • Flexible backup and recovery • Provides required features to masterSOA challenges • Uni-directional replication • Distributed database support Service
Challenge Unified access to different data sources • Services get information from different data sources • e.g. for Data Warehousing • Service implementation should be DBMS independent • allow service to run with different DBMS • transparent data access required
Possible Solution • Use middleware that provides transparent data access using a single SQL dialect Business Logic Single SQL Dialect Ingres Oracle DB2 SQLServer RDB ...
INGRES offering: Enterprise Access • Middleware solution • Single Client Interface • Transparent SQL Access • Transactional Web Application Support • READ/WRITE Access • Protects Existing Investments
Challenge Legacy & Mainframe integration • Mainframe information needed throughout the enterprise • Include relational and non-relational data • VSAM, IMS, CA-IDMS, CA-Datacom, DB/2 for z/OS • Transparent data access required
Possible Solution • Use middleware that provides mainframe data access • From different platforms • Using standard connectivity drivers (JDBC, ODBC) • Supports SQL access non-relational data
INGRES offering: EDBC • Middleware solution • Mainframe Data Access for Distributed Applications • ODBC and JDBC Drivers • Metadata Mapping for Non-Relational Data Sources
Challenge Cost-effective service development • Issues: • Reduced implementation costs and time • Minimized modification time after change of business requirements • Minimize/reduce downtime for deployment of new or modified services • Flexible service deployment options • Time-to-market is important • Prevent technology and platform lock-in
Possible solution • Use flexible, platform-independent high-level language (e.g. 4GL) and runtime-system for implementation of services • Implement dynamic services • Plug-in architecture • “On the fly” change options
Challenge Event-Driven Architecture • Promotes loosely coupled services • Event-driven system consists of • Event consumers (subscriber) and • Event producers (publisher) • Clients and Services can be both • Client produces event to trigger service (consumer) • Service produces event to signal service finish to client (consumer) • Complements SOA • Services can be started by events (asynchronously) in addition to synchronous execution • Reduces service dependencies
Possible solution • Use event-driven programming • e.g. 4GL • Use DBMS as event manager • DBMS must support events/triggers
Challenge Clients for different platforms/devices • Provide service clients on a wide range of platforms without code changes • Desktop application • Web application • Mobile Client support • PDA • Mobile Phones • Rich-GUI elements should be supported • HTML is not enough
Possible solution • Use platform-independent programming language (e.g. 4GL) with • Runtime system for all client platforms and devices • Platform change/add should not require rebuild • Rich-GUI-Development environment • “One for all” development environment • Different platform should not require different IDEs or languages
INGRES offering: OpenROAD • Combination of • Highly productive GUI development environment and • High-performance, highly scalable middleware server • Platform independence • Clients & services binary compatible across multiple OS • Rich-GUI for web and mobile clients without code changes
OpenROAD client development One Source One Application…
Deployment on different platforms One Application Many Clients
INGRES offering: OpenROAD (continued) • Powerful 4GL High productivity • High-Level – easy to learn • Easy and quick service implementation • Less code • Combines SQL, object-oriented and event-driven programming • Allows support of SOA and EDA • Highly dynamic • “On the fly” modification of service implementation possible
OpenROAD Service Customizing Example Data Applications OpenROADServiceGetDeliveryAddress Web Clients 3. Modified Service execution MobileDevices 2. “On-the-fly” Service Change 4. Clients get new results NoServiceDowntime ServiceManager Service Implementation Easy 4GLImpl. 1. Implementation Change New ChangeRequest Demo
INGRES offering: OpenROAD (continued) • Allows Plug-In architecture of scalable services • Services can be deployed & run on supported platform locally and/or remotely • Services can be used by different technologies • JavaSE, JavaEE, .NET, DCOM, SOAP, OpenROAD • Interoperability • No technology lock-in • Interfaces to other technologies provided
INGRES offerings fit into existing environments Web Wireless Desktop Windows/Linux/Unix Fat Clients ABF Client Embedded C Client OpenROAD Client Mobile Phone Browser OpenROAD eClient OpenROAD mClient Clients Clients 4GL WML OSL ESQL/C 4GL C++, VB … Java, C# HTML, VBScript … 4GL Ingres/Net HTTP DCOM Ingres ODBC HTTP DCOM HTTP HTTP HTTP OpenROAD Server Apache Tomcat Windows IIS JNI DCOM C# API JSP, PHP, Perl, Python… ASP OpenROAD Server Pooler Middleware & Application Servers Windows IIS 6 JBOSS Linux / Unix / VMS Microsoft Windows ASP.NET JSP, Java Servlets/Beans WebLogic OpenROAD 4GL Server OpenROAD 4GL Server OpenROAD 4GL Server JSP, Java Servlets/Beans 4GL 4GL 4GL EDBC Ingres/Net Enterprise Access Enterprise Data Stores IMS VSAM DB2 IDMS, Datacom Ingres DBMS Oracle SQL Server DB2 UDB RDB
Summary • Many SOA Challenges • Some challenges can be addressed by modern • DBMS • Middleware • 4GL-Development Environments • INGRES offers required technologies • OpenSource solutions • Reduce TCO • Can easily be integrated into existing SOA environments
Contact Ingres Corporation http://www.ingres.com mailto:Bodo.Bergmann@ingres.com