SlideShare a Scribd company logo
1 of 39
MQL-to-SQL  a JSON-based query language  for RDBMS data access from AJAX  applications
Welcome! ,[object Object]
Ex-MySQL, ex-Sun Microsystems
Web & BI developer at Strukton Rail
Author ,[object Object]
“Pentaho Kettle Solutions” ,[object Object]
Agenda ,[object Object]
What's wrong with SQL?
The Metaweb Query Language (MQL)
MQL-to-SQL
Demo
Questions
Agenda ,[object Object]
What's wrong with SQL?
The Metaweb Query Language (MQL)
MQL-to-SQL
Demo
Questions
The Data Access Problem ,[object Object],[object Object],SQL Resultset SQL Resultset RDBMS HTTP Browser Desktop Application ?
The Data Access Problem ,[object Object]
Data format: JSON, XML ,[object Object]
Disadvantage: controlled=limited
The Data Access Problem ,[object Object]
Disadvantage: unlimited=uncontrolled SQL SQL Resultset JSON ,[object Object]
Agenda ,[object Object]
What's wrong with SQL?
The Metaweb Query Language (MQL)
MQL-to-SQL
Demo
Questions
What's wrong with SQL? ,[object Object]
expressive syntax
declarative
designed for the RDBMS
portable
well supported
What's wrong with SQL? ,[object Object]
SELECT  f.title ,  f.description ,  f.release_year ,  f.length ,  f.rating ,  a.first_name ,  a.last_name ,  l.name FROM  film  f INNER JOIN language  l ON  f.language_id = l.id LEFT JOIN  film_actor  fa ON  f.id  = fa.film_id LEFT JOIN  actor  a ON  fa.actor_id  = a.id SQL not declarative enough Spoken in Has cast Starring in
SELECT f.title ,  f.description ,  f.release_year ,  f.length ,  f.rating ,  a.first_name ,  a.last_name ,  spoken_in.name FROM  film  f RELATE spoken_in   language  l ,  has_cast   film_actor fa RELATE starring_in  actor a SQL not declarative enough Spoken in Has cast Starring in

More Related Content

More from Roland Bouman

Writing MySQL User-defined Functions in JavaScript
Writing MySQL User-defined Functions in JavaScriptWriting MySQL User-defined Functions in JavaScript
Writing MySQL User-defined Functions in JavaScriptRoland Bouman
 
3. writing MySql plugins for the information schema
3. writing MySql plugins for the information schema3. writing MySql plugins for the information schema
3. writing MySql plugins for the information schemaRoland Bouman
 
2. writing MySql plugins general
2. writing MySql plugins   general2. writing MySql plugins   general
2. writing MySql plugins generalRoland Bouman
 
Common schema my sql uc 2012
Common schema   my sql uc 2012Common schema   my sql uc 2012
Common schema my sql uc 2012Roland Bouman
 
Common schema my sql uc 2012
Common schema   my sql uc 2012Common schema   my sql uc 2012
Common schema my sql uc 2012Roland Bouman
 
Optimizing mysql stored routines uc2010
Optimizing mysql stored routines uc2010Optimizing mysql stored routines uc2010
Optimizing mysql stored routines uc2010Roland Bouman
 
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...Roland Bouman
 

More from Roland Bouman (10)

Xml4js pentaho
Xml4js pentahoXml4js pentaho
Xml4js pentaho
 
Writing MySQL User-defined Functions in JavaScript
Writing MySQL User-defined Functions in JavaScriptWriting MySQL User-defined Functions in JavaScript
Writing MySQL User-defined Functions in JavaScript
 
3. writing MySql plugins for the information schema
3. writing MySql plugins for the information schema3. writing MySql plugins for the information schema
3. writing MySql plugins for the information schema
 
2. writing MySql plugins general
2. writing MySql plugins   general2. writing MySql plugins   general
2. writing MySql plugins general
 
1. MySql plugins
1. MySql plugins1. MySql plugins
1. MySql plugins
 
Common schema my sql uc 2012
Common schema   my sql uc 2012Common schema   my sql uc 2012
Common schema my sql uc 2012
 
Common schema my sql uc 2012
Common schema   my sql uc 2012Common schema   my sql uc 2012
Common schema my sql uc 2012
 
Optimizing mysql stored routines uc2010
Optimizing mysql stored routines uc2010Optimizing mysql stored routines uc2010
Optimizing mysql stored routines uc2010
 
Writing MySQL UDFs
Writing MySQL UDFsWriting MySQL UDFs
Writing MySQL UDFs
 
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...
Roland bouman modern_data_warehouse_architectures_data_vault_and_anchor_model...
 

Mql to-sql - a json-based rdbms query language