Your SlideShare is downloading. ×
0
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
FluidDB for Dummies
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

FluidDB for Dummies

1,376

Published on

Slides from a talk given to the London Python Code Dojo. Introduces the concepts and ideas behind FluidDB (http://fluidinfo.com).

Slides from a talk given to the London Python Code Dojo. Introduces the concepts and ideas behind FluidDB (http://fluidinfo.com).

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

  • Be the first to like this

No Downloads
Views
Total Views
1,376
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
19
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide








































  • Transcript

    • 1. http://www.satisfaction.com/dummies-book-cover-generator/
    • 2. What? / http://www.flickr.com/photos/psd/1428129861 FluidDB is a platform for the web of things, each represented by an openly writable "social" object.
    • 3. Why? http://www.flickr.com/photos/psd/4123236978/ We want to make it easy to share, annotate, augment and re-use information.
    • 4. How? http://ntoll.org/images/93.jpg Objects are simply tagged with information
    • 5. Key Concepts • Objects - represent things* • Tags - define objects’ attributes • Namespaces - organise tags • Permissions - control access * NOT instantiations of classes as in OO, but simply “objects” in the common-sense use of the term.
    • 6. Data Structure entity / attribute / value
    • 7. Data Structure object / tag / value (in FluidDB parlance)
    • 8. Namespaces and tags are pre-defined by users ntoll/rating terrycojones/books/review amazon.com/book/title amazon.com/book/author amazon.com/book/isbn esteve/books/cover timoreilly/has_read (Every namespace and tag has a description and is itself represented by an object so meta-tagging is allowed)
    • 9. A basic object: about = An id = “e127475b-eb93-48e1-a24f-dde6825b9ed8” “book:Dune” object (The about tag is a convention to help indicate what the object represents. It is optional but must be unique)
    • 10. r= ve s/ co k oo ntoll/ b ve/ te es rating am azo n.c “87 om/b -41 ook =5 8-7 517 s/isbn -6” = about = An id = “e127475b-eb93-48e1-a24f-dde6825b9ed8” “book:Dune” object = am a iew zo timoreill v n.c /re s” = s om r ok rm er tho /bo wo “D /bo nes and un ok erb s/au ojo ve s e” s/t t” y/has_re ryc I lo it k H ok le ter “ = ran /bo “F om ad n.c azo am
    • 11. r= ve s/ co k oo ntoll/ b ve/ te es rating am azo n.c “87 om/b -41 ook =5 8-7 517 s/isbn -6” = about = An id = “e127475b-eb93-48e1-a24f-dde6825b9ed8” “book:Dune” object Value Types: = am a iew zo timoreill v n.c /re s” = s om r ok rm er tho /bo wo “D /bo nes and un ok boolean erb s/au ojo ve s e” s/t t” y/has_re ryc I lo it k H ok le ter “ = string (& set) ran /bo “F om numeric ad n.c opaque azo am null
    • 12. A simple and elegant RESTful API https://fluiddb.fluidinfo.com/objects/OBJECT_ID/NAMESPACE(s)/TAG HTTP ‘GET’ returns the value, HTTP ‘PUT’ adds/updates it etc... Full API: http://api.fluidinfo.com/fluidDB/api/*/*/*
    • 13. snoissimreP (seem to be back-to-front)
    • 14. r= Traditional: oo k s/ co ve ntoll/ b ve/ te es rating am azo n.c “87 om/b -41 ook =5 8-7 517 s/isbn -6” = about = id = “e127475b-eb93-48e1-a24f-dde6825b9ed8” “book:Dune” = am a iew zo timoreill v n.c /re s” = s om r ok rm er tho /bo wo “D /bo nes and un ok erb s/au ojo ve s e” s/t t” y/has_re ryc I lo it k H ok le ter “ = ran /bo “F om ad n.c azo am
    • 15. r= FluidDB: k s/ co ve ntoll/ b oo ve/ te rating am es azo n.c “87 om/b =5 -41 ook 8-7 517 s/isbn -6” = about = An id = “e127475b-eb93-48e1-a24f-dde6825b9ed8” “book:Dune” object = am a v iew zo n.c /re s” = timoreill s om ok rm r er tho /bo wo “D /bo nes and un ok erb s/au ojo ve s e” s/t t” ryc I lo it le k H ok y/has_re ter “ = ran /bo “F om n.c ad azo am
    • 16. Permissions • Apply to namespaces, tags and tag-values not objects • Scoped by actions (e.g. “see”, “create”, “read”) • Either “open” or “closed” with a list of exceptions
    • 17. FluidDB’s Query Language • Equality & Inequality: To find objects based on the numeric values or exact textual values, e.g., tim/rating > 5, or geo/name = "Llandefalle". • Textual: To find objects based on text matching their tag values, for example, sally/opinion matches “fantastic”. • Presence: Use has to request objects that have a given tag. For example, has sally/opinion. • Set contents: The contains operator can be used to select objects with a matching value in a set of strings. The query mary/product-reviews/keywords contains "kids" would match the object with a tag called /mary/product- reviews/keywords and value ["cool", "kids", "adventure" ]. • Exclusion: Exclude objects with the except keyword. For example has nytimes.com/appeared except has james/seen. The except operator performs a set difference. • Logic: Query components can be combined with and and or. For example, has sara/rating and tim/rating > 5. • Grouping: Parentheses can be used to group query components. For example, has sara/rating and (tim/rating > 5 or mike/rating > 7).
    • 18. er... that’s it (QL fits on one slide and enhancements are coming soon)
    • 19. http://www.flickr.com/photos/8001265@N08/2259250324/ LIVE DEMO!
    • 20. http://fluidinfo.com

    ×