SlideShare a Scribd company logo
Modeling IT Infrastucture
using
The Assimilation Project
#AssimProj

@OSSAlanR

http://assimproj.org/
http://bit.ly/AssimGC2013
Alan Robertson <alanr@unix.sh>
Assimilation Systems Limited
http://assimilationsystems.com

G
R
A
P
H
C
O
N
N
E
C
T
Upcoming Events
GraphConnect San Francisco (today!)
Open Source Monitoring Conference - Nürnberg
NSA / Homeland Security Assimilation Technical Talk
Large Installation System Administration Conference - DC
Colorado Springs Open Source User’s Group
linux.conf.au – Awesome Australian Linux Conf - Perth
Details on http://assimilationsystems.com/

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

2/25
Talk Outline
●

Project Overview

●

Infrastructure Schema

●

Python Object-Graph-Mapping API

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

3/25
Assimilation Project History
●

Inspired by 2 million core computer (cyclops64)

●

Concerns for extreme scale

●

Topology aware monitoring

●

Topology discovery w/out security issues

=►Discovery of everything!

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

4/25
Project Scope
Zero-network-footprint continuous Discovery
integrated with extreme-scale Monitoring
●

Continuous extensible discovery
–

●

Extensible exception monitoring
–

●

systems, switches, services, dependencies
– zero network footprint

G
R
A
P
H
C
O
N
N
E
C
T

more than 100K systems

All data goes into central graph database
© 2013 Assimilation Systems Limited

GraphConnect
4 October
2013

5/25
Discovery
Discovering
●

systems you've forgotten

●

what you're not monitoring

●

whatever you'd like

●

without setting off security alarms

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

6/25
Why Discovery?
●

Documentation: incomplete, incorrect

●

Dependencies: unknown

●

Planning: Needs accurate data

●

●

Best Practices: Verification needs
data
ITIL CMDB (Configuration Mgmt
DataBase)

Our Discovery: continuous, low-profile
© 2013 Assimilation Systems Limited

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013

7/25
Why Neo4j (graph db)?
●
●

●

●
●

●

Dependency & Discovery information: graph
Speed of graph traversals depends on size
of subgraph, not total graph size
Root cause queries  graph traversals –
notoriously slow in relational databases
Visualization of relationships
Schema-less design: good for constantly
changing heterogeneous environment
Graph Model === Object Model
© 2013 Assimilation Systems Limited

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013

8/25
Assimilation Communication
Neighbor-Rings

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

9/25
Ring Representation Schema

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

10/25
ssh -> sshd dependency graph

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

11/25
Switch Discovery Data
from LLDP (or CDP)

CRM transforms LLDP (CDP) Data to JSON
© 2013 Assimilation Systems Limited

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013

12/25
OGM – Object Graph Mapping
●

Managing the Graph Nodes “disappears”

●

The Object Model is the Graph Model

●

Significant Improvement in Thinking
Clarity
–

The “mud” is gone

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

13/25
OGM rules
●
●

●

Don't use Constructors
Relationships replace hash tables and
object references and so on
Constructor parameter names match
attribute names

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

14/25
OGM sample
@RegisterGraphClass
class Person(GraphNode):
'A Person - or at least an electronic representation of one'
def __init__(self, firstname, lastname, dateofbirth=None):
GraphNode.__init__(self, domain='global')
self.firstname = firstname
self.lastname = lastname
if dateofbirth is not None:
self.dateofbirth = dateofbirth
else:
self.dateofbirth='unknown'
@staticmethod
def __meta_keyattrs__():
'Return our key attributes in order of significance'
return ['lastname', 'firstname']
© 2013 Assimilation Systems Limited

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013

15/25
OGM sample
@RegisterGraphClass
class TestSystem(GraphNode):
'Some kind of semi-intelligent system'
def __init__(self, designation, roles=[]):
GraphNode.__init__(self, domain)
self.designation = designation.lower()
if roles == []:
roles = ['']
self.roles = roles
def addroles(self, role):
if self.roles[0] == '''':
del self.roles[0]
if isinstance(role, list):
for arole in role:
self.addroles(arole)
elif role not in self.roles:
self.roles.append(role)

© 2013 Assimilation Systems Limited

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013

16/25
OGM sample
@staticmethod
def __meta_keyattrs__():
'Return our key attributes in order of significance'
return ['designation']

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

17/25
OGM sample
# (seven)-[:formerly]->(Annika)
Annika = store.load_or_create(Person,
firstname='Annika',
lastname='Hansen')
seven = store.load_or_create(Drone,
designation='SevenOfNine', roles='Borg')
store.relate(seven, 'formerly', Annika)
store.commit()

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

18/25
OGM sample
@RegisterGraphClass
class TestDrone(TestSystem):
def __init__(self, designation, roles=[]):
TestSystem.__init__(self, designation=designation)
if isinstance(roles, str):
roles = [roles]
roles.extend(['host', 'Drone'])
System.__init__(self, designation, roles=roles)

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

19/25
Current State
●

First release was April 2013

●

Great unit test infrastructure

●

Nanoprobe code – works well
●

Service monitoring works

●

Lacks digital signatures, encryption, compression

●

Reliable UDP comm code working

●

Several discovery methods written

●

CMA and database code restructuring near-complete

●

G
R
A
P
H
C
O
N
N
E
C
T

UI development underway

●

Licensed under the GPL, commercial license available
© 2013 Assimilation Systems Limited

GraphConnect
4 October
2013

20/25
Future Plans
●

Production grade by end of year

●

Purchased support

●

“Real digital signatures, compression, encryption

●

Other security enhancements

●

Much more discovery

●

GUI

●

Alerting

●

Reporting

●

Add Statistical Monitoring

●

Best Practice Audits

●

Dynamic (aka cloud) specialization

●

G
R
A
P
H
C
O
N
N
E
C
T

Hundreds more ideas
–

See: https://trello.com/b/OpaED3AT
© 2013 Assimilation Systems Limited

GraphConnect
4 October
2013

21/25
Get Involved!
Powerful Ideas and Infrastucture
Fun, ground-breaking project
Looking for early adopters, testers!!
Needs for every kind of skill
●
●
●
●
●
●
●

Awesome User Interfaces (UI/UX)
Evangelism, community building
Test Code (simulate 106 servers!)
Python, C, script coding
Documentation
Feedback: Testing, Ideas, Plans
Many others!
© 2013 Assimilation Systems Limited

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013

22/25
Resistance Is Futile!
#AssimProj

@OSSAlanR

#AssimMon

Project Web Site
http://assimproj.org

G
R
A
P
H
C
O
N
N
E
C
T

Blog
techthoughts.typepad.com
lists.community.tummy.com/cgi-bin/mailman/admin/assimilation
© 2013 Assimilation Systems Limited

GraphConnect
4 October
2013

23/25
The Elder GeekGirl

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

24/25
Younger GeekGirl's Computer

Running Linux
Of Course!

G
R
A
P
H
C
O
N
N
E
C
T

GraphConnect
4 October
2013
© 2013 Assimilation Systems Limited

25/25

More Related Content

What's hot

Realtime Computation with Storm
Realtime Computation with StormRealtime Computation with Storm
Realtime Computation with Storm
boorad
 
Graph computation
Graph computationGraph computation
Graph computation
Sigmoid
 
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...
LDBC council
 
Big Data with Neo4j
Big Data with Neo4jBig Data with Neo4j
Big Data with Neo4j
Neo4j
 
Guaranteeing Consensus in Distriubuted Systems with CRDTs
Guaranteeing Consensus in Distriubuted Systems with CRDTsGuaranteeing Consensus in Distriubuted Systems with CRDTs
Guaranteeing Consensus in Distriubuted Systems with CRDTs
Sun-Li Beatteay
 
Parameter study bonn
Parameter study bonnParameter study bonn
Parameter study bonn
Gabriel Stöckle
 
Engineering Fast Indexes for Big-Data Applications: Spark Summit East talk by...
Engineering Fast Indexes for Big-Data Applications: Spark Summit East talk by...Engineering Fast Indexes for Big-Data Applications: Spark Summit East talk by...
Engineering Fast Indexes for Big-Data Applications: Spark Summit East talk by...
Spark Summit
 
Arc: An IR for Batch and Stream Programming
Arc: An IR for Batch and Stream ProgrammingArc: An IR for Batch and Stream Programming
Arc: An IR for Batch and Stream Programming
Lars Kroll
 
Developing Your Own Flux Packages by David McKay | Head of Developer Relation...
Developing Your Own Flux Packages by David McKay | Head of Developer Relation...Developing Your Own Flux Packages by David McKay | Head of Developer Relation...
Developing Your Own Flux Packages by David McKay | Head of Developer Relation...
InfluxData
 
How to Build a Telegraf Plugin by Noah Crowley
How to Build a Telegraf Plugin by Noah CrowleyHow to Build a Telegraf Plugin by Noah Crowley
How to Build a Telegraf Plugin by Noah Crowley
InfluxData
 
딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)
딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)
딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)
Hansol Kang
 
Samantha Wang [InfluxData] | Best Practices on How to Transform Your Data Usi...
Samantha Wang [InfluxData] | Best Practices on How to Transform Your Data Usi...Samantha Wang [InfluxData] | Best Practices on How to Transform Your Data Usi...
Samantha Wang [InfluxData] | Best Practices on How to Transform Your Data Usi...
InfluxData
 

What's hot (12)

Realtime Computation with Storm
Realtime Computation with StormRealtime Computation with Storm
Realtime Computation with Storm
 
Graph computation
Graph computationGraph computation
Graph computation
 
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...
 
Big Data with Neo4j
Big Data with Neo4jBig Data with Neo4j
Big Data with Neo4j
 
Guaranteeing Consensus in Distriubuted Systems with CRDTs
Guaranteeing Consensus in Distriubuted Systems with CRDTsGuaranteeing Consensus in Distriubuted Systems with CRDTs
Guaranteeing Consensus in Distriubuted Systems with CRDTs
 
Parameter study bonn
Parameter study bonnParameter study bonn
Parameter study bonn
 
Engineering Fast Indexes for Big-Data Applications: Spark Summit East talk by...
Engineering Fast Indexes for Big-Data Applications: Spark Summit East talk by...Engineering Fast Indexes for Big-Data Applications: Spark Summit East talk by...
Engineering Fast Indexes for Big-Data Applications: Spark Summit East talk by...
 
Arc: An IR for Batch and Stream Programming
Arc: An IR for Batch and Stream ProgrammingArc: An IR for Batch and Stream Programming
Arc: An IR for Batch and Stream Programming
 
Developing Your Own Flux Packages by David McKay | Head of Developer Relation...
Developing Your Own Flux Packages by David McKay | Head of Developer Relation...Developing Your Own Flux Packages by David McKay | Head of Developer Relation...
Developing Your Own Flux Packages by David McKay | Head of Developer Relation...
 
How to Build a Telegraf Plugin by Noah Crowley
How to Build a Telegraf Plugin by Noah CrowleyHow to Build a Telegraf Plugin by Noah Crowley
How to Build a Telegraf Plugin by Noah Crowley
 
딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)
딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)
딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)
 
Samantha Wang [InfluxData] | Best Practices on How to Transform Your Data Usi...
Samantha Wang [InfluxData] | Best Practices on How to Transform Your Data Usi...Samantha Wang [InfluxData] | Best Practices on How to Transform Your Data Usi...
Samantha Wang [InfluxData] | Best Practices on How to Transform Your Data Usi...
 

Viewers also liked

Analyzing network infrastructure with Neo4j
Analyzing network infrastructure with Neo4jAnalyzing network infrastructure with Neo4j
Analyzing network infrastructure with Neo4j
Yaroslav Lukyanov
 
Neo4jでつなぐ知見のネットワーク [Pycon2016 LT]
Neo4jでつなぐ知見のネットワーク [Pycon2016 LT]Neo4jでつなぐ知見のネットワーク [Pycon2016 LT]
Neo4jでつなぐ知見のネットワーク [Pycon2016 LT]
創史 花村
 
Python neo4j cytoscapejsでデータ可視化入門
Python neo4j cytoscapejsでデータ可視化入門Python neo4j cytoscapejsでデータ可視化入門
Python neo4j cytoscapejsでデータ可視化入門
Nao Oec
 
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
Takahiro Inoue
 
大規模グラフアルゴリズムの最先端
大規模グラフアルゴリズムの最先端大規模グラフアルゴリズムの最先端
大規模グラフアルゴリズムの最先端
Takuya Akiba
 
Infrastructure development in india
Infrastructure development in indiaInfrastructure development in india
Infrastructure development in india
Mukesh Khinchi
 

Viewers also liked (6)

Analyzing network infrastructure with Neo4j
Analyzing network infrastructure with Neo4jAnalyzing network infrastructure with Neo4j
Analyzing network infrastructure with Neo4j
 
Neo4jでつなぐ知見のネットワーク [Pycon2016 LT]
Neo4jでつなぐ知見のネットワーク [Pycon2016 LT]Neo4jでつなぐ知見のネットワーク [Pycon2016 LT]
Neo4jでつなぐ知見のネットワーク [Pycon2016 LT]
 
Python neo4j cytoscapejsでデータ可視化入門
Python neo4j cytoscapejsでデータ可視化入門Python neo4j cytoscapejsでデータ可視化入門
Python neo4j cytoscapejsでデータ可視化入門
 
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
 
大規模グラフアルゴリズムの最先端
大規模グラフアルゴリズムの最先端大規模グラフアルゴリズムの最先端
大規模グラフアルゴリズムの最先端
 
Infrastructure development in india
Infrastructure development in indiaInfrastructure development in india
Infrastructure development in india
 

Similar to Graphing Enterprise IT – Representing IT Infrastructure and Business Processes as a Graph - Alan Robertson @ GraphConnect SF 2013

PGQL: A Language for Graphs
PGQL: A Language for GraphsPGQL: A Language for Graphs
PGQL: A Language for Graphs
Jean Ihm
 
PPT
PPTPPT
Sparklyr: Big Data enabler for R users
Sparklyr: Big Data enabler for R usersSparklyr: Big Data enabler for R users
Sparklyr: Big Data enabler for R users
ICTeam S.p.A.
 
Sparklyr: Big Data enabler for R users - Serena Signorelli, ICTEAM
Sparklyr: Big Data enabler for R users - Serena Signorelli, ICTEAMSparklyr: Big Data enabler for R users - Serena Signorelli, ICTEAM
Sparklyr: Big Data enabler for R users - Serena Signorelli, ICTEAM
Data Science Milan
 
R language tutorial
R language tutorialR language tutorial
R language tutorial
David Chiu
 
Extending Twitter's Data Platform to Google Cloud
Extending Twitter's Data Platform to Google CloudExtending Twitter's Data Platform to Google Cloud
Extending Twitter's Data Platform to Google Cloud
DataWorks Summit
 
The Sierra Supercomputer: Science and Technology on a Mission
The Sierra Supercomputer: Science and Technology on a MissionThe Sierra Supercomputer: Science and Technology on a Mission
The Sierra Supercomputer: Science and Technology on a Mission
inside-BigData.com
 
20181025_pgconfeu_lt_gstorefdw
20181025_pgconfeu_lt_gstorefdw20181025_pgconfeu_lt_gstorefdw
20181025_pgconfeu_lt_gstorefdw
Kohei KaiGai
 
Questions On The Code And Core Module
Questions On The Code And Core ModuleQuestions On The Code And Core Module
Questions On The Code And Core Module
Katie Gulley
 
Extending twitter's data platform to google cloud
Extending twitter's data platform to google cloud Extending twitter's data platform to google cloud
Extending twitter's data platform to google cloud
Vrushali Channapattan
 
Extending Twitter's Data Platform to Google Cloud
Extending Twitter's Data Platform to Google Cloud Extending Twitter's Data Platform to Google Cloud
Extending Twitter's Data Platform to Google Cloud
lohitvijayarenu
 
Approaching real-time-hadoop
Approaching real-time-hadoopApproaching real-time-hadoop
Approaching real-time-hadoop
Chris Huang
 
Netflix Machine Learning Infra for Recommendations - 2018
Netflix Machine Learning Infra for Recommendations - 2018Netflix Machine Learning Infra for Recommendations - 2018
Netflix Machine Learning Infra for Recommendations - 2018
Karthik Murugesan
 
ML Infra for Netflix Recommendations - AI NEXTCon talk
ML Infra for Netflix Recommendations - AI NEXTCon talkML Infra for Netflix Recommendations - AI NEXTCon talk
ML Infra for Netflix Recommendations - AI NEXTCon talk
Faisal Siddiqi
 
Golden Gate - How to start such a project?
Golden Gate  - How to start such a project?Golden Gate  - How to start such a project?
Golden Gate - How to start such a project?
Trivadis
 
Unlock cassandra data for application developers using graphQL
Unlock cassandra data for application developers using graphQLUnlock cassandra data for application developers using graphQL
Unlock cassandra data for application developers using graphQL
Cédrick Lunven
 
Gc vit sttp cc december 2013
Gc vit sttp cc december 2013Gc vit sttp cc december 2013
Gc vit sttp cc december 2013
Seema Shah
 
GIS 5103 – Fundamentals of GISLecture 83D GIS.docx
GIS 5103 – Fundamentals of GISLecture 83D GIS.docxGIS 5103 – Fundamentals of GISLecture 83D GIS.docx
GIS 5103 – Fundamentals of GISLecture 83D GIS.docx
shericehewat
 
Pivotal Data Labs - Technology and Tools in our Data Scientist's Arsenal
Pivotal Data Labs - Technology and Tools in our Data Scientist's Arsenal Pivotal Data Labs - Technology and Tools in our Data Scientist's Arsenal
Pivotal Data Labs - Technology and Tools in our Data Scientist's Arsenal
Srivatsan Ramanujam
 
Get the most out of Oracle Data Guard - OOW version
Get the most out of Oracle Data Guard - OOW versionGet the most out of Oracle Data Guard - OOW version
Get the most out of Oracle Data Guard - OOW version
Ludovico Caldara
 

Similar to Graphing Enterprise IT – Representing IT Infrastructure and Business Processes as a Graph - Alan Robertson @ GraphConnect SF 2013 (20)

PGQL: A Language for Graphs
PGQL: A Language for GraphsPGQL: A Language for Graphs
PGQL: A Language for Graphs
 
PPT
PPTPPT
PPT
 
Sparklyr: Big Data enabler for R users
Sparklyr: Big Data enabler for R usersSparklyr: Big Data enabler for R users
Sparklyr: Big Data enabler for R users
 
Sparklyr: Big Data enabler for R users - Serena Signorelli, ICTEAM
Sparklyr: Big Data enabler for R users - Serena Signorelli, ICTEAMSparklyr: Big Data enabler for R users - Serena Signorelli, ICTEAM
Sparklyr: Big Data enabler for R users - Serena Signorelli, ICTEAM
 
R language tutorial
R language tutorialR language tutorial
R language tutorial
 
Extending Twitter's Data Platform to Google Cloud
Extending Twitter's Data Platform to Google CloudExtending Twitter's Data Platform to Google Cloud
Extending Twitter's Data Platform to Google Cloud
 
The Sierra Supercomputer: Science and Technology on a Mission
The Sierra Supercomputer: Science and Technology on a MissionThe Sierra Supercomputer: Science and Technology on a Mission
The Sierra Supercomputer: Science and Technology on a Mission
 
20181025_pgconfeu_lt_gstorefdw
20181025_pgconfeu_lt_gstorefdw20181025_pgconfeu_lt_gstorefdw
20181025_pgconfeu_lt_gstorefdw
 
Questions On The Code And Core Module
Questions On The Code And Core ModuleQuestions On The Code And Core Module
Questions On The Code And Core Module
 
Extending twitter's data platform to google cloud
Extending twitter's data platform to google cloud Extending twitter's data platform to google cloud
Extending twitter's data platform to google cloud
 
Extending Twitter's Data Platform to Google Cloud
Extending Twitter's Data Platform to Google Cloud Extending Twitter's Data Platform to Google Cloud
Extending Twitter's Data Platform to Google Cloud
 
Approaching real-time-hadoop
Approaching real-time-hadoopApproaching real-time-hadoop
Approaching real-time-hadoop
 
Netflix Machine Learning Infra for Recommendations - 2018
Netflix Machine Learning Infra for Recommendations - 2018Netflix Machine Learning Infra for Recommendations - 2018
Netflix Machine Learning Infra for Recommendations - 2018
 
ML Infra for Netflix Recommendations - AI NEXTCon talk
ML Infra for Netflix Recommendations - AI NEXTCon talkML Infra for Netflix Recommendations - AI NEXTCon talk
ML Infra for Netflix Recommendations - AI NEXTCon talk
 
Golden Gate - How to start such a project?
Golden Gate  - How to start such a project?Golden Gate  - How to start such a project?
Golden Gate - How to start such a project?
 
Unlock cassandra data for application developers using graphQL
Unlock cassandra data for application developers using graphQLUnlock cassandra data for application developers using graphQL
Unlock cassandra data for application developers using graphQL
 
Gc vit sttp cc december 2013
Gc vit sttp cc december 2013Gc vit sttp cc december 2013
Gc vit sttp cc december 2013
 
GIS 5103 – Fundamentals of GISLecture 83D GIS.docx
GIS 5103 – Fundamentals of GISLecture 83D GIS.docxGIS 5103 – Fundamentals of GISLecture 83D GIS.docx
GIS 5103 – Fundamentals of GISLecture 83D GIS.docx
 
Pivotal Data Labs - Technology and Tools in our Data Scientist's Arsenal
Pivotal Data Labs - Technology and Tools in our Data Scientist's Arsenal Pivotal Data Labs - Technology and Tools in our Data Scientist's Arsenal
Pivotal Data Labs - Technology and Tools in our Data Scientist's Arsenal
 
Get the most out of Oracle Data Guard - OOW version
Get the most out of Oracle Data Guard - OOW versionGet the most out of Oracle Data Guard - OOW version
Get the most out of Oracle Data Guard - OOW version
 

More from Neo4j

BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdfBT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
Neo4j
 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Neo4j
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
Neo4j
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
Neo4j
 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Neo4j
 
Atelier - Architecture d’applications de Graphes - GraphSummit Paris
Atelier - Architecture d’applications de Graphes - GraphSummit ParisAtelier - Architecture d’applications de Graphes - GraphSummit Paris
Atelier - Architecture d’applications de Graphes - GraphSummit Paris
Neo4j
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
FLOA - Détection de Fraude - GraphSummit Paris
FLOA -  Détection de Fraude - GraphSummit ParisFLOA -  Détection de Fraude - GraphSummit Paris
FLOA - Détection de Fraude - GraphSummit Paris
Neo4j
 
SOPRA STERIA - GraphRAG : repousser les limitations du RAG via l’utilisation ...
SOPRA STERIA - GraphRAG : repousser les limitations du RAG via l’utilisation ...SOPRA STERIA - GraphRAG : repousser les limitations du RAG via l’utilisation ...
SOPRA STERIA - GraphRAG : repousser les limitations du RAG via l’utilisation ...
Neo4j
 
ADEO - Knowledge Graph pour le e-commerce, entre challenges et opportunités ...
ADEO -  Knowledge Graph pour le e-commerce, entre challenges et opportunités ...ADEO -  Knowledge Graph pour le e-commerce, entre challenges et opportunités ...
ADEO - Knowledge Graph pour le e-commerce, entre challenges et opportunités ...
Neo4j
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
GraphAware - Transforming policing with graph-based intelligence analysis
GraphAware - Transforming policing with graph-based intelligence analysisGraphAware - Transforming policing with graph-based intelligence analysis
GraphAware - Transforming policing with graph-based intelligence analysis
Neo4j
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
Neo4j
 

More from Neo4j (20)

BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdfBT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
 
Atelier - Architecture d’applications de Graphes - GraphSummit Paris
Atelier - Architecture d’applications de Graphes - GraphSummit ParisAtelier - Architecture d’applications de Graphes - GraphSummit Paris
Atelier - Architecture d’applications de Graphes - GraphSummit Paris
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
FLOA - Détection de Fraude - GraphSummit Paris
FLOA -  Détection de Fraude - GraphSummit ParisFLOA -  Détection de Fraude - GraphSummit Paris
FLOA - Détection de Fraude - GraphSummit Paris
 
SOPRA STERIA - GraphRAG : repousser les limitations du RAG via l’utilisation ...
SOPRA STERIA - GraphRAG : repousser les limitations du RAG via l’utilisation ...SOPRA STERIA - GraphRAG : repousser les limitations du RAG via l’utilisation ...
SOPRA STERIA - GraphRAG : repousser les limitations du RAG via l’utilisation ...
 
ADEO - Knowledge Graph pour le e-commerce, entre challenges et opportunités ...
ADEO -  Knowledge Graph pour le e-commerce, entre challenges et opportunités ...ADEO -  Knowledge Graph pour le e-commerce, entre challenges et opportunités ...
ADEO - Knowledge Graph pour le e-commerce, entre challenges et opportunités ...
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
GraphAware - Transforming policing with graph-based intelligence analysis
GraphAware - Transforming policing with graph-based intelligence analysisGraphAware - Transforming policing with graph-based intelligence analysis
GraphAware - Transforming policing with graph-based intelligence analysis
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
 

Recently uploaded

Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
Emerging Tech
 
Measuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at TwitterMeasuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at Twitter
ScyllaDB
 
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
SynapseIndia
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
Adam Dunkels
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
RaminGhanbari2
 
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
Eric D. Schabell
 
Password Rotation in 2024 is still Relevant
Password Rotation in 2024 is still RelevantPassword Rotation in 2024 is still Relevant
Password Rotation in 2024 is still Relevant
Bert Blevins
 
Choose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presenceChoose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presence
rajancomputerfbd
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
BookNet Canada
 
20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf
Sally Laouacheria
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
Aurora Consulting
 
20240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 202420240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 2024
Matthew Sinclair
 
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
Liveplex
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
Yevgen Sysoyev
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
Toru Tamaki
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
Larry Smarr
 
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly DetectionAdvanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Bert Blevins
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
huseindihon
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Bert Blevins
 

Recently uploaded (20)

Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
 
Measuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at TwitterMeasuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at Twitter
 
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
 
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
 
Password Rotation in 2024 is still Relevant
Password Rotation in 2024 is still RelevantPassword Rotation in 2024 is still Relevant
Password Rotation in 2024 is still Relevant
 
Choose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presenceChoose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presence
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
 
20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
 
20240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 202420240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 2024
 
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
 
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly DetectionAdvanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
 

Graphing Enterprise IT – Representing IT Infrastructure and Business Processes as a Graph - Alan Robertson @ GraphConnect SF 2013

  • 1. Modeling IT Infrastucture using The Assimilation Project #AssimProj @OSSAlanR http://assimproj.org/ http://bit.ly/AssimGC2013 Alan Robertson <alanr@unix.sh> Assimilation Systems Limited http://assimilationsystems.com G R A P H C O N N E C T
  • 2. Upcoming Events GraphConnect San Francisco (today!) Open Source Monitoring Conference - Nürnberg NSA / Homeland Security Assimilation Technical Talk Large Installation System Administration Conference - DC Colorado Springs Open Source User’s Group linux.conf.au – Awesome Australian Linux Conf - Perth Details on http://assimilationsystems.com/ G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 2/25
  • 3. Talk Outline ● Project Overview ● Infrastructure Schema ● Python Object-Graph-Mapping API G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 3/25
  • 4. Assimilation Project History ● Inspired by 2 million core computer (cyclops64) ● Concerns for extreme scale ● Topology aware monitoring ● Topology discovery w/out security issues =►Discovery of everything! G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 4/25
  • 5. Project Scope Zero-network-footprint continuous Discovery integrated with extreme-scale Monitoring ● Continuous extensible discovery – ● Extensible exception monitoring – ● systems, switches, services, dependencies – zero network footprint G R A P H C O N N E C T more than 100K systems All data goes into central graph database © 2013 Assimilation Systems Limited GraphConnect 4 October 2013 5/25
  • 6. Discovery Discovering ● systems you've forgotten ● what you're not monitoring ● whatever you'd like ● without setting off security alarms G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 6/25
  • 7. Why Discovery? ● Documentation: incomplete, incorrect ● Dependencies: unknown ● Planning: Needs accurate data ● ● Best Practices: Verification needs data ITIL CMDB (Configuration Mgmt DataBase) Our Discovery: continuous, low-profile © 2013 Assimilation Systems Limited G R A P H C O N N E C T GraphConnect 4 October 2013 7/25
  • 8. Why Neo4j (graph db)? ● ● ● ● ● ● Dependency & Discovery information: graph Speed of graph traversals depends on size of subgraph, not total graph size Root cause queries  graph traversals – notoriously slow in relational databases Visualization of relationships Schema-less design: good for constantly changing heterogeneous environment Graph Model === Object Model © 2013 Assimilation Systems Limited G R A P H C O N N E C T GraphConnect 4 October 2013 8/25
  • 10. Ring Representation Schema G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 10/25
  • 11. ssh -> sshd dependency graph G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 11/25
  • 12. Switch Discovery Data from LLDP (or CDP) CRM transforms LLDP (CDP) Data to JSON © 2013 Assimilation Systems Limited G R A P H C O N N E C T GraphConnect 4 October 2013 12/25
  • 13. OGM – Object Graph Mapping ● Managing the Graph Nodes “disappears” ● The Object Model is the Graph Model ● Significant Improvement in Thinking Clarity – The “mud” is gone G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 13/25
  • 14. OGM rules ● ● ● Don't use Constructors Relationships replace hash tables and object references and so on Constructor parameter names match attribute names G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 14/25
  • 15. OGM sample @RegisterGraphClass class Person(GraphNode): 'A Person - or at least an electronic representation of one' def __init__(self, firstname, lastname, dateofbirth=None): GraphNode.__init__(self, domain='global') self.firstname = firstname self.lastname = lastname if dateofbirth is not None: self.dateofbirth = dateofbirth else: self.dateofbirth='unknown' @staticmethod def __meta_keyattrs__(): 'Return our key attributes in order of significance' return ['lastname', 'firstname'] © 2013 Assimilation Systems Limited G R A P H C O N N E C T GraphConnect 4 October 2013 15/25
  • 16. OGM sample @RegisterGraphClass class TestSystem(GraphNode): 'Some kind of semi-intelligent system' def __init__(self, designation, roles=[]): GraphNode.__init__(self, domain) self.designation = designation.lower() if roles == []: roles = [''] self.roles = roles def addroles(self, role): if self.roles[0] == '''': del self.roles[0] if isinstance(role, list): for arole in role: self.addroles(arole) elif role not in self.roles: self.roles.append(role) © 2013 Assimilation Systems Limited G R A P H C O N N E C T GraphConnect 4 October 2013 16/25
  • 17. OGM sample @staticmethod def __meta_keyattrs__(): 'Return our key attributes in order of significance' return ['designation'] G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 17/25
  • 18. OGM sample # (seven)-[:formerly]->(Annika) Annika = store.load_or_create(Person, firstname='Annika', lastname='Hansen') seven = store.load_or_create(Drone, designation='SevenOfNine', roles='Borg') store.relate(seven, 'formerly', Annika) store.commit() G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 18/25
  • 19. OGM sample @RegisterGraphClass class TestDrone(TestSystem): def __init__(self, designation, roles=[]): TestSystem.__init__(self, designation=designation) if isinstance(roles, str): roles = [roles] roles.extend(['host', 'Drone']) System.__init__(self, designation, roles=roles) G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 19/25
  • 20. Current State ● First release was April 2013 ● Great unit test infrastructure ● Nanoprobe code – works well ● Service monitoring works ● Lacks digital signatures, encryption, compression ● Reliable UDP comm code working ● Several discovery methods written ● CMA and database code restructuring near-complete ● G R A P H C O N N E C T UI development underway ● Licensed under the GPL, commercial license available © 2013 Assimilation Systems Limited GraphConnect 4 October 2013 20/25
  • 21. Future Plans ● Production grade by end of year ● Purchased support ● “Real digital signatures, compression, encryption ● Other security enhancements ● Much more discovery ● GUI ● Alerting ● Reporting ● Add Statistical Monitoring ● Best Practice Audits ● Dynamic (aka cloud) specialization ● G R A P H C O N N E C T Hundreds more ideas – See: https://trello.com/b/OpaED3AT © 2013 Assimilation Systems Limited GraphConnect 4 October 2013 21/25
  • 22. Get Involved! Powerful Ideas and Infrastucture Fun, ground-breaking project Looking for early adopters, testers!! Needs for every kind of skill ● ● ● ● ● ● ● Awesome User Interfaces (UI/UX) Evangelism, community building Test Code (simulate 106 servers!) Python, C, script coding Documentation Feedback: Testing, Ideas, Plans Many others! © 2013 Assimilation Systems Limited G R A P H C O N N E C T GraphConnect 4 October 2013 22/25
  • 23. Resistance Is Futile! #AssimProj @OSSAlanR #AssimMon Project Web Site http://assimproj.org G R A P H C O N N E C T Blog techthoughts.typepad.com lists.community.tummy.com/cgi-bin/mailman/admin/assimilation © 2013 Assimilation Systems Limited GraphConnect 4 October 2013 23/25
  • 24. The Elder GeekGirl G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 24/25
  • 25. Younger GeekGirl's Computer Running Linux Of Course! G R A P H C O N N E C T GraphConnect 4 October 2013 © 2013 Assimilation Systems Limited 25/25