Contents Proprietary & Confidential © 2008 LogicBlox Inc.
Transaction DB
Data Mining &
Stats
Optimization Modeling
Browser
Enterprise Decision Automation Nightmare
1
App Server
BI DB Browser BI App Server
UI Planning App Server
Planning (future)
OLTP (now)
BI (past)
AJAX- JavaScript, HTML, XML Flash – Actionscript Silverlight - .Net languages JavaFX – JavaFX and Java
J2EE – WebLogic, WebSphere, JBoss, etc in Java Microsoft - .Net languages Netweaver – ABAP + Rules engine
Oracle IBM DB2 Microsoft SQL Server Sun MySQL PostgreSQL
Queries & Views – SQL with DDL, DML, etc.
Stored Procedures – PL/SQL, TSQL, Java, C#, etc.
ETL – Many vendors & programming models
DB’s below + Teradata, Netezza, Vertica, etc.
Excel
Formulas: A3 = B2 – D17
Microstrategy Business Objects Cognos
Hyperion RPAS
SAS Matlab SPSS R
OPL AMPL GAMS
CPLEX DASH COIN-OR ‘homegrown’
Optimization Solver
ESB – Tibco, Seebeyond, etc.
model model
C++
ETL – Many vendors & programming models
model
solver
model
-OR-
rules
Oracle Fusion
SAP NetWeaver
4
A Modest Request
NO MORE COMPONENTS PLEASE!!!
NO MORE THINGS TO GLUE TOGETHER
NO MORE NEW WAYS OF PROGRAMING THINGS
HW IS CHEAP – PROGRAMMERS, OPS PEOPLE, AND CONSULTANTS ARE NOT – WE CAN LIVE WITH SUBOPTIMAL PERFORMANCE RELATIVE TO ANY ONE COMPONENT
The Real World
5
End Users
Power Users
Consultants
Scientists & Statisticians
Application Developers
System Devs
6
Universal Client
(browser)
Universal Server
The Cloud
Something Like This Will Do Nicely
One programming model that is declarative and expressive for everything: • Business Logic • Queries • UI • Machine Learning • Optimization
Throw in DB stuff (out-of-core, parallelization, etc) Make schema changes easy so we can get spreadsheets and get our end-users involved
7
If You Won’t Build It, We Will
We didn’t know any better so we tried it
We picked datalog as the basis of our unifying language – we are making it a proper PL. It has proven amazingly versatile and performant. Everything from boring queries to Monte Carlo simulations.
We let you vary the search algorithm as well as the data structure
We implemented/implementing 3 search algorithms that seem to cover everything we need
We implemented 3 data structures that seem to work well with the 3 search algorithms
We’re in production for 3 Retail, 2 Insurance, 1 Telco, and 1 APM applications (all are very different) and will soon add APM and workforce management
Even holding up for research grade applications like context sensitive program analysis and reconfigurable trust management.
8
Platform-as-a-Service
… and nobody knows that you’re not using Oracle
LogicBlox is only available on the cloud so there are no IT adoption issues