When a relational database  doesn’t                workAnd why a graph database might help
Contents• Franz and customers• Two Use Cases   – Amdocs: a real time semantic platform for telecom that      knows everyth...
Franz Inc  Who We Are              Franz Inc – Who We Are• Private, founded 1984 • We are an AI and   Semantic Technology ...
(1 (2 3) (4 5) (6 7) (8 9) (10 11) (12 13) (14 15)(16 17) (18 19 20 21 22 23 24 27 28) (29 30))
BobCraig          Alice        Bill
How is it different from an RDB                 and why is it more flexible?                  d h i i             fl ibl ?...
AllegroGraph: RDF Graph Store                  AllegroGraph: RDF Graph StoreBackup/Restore                                ...
Use Case Amdocs             Use Case Amdocs    Build a semantic platformthat knows everything     about everyone      b   ...
Telco Call Center Volume                        Quadruples                        Quadruples                       Since 2...
Typical Interaction Begins in the                                                      Dark                           Bill...
AIDA Maps Events to                                    Concepts                                   C     t Events from many...
Events                     Decision Engine                                  Actions                           SBA   Applic...
AIDA Event Collection                                     AIDA Event Collection                                           ...
AIDA Semantic Inference                           AIDA Semantic Inference• Define rules to operate to create higher level ...
Semantic Inference – Using Business                            Rules to generate high level concepts                      ...
Decisioning – Probabilistic                                     Assessment•    AIDA incorporates also Bayesian Belief Netw...
Presenting insight to the CSR  ese t g s g t to t e CS                                 Process opens  Prediction on reason...
First application:  CRMAmdocs Guided Interaction AdvisorFirst Call ResolutionFirst Call Resolution• Increase up to 15%Aver...
Triples all the way downTriples all the way down
So why a triple store                       So why a triple store• Flexibility, flexibility and flexibility            y, ...
Text Intelligence for DOD/ISText Intelligence for DOD/IS
How would you do this with                      your standard search engine                              d d       h    i•...
The process                              The process• We spider daily >  300 on‐line newspapers and thousands of        p ...
From News Article to                        From News Article to• People (has‐people)      p (       p p )   – And their r...
LOD cloud  Sept 22 2010                   LOD cloud – Sept 22 2010latest LOD cloud
AllegroText
• A little demo?
How scalable is this?How scalable is this?
Loading
Queries• Query planner now takes 99% of SPARQL 1.0, automatically   Q yp                                  Q     ,         ...
You can write this by hand if you   want to optimize yourself.               i i          lf
This will actually work on Prolog           with rules too!            ih l        !
Query performance notes:                             Wins                               i• Indices are small enough to fit...
The endThe end
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Wed 1130 aasman_jans_color
Upcoming SlideShare
Loading in …5
×

Wed 1130 aasman_jans_color

397 views
302 views

Published on

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

  • Be the first to like this

No Downloads
Views
Total views
397
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Wed 1130 aasman_jans_color

  1. 1. When a relational database  doesn’t  workAnd why a graph database might help
  2. 2. Contents• Franz and customers• Two Use Cases – Amdocs: a real time semantic platform for telecom that  knows everything about everyone in real time – Real time news  and social network analysis using the  Linked Open Data Cloud Linked Open Data Cloud• Scalability?• Integration with other NoSQL databases – Solr, MongoDB g , g
  3. 3. Franz Inc  Who We Are Franz Inc – Who We Are• Private, founded 1984 • We are an AI and  Semantic Technology company• Out of Berkeley Out of Berkeley
  4. 4. (1 (2 3) (4 5) (6 7) (8 9) (10 11) (12 13) (14 15)(16 17) (18 19 20 21 22 23 24 27 28) (29 30))
  5. 5. BobCraig Alice Bill
  6. 6. How is it different from an RDB  and why is it more flexible? d h i i fl ibl ?• No Schema.  – Say whatever you want to say but – ontologies may constrain what you put in triple store• No Link Tables  – because you can do one‐to‐many relationships directly• No Indexing Choices – Can add new data attributes (predicates) on‐the‐fly that  will be real time available for querying, because  will be real‐time available for querying because everything is automatically indexed.• Takes anything you give it: it is trivial to consume – Rows and columns from RDB, XML, RDF(S), OWL, Text and  Extracted Entities, JSON
  7. 7. AllegroGraph: RDF Graph Store AllegroGraph: RDF Graph StoreBackup/Restore REST Replication Rules  Rules Java‐ Java Sparql Prolog Geo SNA Time RDFS+ Clif++ ScriptWarm Failover Security Session Management, Query Engine, Federation Management Storage layer ( compression,  indexing, freetext, transactions )
  8. 8. Use Case Amdocs Use Case Amdocs Build a semantic platformthat knows everything about everyone b in real time.
  9. 9. Telco Call Center Volume  Quadruples  Quadruples Since 2007• On average, each call  – Lasts 10 minutes – Go thru 68 screens• One call costs 3 months’ profit from that customer One call costs 3 months profit from that customer• It’s getting worse every day!
  10. 10. Typical Interaction Begins in the  Dark Bill Past  Payments Plan The unknown – why  calling? How to help? g pCalculator (avg peak  Device usage) No real‐time context            Past  Statements Interactions  (Memos) g g ‐ insight & guidanceHigh AHT, poor FCR, low customer and agent satisfaction
  11. 11. AIDA Maps Events to  Concepts C t Events from many source systems are transformed into a set of related business concepts Many events Triple Store with business conceptsInteractionsOrdersBillsPaymentsCollectionsCharge dispute g pCustomerPay instructions Subjective  "good payer"Individual Patterns  a e s "always pays 2 days late" a ays pays days a eDevice Activated Trends “improving payer"Device heartbeat Geospatial  “within 5 miles of the tower"Subscriptions Time  Chronology of events “within 5 minutes of an outage" Device hD i changes Probability  “probably will call about the bill" Absence of occurrence  “missed payment" Relationship between  " friend of a friend"
  12. 12. Events Decision Engine Actions SBA   Application Server Container Container Amdocs  Amdocs  Event Collector Integration  Event Framework Ingestion Inference  Inference Engine (Business  Events Rules) Bayesian y Scheduled Belief Events Network RM CRM OMS CRM “Sesame” Operational Systems NW Web 2.0Event Data Sources AllegroGraph Triple Store DB
  13. 13. AIDA Event Collection AIDA Event Collection Inference & Amdocs Event Collector Amdocs Event Collector DecisionEvent Sources Collection Parsing Mapping Publishing Ingestion • Events are collected from many heterogeneous,  configured event sources – Phone calls, texting, video upload, roaming, etc. Phone calls texting video upload roaming etc – iTune download, web site interaction, media upload – Emails, support calls – Bill payment or non‐payment Bill payment or non payment – Phones stop working or disconnect • All fused and mapped into a single event  knowledge base
  14. 14. AIDA Semantic Inference AIDA Semantic Inference• Define rules to operate to create higher level concepts – Event (mapping) rules ‐ Map event data into the domain ontology – Automatic rules – Compute new properties defined by the ontology – On‐demand rules ‐ perform inference for the services• Rules triggered upon event ingestion, service request or schedule• Semantic rule inference generates new triples from existing ones Charges Amount Bills Payment  Payments P t Due Date Pattern P Make Good “Timeliness” Customer Bad Devices Model Early Improving Late Worsening Status OnTime
  15. 15. Semantic Inference – Using Business  Rules to generate high level concepts R l hi h l l • AIDA provides  “Late Payment” defined in Workbench Workbench for business  rule construction • Utilizes a sophisticated  magnetic block GUI for  business analysts b i l • Rules triggered to infer  and generate new business concepts business concepts Each business rule defines an attribute. This rule definesrule PaymentDetails.timeliness an attribute of the PaymentDetails class called timeliness{ if date within EarlyPeriod days after customerBill.billDate then timeliness = Early ; else if date not within LatePeriod days after customerBill.billDate then timeliness = Late ; Java code else timeliness = OnTime ; All classes and their attributes are} defined in the application ontology
  16. 16. Decisioning – Probabilistic  Assessment• AIDA incorporates also Bayesian Belief Networks (BBN)• These are graphical models for reasoning under uncertainty• Important part of decision making – the likelihood of something happenning estimated by how often it occurred in the past (primarily used in medical research  until recently) til tl )• Evidence consists of observations on certain nodes leading to conclusions Evidence Conclusions Bill Expect Payment  Arrangement  Setup Payment  Pattern Expect  Payment Payment
  17. 17. Presenting insight to the CSR ese t g s g t to t e CS Process opens  Prediction on reason for the  Prediction on reason for the relevant screen for  call – ranked by probability reference and action Presentation of recent  interactions and events   d Prioritized Recommended  treatment and script
  18. 18. First application:  CRMAmdocs Guided Interaction AdvisorFirst Call ResolutionFirst Call Resolution• Increase up to 15%Average Handling Time• Reduce up to 30%Training Costs•R d Reduce up to 25% 25%
  19. 19. Triples all the way downTriples all the way down
  20. 20. So why a triple store So why a triple store• Flexibility, flexibility and flexibility y, y y – Change the schema on a daily basis – Customers create new policies which in turn will create  new schemas on the fly• Needed to work with meaning – Rdf describes data Rdf describes data• Needed to be declarative for everything – Most RTBI is a combination of data in the DB and java Most RTBI is a combination of data in the DB and java  variables in the application.
  21. 21. Text Intelligence for DOD/ISText Intelligence for DOD/IS
  22. 22. How would you do this with  your standard search engine d d h i• Give me a newspaper text with a republican and a democrat that serve on  two subcommittees that have the same parent committee. [ | p ] p• Which [democrat|republican] is most vocal in the oil spill disaster• Given this text, find all the other texts that have the same people and the  same main topics but not democrats in the text. same main topics but not democrats in the text• Which newspaper favors [democrats|republicans]• Which [democrate|republican|senator|representative] get most of the  attention in the last week.• Give me the distribution of the most important topics yesterday
  23. 23. The process The process• We spider daily >  300 on‐line newspapers and thousands of  p y p p blogs• And search specifically for all the member of the senate and   house of representatives and the executive branch• Apply entity extractor to the text and extract main concepts  – About 150 triples per text… p p• Hook up these concepts with a detailed database of  each  politician and with information from the linked open data  cloud
  24. 24. From News Article to From News Article to• People (has‐people) p ( p p ) – And their roles• Places (has‐places) – And the county, state, country they are in• Organizations (has‐organizations) – Government departments, company names, etc.• Main Categories (has‐domains) – Politics sports ministries energy finance economics Politics, sports, ministries, energy, finance, economics,  ecology, oil, mining industry, etc..• Main Concepts (has‐main‐groups) – Other important nouns and phrases in a text
  25. 25. LOD cloud  Sept 22 2010 LOD cloud – Sept 22 2010latest LOD cloud
  26. 26. AllegroText
  27. 27. • A little demo?
  28. 28. How scalable is this?How scalable is this?
  29. 29. Loading
  30. 30. Queries• Query planner now takes 99% of SPARQL 1.0, automatically  Q yp Q , y compiles it into query graph flow language…
  31. 31. You can write this by hand if you  want to optimize yourself. i i lf
  32. 32. This will actually work on Prolog  with rules too! ih l !
  33. 33. Query performance notes: Wins i• Indices are small enough to fit in memory of convential g y machines• Simultaneous access to indices  (see next slide)• Pipe line architecture Pipe line architecture – Stream based processing (all nodes can be active in  p parallel. Most nodes can begin before the end of data is  g reached.)
  34. 34. The endThe end

×