Introduction to YQL - Talk at HackU 2010, IIT Chennai

Post on 20-Jan-2015

1372 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Introduction to YQL - Talk at HackU 2010, IIT Chennai

Transcript

1

select * from internet;

Balaji Narayanan@balajijegan

http://balajin.net/blog/

Application ?

Application =

data data manipulatimanipulati

onondata data

visualizatiovisualizationn

++

datadata

var map = new YMap(document.getElementById('map'));…var currentGeoPoint = new YGeoPoint( _c.Lat, _c.Lon ); map.addMarker(currentGeoPoint);…

…if (flickcurl_prepare(fc, "flickr.photos.geo.correctLocation", parameters, count)) { … }…

http://search.yahooapis.com/ImageSearchService/V1/imageSearch?appid=YahooDemo&query=Corvette&results=2

http://weather.yahooapis.com/forecastrss?p=FRXX0076&u=c

??

????

??

What is the problem?

8

Thousands of Web Services and sources that provide valuable

data

9

Data is isolated

10

Needs filtering, combining, tweaking, shaping even after it

gets to the developer.

11

Require Developers to read documentation and form

URLs/queries

12

http://weather.yahooapis.com/forecastrss?p=FRXX0076&u=chttp://weather.yahooapis.com/forecastrss?p=FRXX0076&u=c

…if (flickcurl_prepare(fc, "flickr.photos.geo.correctLocation", parameters, count)) { … }…

…if (flickcurl_prepare(fc, "flickr.photos.geo.correctLocation", parameters, count)) { … }…

http://search.yahooapis.com/ImageSearchService/V1/imageSearch?appid=YahooDemo&query=Corvette&results=2

http://search.yahooapis.com/ImageSearchService/V1/imageSearch?appid=YahooDemo&query=Corvette&results=2

var map = new YMap(document.getElementById('map'));…var currentGeoPoint = new YGeoPoint( _c.Lat, _c.Lon ); map.addMarker(currentGeoPoint);…

var map = new YMap(document.getElementById('map'));…var currentGeoPoint = new YGeoPoint( _c.Lat, _c.Lon ); map.addMarker(currentGeoPoint);…

YQYQLL

selectselect

descdesc

showshow

YQL YQL stmtstmt

BindingsBindings

Web Service with a SQL Like Language

14

Familiar to developers

15

Synonymous with data access

16

Expressive enough to get the right data

17

Supports query, filter, join and update data across

any structured data on the web / web services

18

Demo

http://developer.yahoo.com/yql/console

19

XML or JSON output formats. JSON also allows for a callback parameter to use directly as JSON-P

20

Using YQL in your application

21

22

23

YQL is not limited to

Yahoo! data only

24

use and set

25

Imports the Open Data Table definition

26

Makes it available as tableName

27

Acts just like other YQL Tables

28

Open tables can be collected together into

environment files

29

set api_key=“value” on myTable

30

use ‘http://myweb/mytable.xml’

as tableName; select * from my tableName

31

YQL Hosted Storage for Storing Secrets, Environment Files, Open Data Tables

insert into yql.storage.admin (name,url) values ('fireeagle','http://balajin.net/hacks/fireeagle.env')

<execute> store://balajin.net/fireeagle

</execute><select>

store://RtdcPRPDsp0d8WyyLSDo3T </select><update>

store://hyOKm0GnP802H2hPzMARZ1 </update>

https://developer.yahoo.com/yql/console/?env=store://balajin.net/fireeagle

Insert / Update / Delete

36

Can modify the data on the cloud

37

Open Data Tables

38

Brings the power of table model to new APIs

39

Schema brings mapping between YQL and

endpoint

40

Keys can be marked as required

41

YQL compiler validates the existence of required keys

42

<execute> element

43

Extends open data table with server side JS

code

44

Move business logic of your application to the

cloud

45

46

More easily build web applications

47

Data processing done away from the app

48

Consistent and familiar syntax for all data

access

49

Iterative environment for developing the

query

50

datadataYQLYQL

Contribute

http://github.com/yql/yql-tables/

52

Questions

yql-questions@yahoo-inc.com

53

top related