Jgd User Group Demo

757 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
757
On SlideShare
0
From Embeds
0
Number of Embeds
122
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Jgd User Group Demo

  1. 1. JGD: Personal Graphs Barak Michener March 10, 2010 Thursday, March 11, 2010
  2. 2. The Problem: From Tables to Graphs or, an SQL Query walks into a bar... Thursday, March 11, 2010
  3. 3. Dinner Party • Friends • Preferably Techies • Networking • Matchmaking (shhh) • Vegetarian? Thursday, March 11, 2010
  4. 4. Party.xls Name Status Veg? Company Bob Single TRUE Microsoft Fred Relationship FALSE Yahoo Mary Single FALSE Google Sue Single TRUE Apple Thursday, March 11, 2010
  5. 5. Party.xls Name Status Veg? Comp1 Comp2 Bob Single TRUE Microsoft Fred Relationship FALSE Yahoo Mary Single FALSE Google Apple Sue Single TRUE Apple WRONG, but very common Thursday, March 11, 2010
  6. 6. An SQLish Solution Name Status Veg? ID Comp_ID Name Bob S Y 1 1 Microsoft Fred R N 2 2 Apple Mary S N 3 3 Google Sue S Y 4 4 Yahoo Person Company 1 1 2 4 But now we’re getting complex. 3 3 I just wanted to plan a party. 4 2 3 2 Thursday, March 11, 2010
  7. 7. Today’s Semantic Web <?xml version='1.0'?> <!-- If you are running a bot please visit this policy page outlining rules you must respect. http://www.livejournal.com/bots/ --><rdf:RDF xml:lang="en" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:ya="http://blogs.yandex.ru/schema/foaf/" xmlns:lj="http://www.livejournal.org/rss/lj/1.0/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:dc="http://purl.org/dc/elements/1.1/"> <foaf:Person> <foaf:nick>barawulf</foaf:nick> <foaf:name>Barak</foaf:name> <lj:journaltitle>Barak&apos;s Livejournal</lj:journaltitle> <lj:journalsubtitle>rantings of a geek leader</lj:journalsubtitle> <foaf:openid rdf:resource="http://barawulf.livejournal.com/" /> <ya:country dc:title="US" rdf:resource="http://www.livejournal.com/directory.bml?opt_sort=ut&amp;s_loc=1&amp;loc_cn=US"/> <ya:city dc:title="Berkeley" rdf:resource="http://www.livejournal.com/directory.bml?opt_sort=ut&amp;s_loc=1&amp;loc_cn=US&amp;loc_st=&amp;loc_ci=Berkeley"/> <foaf:img rdf:resource="http://l-userpic.livejournal.com/52234957/2173900" /> <foaf:page> <foaf:Document rdf:about="http://barawulf.livejournal.com/profile"> <dc:title>LiveJournal.com Profile</dc:title> <dc:description>Full LiveJournal.com profile, including information such as interests and bio.</dc:description> </foaf:Document> </foaf:page> <ya:blogActivity> <ya:Posts> <ya:feed rdf:resource="http://barawulf.livejournal.com/data/foaf" dc:type="application/rss+xml" /> <ya:posted>149</ya:posted> </ya:Posts> </ya:blogActivity> ...and we’ve just got started (316 lines) Thursday, March 11, 2010
  8. 8. Let’s start over • Goal: Represent Data • HTML circa-1996 Simplicity • Complete with “blink” tags • Proposal: Use JSON! Thursday, March 11, 2010
  9. 9. Demo Thursday, March 11, 2010
  10. 10. 1: Graph Data is Simple Thursday, March 11, 2010
  11. 11. Personal Graph or, What does it take? Thursday, March 11, 2010
  12. 12. What Do I Want? • Easy Relationships • Easy to Edit • Easy to Query (MQL) • “Personal Freebase” • Don’t want the complexity of RDF Thursday, March 11, 2010
  13. 13. The Conflict • Freebase is cool and powerful • Never, ever want to load this data • Graph databases are hard to set up Thursday, March 11, 2010
  14. 14. Enter JGD • JGD == JSON Graph Data • Tool for manipulating a personal graph based on JSON files • A mini, personal, MQL and Graph implementation Thursday, March 11, 2010
  15. 15. Demo Thursday, March 11, 2010
  16. 16. Graph Merge is Powerful Bob Bob Fred Sue Mary Mary Phil test1.jgd test2.jgd Thursday, March 11, 2010
  17. 17. Graph Merge is Powerful Bob Fred Sue Mary Phil jgd2 cat test1.jgd test2.jgd Thursday, March 11, 2010
  18. 18. Demo Thursday, March 11, 2010
  19. 19. Some Stats • First demo was 685 LOC • Rough equivalent checkout of Freebase stack ~800MB • Command-line ready Thursday, March 11, 2010
  20. 20. 2: Graph Data is Powerful 3: Triple Stores Aren’t Scary Thursday, March 11, 2010
  21. 21. Into the Clouds or, “First step into a larger world” Thursday, March 11, 2010
  22. 22. Great, but... • Small datasets, bigger questions • How can I include *more* data? • Answer: Strong identifiers Thursday, March 11, 2010
  23. 23. Demo Thursday, March 11, 2010
  24. 24. Full Circle Name Status Veg? ID Comp_ID Name Bob S Y :bob fb:/en/microsoft Microsoft Fred R N :fred fb:/en/apple_inc Apple Mary S N :mary fb:/en/google Google fb:/wikipedia/en/ Sue S Y :sue Yahoo Yahoo Person Company :bob fb:/en/microsoft :fred fb:/wikipedia/en/Yahoo :mary fb:/en/google :sue fb:/en/apple_inc :mary fb:/en/apple_inc Thursday, March 11, 2010
  25. 25. Full Circle • MQL results are valid JGD! • “Pull” in more data Thursday, March 11, 2010
  26. 26. Demo Thursday, March 11, 2010
  27. 27. 4: Strong Identifiers Connect the Data Cloud Thursday, March 11, 2010
  28. 28. Where Do We Go From Here? • In-browser graphs • Microdata, Faceted Browsing • Simple MQL implementation • SPARQL translator?, other adapters • Sharing data (cat, push, pull) • Queries are subgraphs Thursday, March 11, 2010
  29. 29. Thank You Join in! Fork jgd on github: http://github.com/barakmich/jgd Thursday, March 11, 2010

×