Breaking down data silos with OData

Post on 27-Jan-2015

111 views 0 download

Tags:

description

The Open Data Protocol (OData) is an open protocol for sharing data. It provides a way to break down data silos and increase the shared value of data by creating an ecosystem in which data consumers can interoperate with data producers in a way that is far more powerful than currently possible, enabling more applications to make sense of a broader set of data. Every producer and consumer of data that participates in this ecosystem increases its overall value. OData is consistent with the way the Web works – it makes a deep commitment to URIs for resource identification and commits to an HTTP-based, uniform interface for interacting with those resources (just like the Web). This commitment to core Web principles allows OData to enable a new level of data integration and interoperability across a broad range of clients, servers, services, and tools.

Transcript of Breaking down data silos with OData

{

Breaking down Data Silos

The Open Data Protocol AKA OData

Chris WoodruffSemantic Technology ConferenceSan Francisco, CAJune 8, 2011

Who am I?

Chris Woodruffcwoodruff@live.comBlog – http://chriswoodruff.comTechnical Architect – Perficient, Inc.

Goals

What is it?Why do we care?How do we use it?

Why is OData Needed?

Quote – Jim Gray

Today, the tools for capturing data both at the mega-scale and at the milli-scale are just dreadful. After you have captured the data, you need to curate it before you can start doing any kind of data analysis, and we lack good tools for both data curation and data analysis.

What is OData?

Web Friendly, just plain HTTPUniform PatternsFocus on Data, not on Formats

Stay High-Level, Abstract the Store

Requirements

“Self-service business intelligence” Let people find and use their own data …but where’s the data?

Broad direct database access is impractical OData feeds expose data over application logic

Reports often represent the best data sources All reports in Reporting Services are now OData

feeds

Insight from data

Government data, e.g. OGDIScientific data, e.g. OSDISocial dataCommercial public data, e.g. Netflix

Premium data, DataMarkets

Data Sharing at Large

Consistent, Up to Date

Scale to Large Datasets

Create Web API to be Consumed with Ease

maximize reach, focus investmentsshare libraries, browsers, applications

Monetize Data

data in modern web applications

Where did OData come from?

Is OData RESTful?

OData

Uniform way of representing structured data Atom, JSON formats

Uniform URL conventions Navigation, filtering, sorting, paging, etc.

Uniform operations Addressability GET, POST, PUT, DELETE always mean the

same

The name Atom applies to a pair of related standards. The Atom Syndication Format is an XML language used for web feeds, while the Atom Publishing Protocol (AtomPub) is a simple HTTP-based protocol for creating and updating web resources.

AtomPub

JSON

The Meta of OData

Lets dig into OData Protocol

Feeds, which are Collections of typed Entries

OData services can expose Service Operations

OData services expose all these constructs via URIs

OData service may also expose a Service Metadata Document

OData has the ability for validation and server side security

The Basics

BinaryBooleanByteDateTimeDateTimeOffset

TimeDecimal

Datatypes

DoubleSingleGuidInt16Int32Int64String

HTTP Verb SQL Command

GET SELECT

PUT UPDATE

POST INSERT

DELETE DELETE

MERGE

Full SQL like Query “Language”

Query Navigation

http://services.odata.org/OData.svc/GetProductsByRating?rating=5

Identifies the "GetProductsByRating" Service Operation and specifies a value of 5 for the "rating" input parameter.

Service Operations (Example)

Where is OData Used?

Who is using OData?

Where can you consume it?

LINQ

OData.orgODataPrimer.com

Wrap Up

The Fourth Paradigm: Data-Intensive Scientific Discovery

http://deepfriedbytes.com