How To Use An Informix System With A Computer System (For A Dba)



Similar documents
OpenAdmin Tool for Informix (OAT) October 2012

Rapid Application Development. and Application Generation Tools. Walter Knesel

Web Frameworks. web development done right. Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof.

BEST WEB PROGRAMMING LANGUAGES TO LEARN ON YOUR OWN TIME

Informix Administration Overview

JBoss Enterprise Middleware

Who is my SAP HANA DBA? What can I expect from her/him? HANA DBA Role & Responsibility. Rajesh Gupta, Deloitte. Consulting September 24, 2015

Jenkins User Conference Herzelia, July #jenkinsconf. Testing a Large Support Matrix Using Jenkins. Amir Kibbar HP

DTWMS Required Software Engineers. 1. Senior Java Programmer (3 Positions) Responsibilities:

Project Manager 1 Post == Experience years in Project Management in reputed company, Salary Rs.1,20,000/-

Informix Performance Tuning using: SQLTrace, Remote DBA Monitoring and Yellowfin BI by Lester Knutsen and Mike Walker! Webcast on July 2, 2013!

Using Apache Derby in the real world

JBoss Enterprise Middleware. The foundation of your open source middleware reference architecture

Automate Your BI Administration to Save Millions with Command Manager and System Manager

Migration and Developer Productivity Solutions Retargeting IT for Emerging Business Needs

Framework Adoption for Java Enterprise Application Development

Profiling and Testing with Test and Performance Tools Platform (TPTP)

Copyrighted , Address :- EH1-Infotech, SCF 69, Top Floor, Phase 3B-2, Sector 60, Mohali (Chandigarh),

A (Web) Face for Radio. NPR and Drupal7 David Moore

How To Write A Web Framework In Java

Nexawebホワイトペーパー. Developing with Nexaweb ~ Nexaweb to Improve Development Productivity and Maintainability

Oracle Database 12c: Performance Management and Tuning NEW

Lessons learned from a large scale OSGi web app. Jago de Vreede Paul Bakker

PHP vs. Java. In this paper, I am not discussing following two issues since each is currently hotly debated in various communities:

Developing modular Java applications

SAP NetWeaver Opens SAP ERP world. Amedeo Prodi SAP Italia

OXAGILE RESUMES SUMMARY OF QUALIFICATIONS TECHNICAL SKILLS SENIOR JAVA SOFTWARE ENGINEER

Deploying and Managing SolrCloud in the Cloud ApacheCon, April 8, 2014 Timothy Potter. Search Discover Analyze

IBM Boston Technical Exploration Center 404 Wyman Street, Boston MA IBM Corporation

Assignment # 1 (Cloud Computing Security)

Unicenter Database Management For Distributed RDBMS

Performance Evaluation of Java Object Relational Mapping Tools

Introduction to ovirt

Where We Are. References. Cloud Computing. Levels of Service. Cloud Computing History. Introduction to Data Management CSE 344

Java Application Performance

Architecture Workshop

T14 RUMatricula Phase II. Section 1 Metaphor and requirements

SAP Crystal Reports & SAP HANA: Integration & Roadmap Kenneth Li SAP SESSION CODE: 0401

Beyond the SOA/BPM frontiers Towards a complete open cooperative environment

Would-be system and database administrators. PREREQUISITES: At least 6 months experience with a Windows operating system.

Quick start. A project with SpagoBI 3.x

SOFTWARE OUTSOURCING

CrownPeak Java Web Hosting. Version 0.20

Virtualization Management the ovirt way

Inside the Digital Commerce Engine. The architecture and deployment of the Elastic Path Digital Commerce Engine

Whitepaper: Back Up SAP HANA and SUSE Linux Enterprise Server with SEP sesam. Copyright 2014 SEP

MySQL Enterprise Edition Most secure, scalable MySQL Database, Online Backup, Development/Monitoring Tools, backed by Oracle Premier Lifetime Support

White paper FUJITSU Software Enterprise Postgres

V7 Reporting. Highlights

Open Source Technologies on Microsoft Azure

JBOSS ENTERPRISE APPLICATION PLATFORM MIGRATION GUIDELINES

Lecture 10 Fundamentals of GAE Development. Cloud Application Development (SE808, School of Software, Sun Yat-Sen University) Yabo (Arber) Xu

RedTigerSoftware. WEB DEVELOPERS Introduction & Portfolio

Learning about Informix and the Open Admin Tool (OAT)

JBoss. choice without compromise

Why Zalando trusts in PostgreSQL

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010

Effective Java Programming. efficient software development

Automated Performance Testing of Desktop Applications

How To Monitor A Server With Zabbix

Ron Flannery, One Point Solutions ( x40,

Installation Guide for contineo

ovirt Introduction James Rankin Product Manager Red Hat Virtualization Management the ovirt way

Comparison of DBI Products and BMC SmartDBA

Object Relational Database Mapping. Alex Boughton Spring 2011

Performance TesTing expertise in case studies a Q & ing T es T

SQL Server Training Course Content

APPENDIX A Web Redesign Infrastructure. Deployment Overview

How To Write A Monitoring System For Free

NEMUG Feb Create Your Own Web Data Mart with MySQL

Developing Scalable Java Applications with Cacheonix

Java DB2 Developers Performance Best Practices

XTM Web 2.0 Enterprise Architecture Hardware Implementation Guidelines. A.Zydroń 18 April Page 1 of 12

IBM Informix Dynamic Server v10.0

OpenMake Dynamic DevOps Suite 7.5 Road Map. Feature review for Mojo, Meister, CloudBuilder and Deploy+

AD207: Advances in Data Integration with Lotus Enterprise Integrator for Domino 6.5. Sarah Boucher, Manager Enterprise Integration Development

ALERT installation setup

NoSQL and Hadoop Technologies On Oracle Cloud

Getting Started with Telerik Data Access. Contents

user guide version 4.1

HP OO 10.X - SiteScope Monitoring Templates

White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the. 2) Architecture Explanation

Database System Architecture & System Catalog Instructor: Mourad Benchikh Text Books: Elmasri & Navathe Chap. 17 Silberschatz & Korth Chap.

Product Review: James F. Koopmann Pine Horse, Inc. Quest Software s Foglight Performance Analysis for Oracle

Load Testing Ajax Apps using head-less browser tools. NoVaTAIG April 13, 2011 Gopal Addada and Frank Hurley Cigital Inc.

Working with Structured Data in Microsoft Office SharePoint Server 2007 (Part1): Configuring Single Sign On Service and Database

Skillsoft Course Directory

Data processing goes big

AppSentry Application and Database Security Auditing

Bring your intranet to the IBM i With Drupal and Zend Server

Installing and Administering VMware vsphere Update Manager

SAP BO 4.1 COURSE CONTENT

IMPORTANT: The person who installs and sets up the PCS Axis database on the central database server

Transcription:

Open Source and Third Party Software Supporting Informix Ognjen Orel University Computing Centre, University of Zagreb, Croatia, EU 1

Who am I? Project manager, DBA, developer 16 years Informix experience IBM Champion 2013-2015 Working for University Of Zagreb s Computing Centre Academic Information Systems division Design, development and maintenance of several nation-wide information systems covering higher education and science in the country 2

How Cool is Informix? Greatest database on Earth Zero-admin, just set it up Executes queries, handles security, replication, cooks, cleans around the house, 3

Ok, but really? There are many ways Informix could be used OLTP OLAP Standalone server replication Business logic inside the DB Business logic in the apps User s roles and permissions hanled by the DB handled in the apps 4

Ok, but really? There is a need for different additional software to accommodate various day-to-day needs I will show some of it, from a perspecitve of information system development and maintenance 5

Information System Consists of Single or multiple databases (maybe different DBMSs) Number of end-user apps desktop, web, mobile Number of back-end apps Set of business rules Sets of users with different roles Support teams, helpdesk, developers, admins 6

Additional software DBA stuff Monitoring Alerting Maintenance Management Developer stuff SQL/SPL Tools ORM Application Development Frameworks Testing Project Management Tools (Project management, issue trackers, CMSs, Wikis ) 7

DBA Stuff Monitoring Alerting Maintenance Management 8

One for you Q: How do you know when your instance is down? 9

One for you Q: How do you know when your instance is down? What/who sends the alert? Software User 10

Shell scripts & cron Simple monitoring and alerting Collect various data of interest Point-in-time data: Server load, number of users, ready threads etc Aggregated data: daily checkpoints stats, tx stats, etc (e.g. from sysadmin database) Easy to send e-mail alerts and reports 11

SQL API cron Simple monitoring and maybe alerting Collect various data of interest directly from database insert into sysadmin:ph_task values (...) Or configure it through OpenAdmin Tool 12

Command line utilities Plenty of those in the IIUG Software Repository http://www.iiug.org/software/ utils[2,3,4]_ak by Art Kagel 13

BusyBee Developed by Eric Herber long time ago Now open-sourced and hosted on SourceForge Python based scripts for monitoring various parameters Online status, chunk status, extents, log entries, memory, cache, 14

BusyBee Configurable Tresholds for sending different kinds of alerts Sending e-mail alerts http://busybee.sourceforge.net/ 15

Zabbix Open source monitoring software Supports various types of agents to collect data from Monitor hardware Servers, UPSs, network appliances, A/Cs ) Monitor software OSs, web servers, databases, applications, 16

Zabbix Use with Informix in two ways: Store monitoring data http://www.iiug.org/opensource/ Monitor Informix instance (template by Cesar I. Martins) https://www.zabbix.org/wiki/zabbix_templates 17

Zabbix 18

OpenAdmin Tool Should be a household name for every DBA Provides monitoring and maintenance of multiple instances Health advisor http://www.openadmintool.org/ 19

One for you Q: when you migrate to a newer version (i.e. upgrade your instance), what do you do with your onconfig file? Use it as it is with a new version? Make a new one based on new onconfig.std? 20

migrateonconfig You want your onconfig to match the current Informix version, instead of adding a bunch of new parameters to the end Will produce a new file with.std structure and comments, but with original values and additional comments Uses Groovy language 21

migrateonconfig groovy migrateonconfig.groovy \ -i $INFORMIXDIR/etc/$ONCONFIG \ -s /opt/ibm/informix1210fc5/etc/onconfig.std http://ifmx.wordpress.com/software-and-tools/ 22

Other management and monitoring products There are some great Informix based products for DBAs and developers, with commercial and free licenses Not permitted to advertize here 23

Developer Tools SQL/SPL Tools ORM Application Development Frameworks Testing Project Management Tools 24

Another one for you Q: How do you execute SQL queries 25

The (good) old SQL Editor 26

SQL Editor Developed by Informix in the 1990 s Pros: Small footprint Keyboard-centric Execute only a portion of the code in editor 27

SQL Editor Cons Outdated Only for Windows Single level undo 28

IBM Data Studio Based on Eclipse IDE Heavy footprint Complicated for simple use-cases http://www-03.ibm.com/software/products/en/data-studio 29

Some other SQL tools Plenty to choose from Some are integrated in IDEs Some are too smart Some could only be used on Windows 30

ifmx-sql-editor An improved copy of original SQL Editor Wrote it in Groovy Light client Keyboard centric, same shortcuts Multilevel undo/redo Syntax highlighting 31

ifmx-sql-editor 32

ifmx-sql-editor 33

ifmx-sql-editor Runs on JVM Runs on every OS that supports Java Download files and execute main jar ifmx.wordpress.com/software-and-tools/ 34

Object-Relational Mapping (ORM) Matching object-oriented concepts to a relational model Data types Structure differences Transaction handling 35

Java Object-Relational Mapping Frameworks Hibernate (http://hibernate.org/) MyBatis (http://mybatis.org/) Java Database Objects (JDO) (http://db.apache.org/jdo/) Java Persistence API (JPA) 36

Application Frameworks Fundamental tools for enterprise class applications Covering the whole development process or just a part of it Spring Framework (http://spring.io/) Struts (https://struts.apache.org/) GWT (http://www.gwtproject.org/) 37

RIA Development Frameworks RIA = Rich Internet Application Considering CRUD based applications Good RIA Development Framework Works with various RDBMSs Takes care of ORM Simplifies client-server communication Provides full featured and responsive web components 38

RIA Development Frameworks OpenXava (http://www.openxava.org/) Vaadin (http://vaadin.com/) SmartGWT (http://www.smartclient.com/) 39

SmartGWT Uses GWT (Google Web Toolkit) as a front-end components Encapsulates and extends GWT components in Java All client-server interaction (in the code) done via data source definitions (no SQL needed) Did not support Informix until recently 40

Testing the Code Unit testing with JUnit Test Java classes and methods.. and SQL/SPL code Run within continuous integration tool or by hand A separate, prepared database for these tests Each test rollbacks the transaction at the end 41

Testing the Code A simple test for a stored procedure @Test(timeout=20000) public void izvanredni() throws SQLException { SmallintField siftemeljfin = new SmallintField( databasetoolkit ); DbStatement.executeSelectIntoAndRelease( "execute procedure izracunp( 1100190 )", new WrapperField[]{sifTemeljFin}, databasetoolkit, connection); } assertequals(true, siftemeljfin.isnull()); 42

And another one for you Q: Do you know how much torture can your database engine / db server stand? Concurent queries Users performing daily work Users performing complex queries How much do they wait for an answer? 43

Stress Tests Find out how much torture can your database stand Apache JMeter is a great tool for stress-testing http://jmeter.apache.org/ 44

Stress Tests Idea: Prepare a separate database for stress test (or better, a separate environment) Back it up Prepare enough data that tests can use (csv files) Run the tests from one or more computers/servers Restore the database 45

Stress Tests ifmx.wordpress.com/2011/12/29/database-stress-testing/ 46

Project Management Tools Minimum set of features required Workflow tracking Bug tracking Reporting Wiki Interesting to us because of the back-end database Some support/could support Informix 47

Issue-tracking software Should provide workflow management and reporting Bugzilla Teamwork YouTrack JIRA Those built in Java upon Hibernate framework could use Informix http://en.wikipedia.org/wiki/comparison_of_issue-tracking_systems 48

Wikis Should provide flexible interface, ease of collaboration, permissions, MediaWiki XWiki Confluence Those built in Java upon Hibernate framework could use Informix http://en.wikipedia.org/wiki/comparison_of_wiki_software 49

Instead of a conclusion The acceptance of the DB depends, among other things, on the availability of the tools and the amount of the software supporting it We all want Informix to grow That means more people need to use it 50

What can we, as a community, do? Share the knowledge Share our code Scripts, tools, software, No matter how small or insignificant, there is always a novice out there who ll appreciate it Participate in other open-source projects in order to make them Informix-friendly 51

Questions? Or comments 52