BI Platform as a Service Introduction to GoodData
May 28, 2015
BI Platformas a Service
Introduction to GoodData
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
@PetrOlmer
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
dashboards
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
report builder
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
data model
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Data in, analytics out
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
ConceptWhy Business Intelligence, anyway?
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
BI industry is broken
too expensive
no penetration
no success
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Standard IT projects
never delivered
not in time/budgetnever used
success
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Standard BI projects
never delivered
not in time/budget
never used
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Solution
talk cloud
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Talk cloud
Be elastic.
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Solution
talk simple
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Talk simple
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Solution
talk logic
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Talk logic
It’s called business intelligence,not IT intelligence.
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Talk logic
Teach a man to fish.
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Talk logic
Define logical data model.
Let people play.
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Data model
defines the rules of the game
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Talk logic
attributes facts
attributes metrics filters
reports
dashboards
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Solution
talk agile
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Talk agile
Deliver one report at time.
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Talk agile
Give access to everybody.
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Talk agile
Don’t search for the single version of the truth.
1 cup “talk Cloud”
1 cup “talk Logic”
1 cup “talk Agile”
1 cup “talk Simple”
will feed unlimited number of people
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Success recipe
1 cup “talk Cloud”
1 cup “talk Logic”
1 cup “talk Agile”
1 cup “talk Simple”
S
will feed unlimited number of people
C
L
A
S
S
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Success recipe
Architecturesome clouds are more equal that others
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
heterogenous
multitenant
elastic
Architecture
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
ROLAP engine
you talk MAQL
we do SJG/QT translation
to physical level
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
logical layer
ROLAP engine
MAQL
TeradatamySQLIngres VectorWise PDL
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Virtual cubes
be lean
think forward
decompose
reuse
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Virtual cubes
many users
logical data model
MAQL
Mash Up!It’s All About Data Sources
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Connectors
flat files
SQL
Salesforce
Google Analytics
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Partners
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Example
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Data source 1
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Data source 2
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Connection<schema> <name>players</name> <columns> <column> <name>id</name> <title>Player Id</title> <ldmType>CONNECTION_POINT</ldmType> </column>... <schema>
<name>songs</name> <columns> <column> <name>player_id</name> <title>Player Id</title> <ldmType>REFERENCE</ldmType> <folder>Songs</folder> <schemaReference>players</schemaReference> <reference>id</reference> </column>...
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Google part
google docs get --title 'Players' --format=csv --dest=.
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Load dataCreateProject(name="My RockBand");
LoadJdbc(configFile="songs.xml", driver="com.mysql.jdbc.Driver",url="jdbc:mysql://localhost/sfbeta_songs", username="...",password="...", query="SELECT * FROM songs");GenerateMaql(maqlFile="songs.maql");ExecuteMaql(maqlFile="songs.maql");TransferData();
InviteUser(email="...", msg="Come and join me!", role="editor");
LoadCsv(csvDataFile="Players.csv", header="true", configFile="players.xml"); GenerateMaql(maqlFile="players.maql");ExecuteMaql(maqlFile="players.maql");TransferData();
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Create metric
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Create report
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Create dashboard
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
All done
in 20 minutes
APIsWe Connect You In and Out
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Browsing APIs
authentication
modeling
data loading
project provisioning
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
API home
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
If you can see it,
there’s an API call for it.
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Example
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Report
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
URI
https://secure.gooddata.com/#s=/gdc/projects/qqy0mokxwkpd7zc05mwoayz1cklyufn3¦
analysisPage¦head¦/gdc/md/qqy0mokxwkpd7zc05mwoayz1cklyufn3/obj/355
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
URI
https://secure.gooddata.com/#s=/gdc/projects/qqy0mokxwkpd7zc05mwoayz1cklyufn3¦
analysisPage¦head¦/gdc/md/qqy0mokxwkpd7zc05mwoayz1cklyufn3/obj/355[ ]
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Report
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Report definition
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Data result
IntegrationA Piece Of Cake
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Embedding
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Integration with Chatter
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Data In, Analytics Out
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Step 1
load data sources
LoadGoogleAnalytics(...LoadJdbc(...
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Step 2
create your metric
SELECT SUM(Visits) WHERE Location=Discussion ForumsAND Visitor=Existing Customer
GET /gdc/md/<p-hash>/obj/<metric-id>
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Step 3
create report definition
filter: Week = {Last}
POST /gdc/md/<p-hash>/obj
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Step 4
execute the report definition
POST /gdc/xtab2/executor
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Step 5
get the value from the data result
xtab_data: columns: lookups: - 0: Visits data: - - 1620
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Step 6
use Chatter API to post your message
1620 customer visits at our forums last week!
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Alerts
MAQLThree Dimensions Are Not Enough
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
MAQL is powerful
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
MAQL is multidimensional
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
MAQL DDL
CREATE/ALTER/DROPfor model elements
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Model
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Model ALTER ATTRIBUTE {won}
DROP KEYS {stage},
ADD KEYS {facts_of_stages};
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Model ALTER ATTRIBUTE {won}
DROP KEYS {stage},
ADD KEYS {facts_of_stages};
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
MAQL Queries
simple syntax for metrics
SELECT AVG(amount)
WHERE Status=Paid
BY Month, ALL Department
WITHOUT PF
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Metrics in MAQL
aggregation
arithmetic
filter
dimensionality
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Define metrics
Performance in Team
SELECT Team Avg Time To Response - Avg Time to Respond
Team Avg Time To Response
SELECT AVG(First Response Date - Case Created Date)
BY Team, ALL Agent WITHOUT PF
Avg Time to Respond
SELECT AVG(First Response Date - Case Created Date) BY Case
BI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Build your report
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Dimensionality
how to slice and dice
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
In report
What: SELECT SUM(Amount)
How: Month
... returns different number for each month
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
In report
What: SELECT SUM(Amount)
How: Month
Month Amount
January 1,000
February 2,000
March 3,000
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Out of report
What: SELECT SUM(Amount) BY Month
How: -
... returns one numberbut different number for each month
was calculated
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Out of report
What: SELECT SUM(Amount) BY Month
How: -
Month Amount
January 1,000
February 2,000
March 3,000
Amount
6,000
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Out of report
What: SELECT SUM(Amount) BY ALL Month
How: Month
... returns the same numberfor each month
because only one number was computed
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Out of report
What: SELECT SUM(Amount) BY ALL Month
How: Month
Month Amount
January 6,000
February 6,000
March 6,000
Amount
6,000
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
BY and BY ALL
BY Month, ALL OTHER
BY ALL IN ALL EXCEPT Month
WITHOUT PF
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
MAQL test
2 data source
Month Name Salary
January John $4,000
February John $3,900
January Paul $3,800
February Paul $3,900
January George $3,500
February George $3,500
Name Department
John IT
Paul IT
George Marketing
Ringo Marketing
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
MAQL test
Write a metricthat computes
average money needed monthlyfor each department.
Month Name SalaryName Department
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
Solution
Metrics
Monthly: SELECT SUM(Salary) BY Month
Average: SELECT AVG(Monthly)
Report
What: Average
How: Department
Data in, analytics out.
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
GOODDATA@CLOUDSTOCK – DEC 6, 2010 – PETR OLMERBI PLATFORM AS A SERVICE: INTRODUCTION TO GOODDATA – CLOUDSTOCK – DEC 6, 2010 – PETR OLMER
http://gooddata.com
@gooddata
http://developer.gooddata.com
@gooddata_dev
GoodDataIt’s BI minus the BS.