DbSQWare:general

From Wiki_dbSQWare
Jump to: navigation, search

Introduction

dbSQWare is designed for DBAs to facilitate the daily operation of all databases to which they are responsible for:

  • dbSQWare provides a common unified socle for a number of RDBMS of the market: Oracle, Sybase, MySQL, MsSql, MongoDB, DB2, PostgreSQL, Teradata, Cassandra, Adabas, Ingres. This base can quickly accommodate other types of databases with the flexibility of its design.
  • The product also offers a vision of inventory and capacity planning for those less expert, through a web interface.


dbSQWare currently represents several years of design, development and testing. The product is intended (for his party scripts) to Unix / Linux only because it is essentially written in shell ksh and sql. The web part, for its part, is written in PHP, Javascript.
Installation guide

Overall functionality

Management repositories of DBMS park (CMDB) in a database.
Current and advanced operations on DBMSs Oracle, Sybase, MySQL, MsSql, MongoDB, DB2, PostgreSQL, Teradata, Cassandra, Adabas, Ingres:

  • Backup
  • Recovery
  • Reorganizations
  • Statistics
  • ...

Collection of indicators and capacity planning with recovery in a database. Check these indicators (collection, volumes, backups, ...) and send alert mails.
Central management of instances (access, scripts execution and automatic controls, ...).
GUI website for restitution of the indicators in tables and graphs.

Homogeneity

In use:

  • Use consistent, regardless of the DBMS
  • Easy adaptation by configuration files
  • Only one version of the tool across the park
  • The scripts adapt to the version of the DBMS managed


In the development and evolution:

  • Design consistent for all DBMSs
  • Normalization of code (names, functions, structures, parsing of arguments, ...)
  • Behavior modification by overloading bookstores
  • Set of standard libraries can be integrated into custom scripts


Tool structure

dbSQWare is composed of four interconnected modules:


SQWareProduction, is the operating module in local. It allows to manage the operation at large for RDBMS:

  • Backup
  • Restorations
  • Statistics
  • Ascents alerts
  • Encapsulation execution jobs
  • Execution of unix commands in parallel
  • ...

This module also collects a number of indicators that are inserted on the repository database SQWareRepository. It is composed of a "core/generic" part common to all managed RDBMSs and a specific plugin for each DBMS is independent and the scripts are all written by the same standard of development (argument parsing, online help, send mail on error, recovery indicators in SQWare Repository, ...).

SQWareRepository, is the management module of the repository and indicators database. It allows to manage the repository and the indicators stored in databases. It's a MySQL database.

SQWareCentral, is the central module of the tool. It can manage the whole park from this point:

  • Centralized collection of indicators
  • Deployment of SQWareProduction modules by rsync
  • Management of "full-text search" in the repositories
  • Easy connection via ssh to different instances of the park ...
  • ...

This module is based inter alia on the repository database, SQWareRepository. It is composed of a "core" part common to all managed RDBMSs and a specific plugin for each DBMS (Oracle, Sybase, MySQL, MsSql, MongoDB, DB2, PostgreSQL, Teradata, Cassandra, Adabas, Ingres).

SQWareWeb, is the web module for graphic indicators. It works with Apache 2.x and is written in PHP 5.x, javascript (jquery), html. It allows for the presentation of indicators and capacity planning as:

  • Graphics (c3.js)
  • Tables (datatable, with sorting and formatting locally on the browser)
  • Exports Excel
  • ...

It is based entirely on data contained in the repository database SQWareRepository. Refunds are made in much the same way regardless of the DBMS (the specific near it), which makes it more enjoyable and easier navigation. This module is composed of a "core" part common to all managed RDBMSs (template engine, display graphs, tables, ...) and a specific plugin for each DBMS (Oracle, Sybase, MySQL, MsSql, MongoDB, DB2, PostgreSQL, Teradata, Cassandra, Adabas, Ingres).

General architecture diagram dbSQWare (when the SQWareProduction module is locally installed)

General dbSQWare.jpg