Wednesday, March 10, 2010

Db and Pentaho video tutorials

Today I present you a very useful site for all those who want to start using MySQL and Pentaho


Monday, March 8, 2010

Emailing Reports from the Pentaho User Console.

Prashant Raju present a quick tutorial on how to use a new feature of 3.5.2 which allows end users to email reports directly from the Pentaho User Console (PUC).

Sunday, March 7, 2010

JasForge : the agility in the software development revealed !

Today I want to present a French product JasForge.
  • What is Jasforge?
Jasforge is a JASMINE CONSEIL initiative and like any forge solution Jasforge is a management system of collaborative development of software.
It allows sharing the source code of the projects, tracking bugs, storing and sharing documents, discussions and communications in a common area.
Moreover, Jasforge is a framework of collaborative development which can be installed and used in various contexts.
 Jasforge originality come from the fact that the project is based on standard Open Source tools which collaborate together to form a unified solution which follow the development practice of a Continuous Integration process.
Jasforge solution will help to organize software project processes, improve schedule management, increase software delivery quality and facilitate collaboration between project teams.
In order to carry out these objectives, Jasforge aims
     -   To integrate several tools of the open source world to carry out all the considered features.
     -   To implement a module that manages user’s profile in all the system.
     -   To Develop a GUI for administration and users that has to be friendly and ergonomic.
To summarize Jasforge must provide a common access point and unify all the tools necessary for the establishment of a platform for collaborative work using the techniques of continues integration.

  • What distinguish Jasforge?
Jasforge uses new concepts which made it very different compared to all existing forges.
First used concept:
Continuous Integration
Jasforge follows the development practice of a Continuous Integration process which will increasev the quality of the delivery by improving the use of software development best practices.
Second used concept: Plug-in based architecture 
The power of Jasforge is that it defines a Jasforge plug-in for each integrated tool. This will give it the capability to integrate easily new tools and versions and give the user the ability to define a customized Jasforge with his preferred set of tools. (The Jasforge architecture will be explained later).
Other Jasforge particularities
Jasforge is software that can be installed in any local or extended network or even in one single machine. Its installation will automatically setup a forge and by this way we avoid configuration time.
Other advantage is that Jasforge offer a friendly environment to interact with tools. That means that we can be a non-expert user and use the Jasforge solution.
Jasforge platform will offer a large range of tools and services needed daily by software development teams to supply high quality software.
The figure bellow illustrates features integrated in each module.

The particularity of Jasforge is it uses a continuous integration process. This assures the best practices of development and quality guaranty.
Hudson communicates with SVN to check a change in the project, if there any change, it launches a build, and we can also force a build manually.

Note That: the build can be an ANT build or a maven build. For Jasforge we use Maven build.
Hudson is a war file so it needs to deploy it in a server and to make a module to synchronize between Hudson and Jasforge.

Hudson contain different controller for each functionality like build or authenticate and we can call these controller from a URL. So we implement a process based on a HTTP communication and can call a function from Hudson and pass the different parameter in the URL.
For the authentication, Hudson use HTTP BASIC authentication to specify the user name and the password and can use the LDAP authentication because both Hudson and security Realms use the servlet J_Security_Check where we define the J_username and J_password.

If you need further information, contact:

  • Karim DJAAFAR  (kdjaafar[ at ] the chief leader of this open source projet, which can be pleased to respond to your questions ! 
  • me (Rinaldo Bonazzo rbonazzo[ at ]

Thursday, March 4, 2010

Maatkit Power tools for open-source databases

Maatkit, a set of command-line tool f not only for MySql, released under the GPL, written in Perl
I will suggest it to all DBA.
List of commands:

  • mk-archiver Archive rows from a MySQL table into another table or a file.
  • mk-checksum-filter Filter checksums from mk-table-checksum.
  • mk-deadlock-logger Extract and log MySQL deadlock information.
  • mk-duplicate-key-checker Find duplicate indexes and foreign keys on MySQL tables.
  • mk-error-log Find new and different MySQL error log entries.
  • mk-fifo-split Split files and pipe lines to a fifo without really splitting.
  • mk-find Find MySQL tables and execute actions, like GNU find.
  • mk-heartbeat Monitor MySQL replication delay.
  • mk-kill Kill MySQL queries that match certain criteria.
  • mk-loadavg Watch MySQL load and take action when it gets too high.
  • mk-log-player Split and play MySQL slow logs.
  • mk-parallel-dump Dump MySQL tables in parallel.
  • mk-parallel-restore Load files into MySQL in parallel.
  • mk-profile-compact Compact the output from mk-query-profiler.
  • mk-query-digest Parses logs and more. Analyze, transform, filter, review and report on queries.
  • mk-query-profiler Execute SQL statements and print statistics, or measure activity caused by other processes.
  • mk-show-grants Canonicalize and print MySQL grants so you can effectively replicate, compare and version-control them.
  • mk-slave-delay Make a MySQL slave server lag behind its master.
  • mk-slave-find Find and print replication hierarchy tree of MySQL slaves.
  • mk-slave-move Move a MySQL slave around in the replication hierarchy.
  • mk-slave-prefetch Pipeline relay logs on a MySQL slave to pre-warm caches.
  • mk-slave-restart Watch and restart MySQL replication after errors.
  • mk-table-checksum Perform an online replication consistency check, or checksum MySQL tables efficiently on one or many servers.
  • mk-table-sync Synchronize MySQL tables efficiently.
  • mk-upgrade Execute queries on multiple servers and check for differences.
  • mk-visual-explain Format EXPLAIN output as a tree.
References: Maatic web site

Wednesday, March 3, 2010

MySQL Sandbox

MySQL Sandbox is a tool that installs one or more MySQL servers within seconds, easily, securely, and with full control. Once installed, the sandbox is easily used and maintained, without using complex options.
Replicated and multiple sandboxes can be used individually or all at once

Have a look at this tool,created and initially developed by Giuseppe Maxia