Warm crocodile conference

28
OData Data for a flexible world

description

My slides from my sexy #Odata session at #warmcrocconf

Transcript of Warm crocodile conference

Page 1: Warm crocodile conference

ODataData for a flexible world

Page 2: Warm crocodile conference

1/29/2013 | 2 | ©2012 Ciber, Inc.

• The holy grail for data for the web• Data for a mashup-world• ...

Page 3: Warm crocodile conference

1/29/2013 | 3 | ©2012 Ciber, Inc.

Agenda

• Odata– The whys

• Motivation• Reasoning

– The hows• Stuff

– What is it?– Data format– Query language

• Neat stuff

Page 4: Warm crocodile conference

1/29/2013 | 4 | ©2012 Ciber, Inc.

Caveat

• No c/p• No snippets• No lunatic scrolling / zooming• No (I hope) typing• Lots of straight-forward examples• Lots of talk• Lots of inspiration• Stuff available on bitbucket later (or tomorrow)

Page 5: Warm crocodile conference

1/29/2013 | 5 | ©2012 Ciber, Inc.

Me

• Jesper Lund Stocholm• 39 yrs old• Worked for CIBER for about 7½ yrs• Married with (two) children

– Go figure how much time I had to prepare for this

• Senior architect, public sector– Railroads, utilities (SmartGrid), Environment

protection– MVP for 5 yrs, Office System, Data Platform

Development

Page 6: Warm crocodile conference

1/29/2013 | 6 | ©2012 Ciber, Inc.

Whys

Page 7: Warm crocodile conference

1/29/2013 | 7 | ©2012 Ciber, Inc.

Whys

• Realworld example– Online self-service solution for DONG Energy– Customer wanted basic consumer CRUD-functionality– Heavy traffic during peak periods– SAP backend (using SAP PI)

Page 8: Warm crocodile conference

1/29/2013 | 8 | ©2012 Ciber, Inc.

Whys

• So what did we do?• We created a WS-* endpoint• Exposed something like this

Page 9: Warm crocodile conference

1/29/2013 | 9 | ©2012 Ciber, Inc.

Whys

• We gave them what we wanted– No more, no less

Page 10: Warm crocodile conference

1/29/2013 | 10 | ©2012 Ciber, Inc.

Whys

4 months later

”We want to include email address and a list of the customer’s invoices”

What did we do?• We added this to our backlog• We prioritized it• We planned development and for

– Deployment, DEV, TEST, PROD

Page 11: Warm crocodile conference

1/29/2013 | 11 | ©2012 Ciber, Inc.

Whys

Page 12: Warm crocodile conference

1/29/2013 | 12 | ©2012 Ciber, Inc.

Whys

• We came back and said:

”We can have it done in 6 weeks”

Page 13: Warm crocodile conference

1/29/2013 | 13 | ©2012 Ciber, Inc.

Whys

• They replied

”The UI’s already done – we need the back-end in place my Monday”

Page 14: Warm crocodile conference

1/29/2013 | 14 | ©2012 Ciber, Inc.

Whys

• A more flexible tool• A more versatile tool• A more easy-to-understand tool

Page 15: Warm crocodile conference

1/29/2013 | 15 | ©2012 Ciber, Inc.

Whys

• RESTy/RESTful way of – Accessing data– Exposing data

• HTTP-centric– Uses known HTTP verbs like GET, POST, PUT,

DELETE– Lends itself to simple clients– Clientside scripting languages/tools like jQuery etc

Page 16: Warm crocodile conference

1/29/2013 | 16 | ©2012 Ciber, Inc.

Whys

• Payload of either ATOM or JSON– With strong type declarations

• Provides a LINQ’ish query language on top of it all

Page 17: Warm crocodile conference

1/29/2013 | 17 | ©2012 Ciber, Inc.

Whats

• Open Data Protocol– ” The Open Data Protocol (OData) is a Web protocol

for querying and updating data that provides a way to unlock your data and free it from silos that exist in applications today.”

– Standardization at OASIS• Key players: Citrix, IBM, Microsoft, Progress Software, SAP,

and WSO2• www.odata.org

– In Microsoft stack, part of WCF Data Services

Page 18: Warm crocodile conference

1/29/2013 | 18 | ©2012 Ciber, Inc.

Hows

Page 19: Warm crocodile conference

1/29/2013 | 19 | ©2012 Ciber, Inc.

Hows

• Show how to expose data– Using WCF Data services

• Show how to consume data– Using various client tools

Page 20: Warm crocodile conference

DEMOHow to expose data

Page 21: Warm crocodile conference

1/29/2013 | 21 | ©2012 Ciber, Inc.

Hows

• What have we learned?– Extremely easy– Very powerful– Provides data flexibility– Easy to configure

Page 22: Warm crocodile conference

DEMOHow to consume data

Page 23: Warm crocodile conference

1/29/2013 | 23 | ©2012 Ciber, Inc.

WS* vs. OData

• Chose the right tool• WS-* is awesome!!!

– SOAP is sexy!– Also HTTP-based

• Closely consider your requirements• Closely consider your security requirements

Page 24: Warm crocodile conference

1/29/2013 | 24 | ©2012 Ciber, Inc.

OData is everywhere

Page 25: Warm crocodile conference

1/29/2013 | 25 | ©2012 Ciber, Inc.

OData is everywhere

Page 26: Warm crocodile conference

1/29/2013 | 26 | ©2012 Ciber, Inc.

OData is everywhere

• SAP speaks OData• SharePoint speaks OData• Excel speaks OData (PowerPivot)• Mongo speaks OData

Page 27: Warm crocodile conference

1/29/2013 | 27 | ©2012 Ciber, Inc.

Contact

Jesper Lund Stocholm

[email protected]

@jlundstocholm

Demo code and scripts available at https://bitbucket.org/jlundstocholm/warmcrocconf

Page 28: Warm crocodile conference

1/29/2013 | 28 | ©2012 Ciber, Inc.

Oh yes ...

We’re hiring!