Presentation is loading. Please wait.

Presentation is loading. Please wait.

Frank Hilhorst President Progressive Consulting Inc. Open Source Data Sharing.

Similar presentations


Presentation on theme: "Frank Hilhorst President Progressive Consulting Inc. Open Source Data Sharing."— Presentation transcript:

1 Frank Hilhorst President Progressive Consulting Inc. Open Source Data Sharing

2 Introducing myself Started working with PROGRESS version 6 in 1993 Principle Software architect PLATON mortgage loan system JAZZ hospitality billing system Started Progressive Consulting Inc in 2006 Ahstanga yoga afficionado

3 Introducing Progressive Consulting Focus on integrating OpenEdge applications with other technologies UI integration Back end integration Motto Making the world as open to OpenEdge as OpenEdge is to the world

4 Published tools TurboCgi TurboComet TurboStomp TurboQuery Download beta release from http://www.progressiveconsultinginc.com/news

5 Dictionary meaning of data sharing The ability to share the same data resource with multiple applications or users

6 Sharing data between the PROGRESS environment and an Open Source environment Copy data definitions and data From PROGRESS to Open Source environment From Open Source environment to PROGRESS Access and manipulate data definitions and data From PROGRESS in Open Source DB From Open Source enviroment in Progress DB

7 Structure of this presentation Introduction to open source databases and JDBC Project to create a data server for open source database Why and how Demo data server Architecture of data server Comparing Progress with other databases How to install and use the JDBC data server toolkit

8 Introduction to open source databases and JDBC

9 Dominant open source databases DatabaseCharactaristics Sample applications MySqlConnectors supported JDBC ODBC ADO.NET Drupal Wordpress Apache DerbyConnectors supported JDBC ODBC ActiveMQ Apache service mix PostgressQLConnectors supported JDBC ODBC ADO HoneyBird ERP LedgerSMB

10 What is JDBC (Java Database connectivity)? OO Interface that supports SQL standard (create, update, insert, delete) Defines the following JAVA objects Statement PreparedStatement CallableStatement Resultset

11 OpenEdge support for JDBC Jars provided openedge.jar pool.jar sqlexp (SQL explorer) sqldump sqlload sqlschema

12 How to provide JDBC access to a PROGRESS database Create a user sysprogress Start up database with SQL server enabled Option 1: Use 1 broker Proserve -H.. -S.. -ServerType both Option 2: Use (separate) secondary login broker Proserver -H.. -S.. -m3 -ServerType SQL

13 Testing the JDBC connection with the SQL explorer sqlexp -url jdbc:datadirect:openedge://localhost:30201;databaseNa me=sports -user sysprogress -password sysprogress select name, address from PUB.customer

14 Project to create a data server for open source database

15 Altisource Application environment Progress DB RabbitMq Legacy Application Transfor- mation Engine MySql DB Next Generation Modules

16 Demo

17 What we are going to demo Using the TurboQuery Dictionary Create database in mySql Copy sports database from PROGRESS to mySql DB Add a table and fields Copy mySql database back to a PROGRESS database Show how to populate a progress dataset from the mySql database Make changes to that dataset and commit those changes to the mySql database Commit the changes

18 Architecture of data server

19 MySql DB Tomcat Web Service ABL/OO Layer Progress Client SQL Statement SQL Statement JSONDataset SQL ResultSe t

20 How to get data from the foreign database Use TurboQuery dataset generator to get dataset definitions Instantiate QueryManager class Use QueryManager:GetData to populate dataset

21 What the code looks like

22 How to update the foreign database Populate the dataset Turn on tracking changes Make changes Commit the changes

23 What the code looks like

24 Classes of the ABL/OO layer QueryManager JdbcSchemaMapperProgressSchemaMapper JdbcToProStmntGenerator ProToJdbcStmntGenerator CreateTable CreateIndex DumpTableData Format TransformFieldName TransformTableName Format TransformFieldName TransformTableName getJdbcSchemaAttrName TransformFieldName TransformTableName InsertInto DeleteFrom FormatBufferFieldValue JdbcMode GetData GetDataAndDefs CommitChanges JdbcMode jdbcSchemaMappe r

25 Comparing Progress with open source databases

26 High level comparison Progress databaseOpen Source Databases Strongly typed databaseWeakly typed database Variable record length Block based Fixed record length (mostly) Not block based Table & field name space rules Hyphen allowed Spaces not allowed 32 character maximum length Table & field name space rules Hyphen not allowed Spaces allowed Can be very long No support for foreign keys constraintsSupport for foreign keys constraints

27 Comparing data types ProgressmySqlApache Derby Characterchar varchar text tinytext char varchar long varchar Date date IntegerSmallint Smallint unsigned Mediumint Mediumint unsigned smallint time integer Int64Int Int unsigned bigint bigint unsigned bigint double real DecimaLfloat double decimal numeric decimal numeric Datetimetimestamp datetime timestamp Rawbinary varbinary varchar for bit data long varchar for bit data blobtinyblob blob mediumblob longblob blob

28 How to install and use the JDBC data server toolkit

29 How to install TurboQuery beta version Download TurboQuery.zip from this Url http://www.progressiveconsultinginc.com/news.html Unzip file to c:\ Should get the following directory structure

30 How to install TurboQuery beta version (continued) Make sure JAVA version 6 or higher is installed JAVA -version In C:\TurboQuery\ini\Progress.ini Point the DLC variable to your OpenEdge root directory

31 How to install TurboQuery beta version (continued) Using the Icons in the Shortcuts directory Start Sports DB database server Start Apache Derby server Start Jetty Servlet engine

32 What is next for TurboQuery? Batch update for data definitions Paged SQL queries Extending support for more OpenSource databases Externalization of database specific mappings SPRING/MAVEN based JDBC driver configuration

33 Questions?


Download ppt "Frank Hilhorst President Progressive Consulting Inc. Open Source Data Sharing."

Similar presentations


Ads by Google