josep lluis larriba-pey – graph databases go mobile, sparksee 5 mobile use cases - nosql matters...
TRANSCRIPT
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º
Sparksee Graph Database
Graph Databases go mobile
Sparksee 5.1 use casesNovember 2014 Josep Lluis Larriba-Pey
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph DatabaseA tip and two questions
A tip and two questions
The tip
• Barcelona, the first NoSQL city back in the XII century (ACA XIV, RN XIII,
ABCN XIII)
• Finances, Taula de Canvi, first public Bank, with a historic archive, banker
• Casa de Convalescència cost 18K€
First question
• I need you to help me, do you want to appear in Sparsity’s Twitter?
• Do you want me to keep talking about History or shift to NoSQL?
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph DatabaseSparksee
Graphs everywhere!
Social
Maps
Apps
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph DatabaseLarge vs Small scale graph analytics
Large vs small scale graph analytics
Large
• Obtained from the community use of resources
• Provide a global view of users for companies
• Require the use of large servers
• Can be used for BI or Analytics
Small
• Obtained from the local use of resources
• Smaller scale view of “my” world
• Can be managed in smaller scale devices
• Can be used for my own needs
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph DatabaseRoadmap
Roadmap for this talk
1. Sparksee 5.1
2. Sparksee 5.1 mobile
3. Use cases for mobile devices
4. Social Network Analytics at Sparsity
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database1. Sparksee 5.1
1. Sparksee 5.1
IS a high-performance and out-of-core graph database management
system
FOR large scale labeled and attributed multigraphs
Labeled: Nodes and edges belong to types
Attributed: Nodes and edges may have attributes
Multigraph: Several edges between nodes
BASED ON vertical partitioning and collections of objects identifiers
stored as bitmaps
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database1. Sparksee 5.1
Sparksee Characteristics
Graph split into small structures
Move to main memory just significant parts (caching)
Object identifiers (oids) instead of complex objects
Reduce memory requirements
Specific structures to improve traversals
Index the edges and the neighbors of each node
Attribute indices
Improve queries based on value filters
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database1. Sparksee 5.1
Sparksee Architecture
— Database core (C++)
— Low level C++ layer: It allows a direct
interaction with applications coded in
C++
— Interface layer (SWIG*): Wrapper
generator for those APIs that are not
C++.
— APIs for Python, Java and .Net on top
of our C++ API
— Mobile APIs for iOS, Android and
BB10.
*SWIG = Simplified Wrapper and Interface Generator.Open source tool used to connect programs/libraries written in C/C++ with other languages.
GDB
GRAPH
DATA
BUFFERPOOL
PLATFORM
SP
KS
EE
CO
RE
BB10
App
.Net
App
JAVA
App
Python
AppC++
App
Objective
C
App
SWIG
Native APIs
SparkseeC++ - Graph Algorithms
Android
App
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database2. Sparksee 5.1 Mobile
2. Sparksee 5.1 Mobile
FIRST EVERFull fledged Graph Database in your mobile device
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database2. Sparksee 5.1 Mobile
Characteristics
• Small code footprint (less than 75Kbytes). • ACID properties, fully transactional. • Provides APIs for most platforms, i.e. Android, iOS and BB.• Fast execution of complex queries (low battery cost).
Advantages
• Sparksee empowers your application at a minimal memory cost.• Connection may be interrupted amid a transaction and you may roll it back.• You may have your device disconnected and still be able to analyze data.• Analytics power in your mobile device.• For App vendors, someone else spends resources and I get the result of the analysis• Community search: fastest and best quality (WWW’14, TETRACOM)
Roadmap
• Provide sync with your server database through Sparksee.• Provide a set of APIs that solve most of your problems: Integration, Social Analytical API,
BI API, etc.
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database3. Use cases for mobile devices
3. Use cases for mobile devices
Mobile device assets
• Data integration (e-mail, contacts, Social Networks, Apps metadata)
Added value with my own data
• My Social Network analytics
• My CRM
Reliability/availability of the communication
• Medical environment
• Travel
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database3. Use cases for mobile devices/Mobile device assets
Data integration
• Data in a mobile device:
• Closely related data
• Managing all your data from a single analytical full fledged database
• It provides an integrated view of all the content in your virtual office
• Easy to query for patterns, relationships, and other complex
algorithms
Social
Apps Contacts
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database3. Use cases for mobile devices/Added value with my own data
My Social Network analytics
• Messaging:
• Sending the message to the adequate people…
• What are the SNs that will secure a better coverage?
• Who can be more interested and has a better impact in the SNs?
• Who is knowledgeable about the topic, so that I can ask for opinion?
• Recommendation
• Collaborative filtering with my own data, let the graph know about me and my friends!
• How can I group my acquaintances to go out tonight? For instance:
• People who like the same type of music and get on well among them…
• People who usually go to close by places…
• People who always get involved in heated discussions…
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database3. Use cases for mobile devices
My CRM
• I have access to my professional social networks via API
• I want to sell a product…
• … want to invite people to an event
• I have to find common friends who are customers
• From my own Social Networks’ contacts
• I want to manage my contacts to know how they evolve in their tastes
• How are they related?
• What patterns can I infer from their evolution?
• From my own Social Networks
3. Use cases for mobile devices/Added value with my own data
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database3. Use cases for mobile devices
Reliability/availability of communications
• Map management
• Geo positioning management
• Movement detection
• Other information:
• POIs
• Medically oriented patterns
• Learning your tastes
Maps
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database3. Use cases for mobile devices/Reliability-availability of communications
Medical environment
• Specific illnesses require constant monitoring
• Detecting the gradient of the movement
• Predicting dangerous patterns
• For example:
• I am diabetic1 and I am hiking in the mountains
• No data connection, maps in device with height water-marks
• My application detects a pattern, predicts danger and warns me:
• Dangerous walking gradient predicted though map
• Before heartbeat increase starts, the system warns me and gives me advice
165% of diabetics die of heart disease and stroke
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database3. Use cases for mobile devices
Travel
• Proposing specific itineraries
• My local maps, POIs and coupons are
downloaded when wi-fi available
• Off-line re-computation of itineraries:
• I move away from the itinerary proposed
• My App computes a new route based on local map
• Commercial recommendations based on your Social off-line “taste” and learning
• Recommend restaurants
• Possibility to redeem coupons
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database4. Social Network Analytics at Sparsity
4. Social Network Analytics at Sparsity
Will provide a SaaS SNA platform
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph Database4. Social Network Analytics at Sparsity
Cloud platform
• Connectors
• Twitter, RSS, Parsers
• You’ll be able to create and include other connectors
• Technologies for analytics
• Community detection based on fastest and most accurate techs.
• Role detection, Entity recognition, Sentiment analysis
• Open SaaS API
• Synchronous and assynchronous connection for services on data
*Sparsity Technologies — Powering Extreme Data sparsity–technologies.comº*Sparsity Technologies — Powering Extreme Data sparsity–technologies.com
º Sparksee Graph DatabaseThanks, Q&A
Thanks!
Sparsity-Technologies
@sparsitytech
Sparsity Technologies
Sparsity Technologies