Data Modeling with Neo4j. Stefan Armbruster, Neo Technology (slides from Michael Hunger)
|
|
- Dominic Wells
- 6 years ago
- Views:
Transcription
1 Data Modeling with Neo4j Stefan Armbruster, Neo Technology (slides from Michael Hunger) 1 1
2 33
3 is a 44
4 NOSQL 55
5 Graph Database 66
6 A graph database... NO: not for charts & diagrams, or vector artwork YES: for storing data that is structured as a graph remember linked lists, trees? graphs are the general-purpose data structure A relational database may tell you the average age of everyone in this place, but a graph database will tell you who is most likely to buy you a beer. 77
7 You know relational foo foo_bar bar 88
8 now consider relationships... 99
9 We're talking about a Property Graph Properties (each a key+value) + Indexes (for easy look-ups) 11 00
10 Aggregate vs. Connected Data-Model
11 NOSQL Databases 11 22
12 Aggregate Oriented Model There is a significant downside - the whole approach works really well when data access is aligned with the aggregates, but what if you want to look at the data in a different way? Order entry naturally stores orders as aggregates, but analyzing product sales cuts across the aggregate structure. The advantage of not using an aggregate structure in the database is that it allows you to slice and dice your data different ways for different audiences. This is why aggregate-oriented stores talk so much about map-reduce. Martin Fowler
13 Connected Data Model The connected data model is based on fine grained elements that are richly connected, the emphasis is on extracting many dimensions and attributes as elements. Connections are cheap and can be used not only for the domain-level relationships but also for additional structures that allow efficient access for different use-cases. The fine grained model requires a external scope for mutating operations that ensures Atomicity, Consistency, Isolation and Durability - ACID also known as Transactions. Michael Hunger
14 Data Modeling
15 Why Data Modeling What is modeling? Aren t we schema free? How does it work in a graph? Where should modeling happen? DB or Application 11 66
16 Data Models
17 Model mis-match Real World Model
18 Model mis-match Application Model Database Model
19 Trinity of models
20 Whiteboard --> Data Andre as knows knows Peter knows Emil knows Alliso n // Cypher query - friend of a friend start n=node(0) match (n)--()--(foaf) return foaf 22 11
21 You traverse the graph // then lookup traverse starting topoint find results in an index n=node:people(name == Andreas ) START me=node:people(name Andreas MATCH (me)-[:friend]-(friend)-[:friend]-(friend2) RETURN friend
22 START user = node(1) MATCH user -[user_skill]-> skill RETURN skill, user_skill SELECT skills.*, user_skill.* FROM users JOIN user_skill ON users.id = user_skill.user_id JOIN skills ON user_skill.skill_id = skill.id WHERE users.id =
23 An Example
24 What language do they speak here? Language Country
25 What language do they speak here? Language Country
26 What language do they speak here? Language Country
27 Tables Language Country language_code country_code language_nam e country_name word_count flag_uri
28 Need to model the relationship Language Country language_code country_code language_nam e country_name word_count language_cod e flag_uri
29 What if the cardinality changes? Language Country language_code country_code language_nam e country_name word_count country_code flag_uri
30 Or we go many-to-many? Language language_code language_nam e word_count LanguageCountr y Country language_cod e country_code country_code flag_uri country_name
31 Or we want to qualify the relationship? Language LanguageCountry Country language_code language_code country_code language_nam e country_code country_name primary flag_uri word_count
32 Start talking about Graphs
33 Explicit Relationship Language Country name name word_count IS_SPOKEN_IN flag_uri
34 Relationship Properties Language Country name name word_count IS_SPOKEN_IN as_primary flag_uri
35 What s different? Language IS_SPOKEN_IN LanguageCountr y Country language_code language_code country_code language_nam e country_code country_name primary flag_uri word_count
36 What s different? Implementation of maintaining relationships is left up to the database Artificial keys disappear or are unnecessary Relationships get an explicit name can be navigated in both directions
37 Relationship specialisation Language Country name name word_count IS_SPOKEN_IN as_primary flag_uri
38 Bidirectional relationships Language name word_count Country IS_SPOKEN_IN PRIMARY_LANGUAGE name flag_uri
39 Weighted relationships Language Country name name word_count POPULATION_SPEAKS population_fraction flag_uri
40 Keep on adding relationships Language Country name name word_count POPULATION_SPEAKS flag_uri population_fraction SIMILAR_TO ADJACENT_TO
41 EMBRACE the paradigm
42 Use the building blocks Nodes Relationships Properties RELATIONSHIP_NAME name: value
43 Anti-pattern: rich properties name: Canada languages_spoken: [ English, French ]
44 Normalize Nodes
45 Anti-Pattern: Node represents multiple concepts Country name flag_uri language_name number_of_words yes_in_language no_in_language currency_code currency_name
46 Split up in separate concepts Country Country name flag_uri name SPEAKS number_of_words currency_code yes currency_name no Currency currency_code currency_name USES_CURRENCY
47 Challenge: Property or Relationship? Can every property be replaced by a relationship? Should every entities with the same property values be connected?
48 Object Mapping Similar to how you would map objects to a relational database, using an ORM such as Hibernate Generally simpler and easier to reason about Examples Java: Spring Data Graph Ruby: Active Model Why Map? Do you use mapping because you are scared of SQL? Following DDD, could you write your repositories directly against the graph API?
49 CONNECT for fast access In-Graph Indices
50 Relationships for querying like in other databases same structure for different use-cases (OLTP and OLAP) doesn t work graph allows: add more structures Relationships should the primary means to access nodes in the database Traversing relationships is cheap that s the whole design goal of a graph database Use lookups only to find starting nodes for a query Data Modeling examples in Manual
51 Anti-pattern: unconnected graph name: Jones name: Jones name: Jones name: Jones name: Jones name: Jones name: Jones name: Jones name: Jones name: Jones name: Jones
52 Pattern: Linked List 55 33
53 Pattern: Multiple Relationships 55 44
54 Pattern-Trees:Tags and Categories 55 55
55 Pattern-Tree: Multi-Level-Tree 55 66
56 Pattern-Trees: R-Tree (spatial) 55 77
57 Example: Activity Stream 55 88
58 Graph Evolution
59 Evolution: Relationship to Node SENT_ ... G A T _FROM EM D E G _TO C C _ L I A see Hyperedges 66 00
60 Combine multiple Domains in a Graph you start with a single domain add more connected domains as your system evolves more domains allow to ask different queries one domain indexes the other Example Facebook Graph Search social graph location graph activity graph favorite graph...
61 Notes on the Graph Data Model Schema free, but constraints Model your graph with a whiteboard and a wise man Nodes as main entities but useless without connections Relationships are first level citizens in the model and database Normalize more than in a relational database use meaningful relationship-types, not generic ones like IS_ use in-graph structures to allow different access paths evolve your graph to your needs, incremental growth 66 22
62 How to get started? Documentation neo4j.org docs.neo4j.org - tutorials+reference Data Modeling Examples Neo4j in Action Good Relationships Worldwide one-day Neo4j Trainings Get Neo4j Participate
63 Really, once you start thinking in graphs it's hard to stop What will you build? Recommendations MDM Business intelligence Geospatial catalogs Systems access control Social computing Management your brain Biotechnology routing genealogy linguistics Making Sense of all that compensation data market vectors 66 99
64 Thank You! Questions?
Introduction in Graph Databases and Neo4j
Introduction in Graph Databases and Neo4j most slides from: Stefan Armbruster Michael Hunger @darthvader42 stefan.armbruster@neotechnology.com 11 The Path Forward 1.No.. NO.. NOSQL 2.Why graphs? 3.What's
More informationNOSQL Databases and Neo4j
NOSQL Databases and Neo4j Database and DBMS Database - Organized collection of data The term database is correctly applied to the data and their supporting data structures. DBMS - Database Management System:
More informationNeo4j.rb. Graph Database. The Natural Way to Persist Data? Andreas Kollegge. Andreas Ronge
Neo4j.rb Graph Database The Natural Way to Persist Data? Andreas Kollegge Andreas Ronge NOSQL The problem with SQL: not designed for Accelerating growth of data Huge clustered environments Complex and
More informationA Little Graph Theory for the Busy Developer. Dr. Jim Webber Chief Scientist, Neo
A Little Graph Theory for the Busy Developer Dr. Jim Webber Chief Scientist, Neo Technology @jimwebber Roadmap Imprisoned data Graph models Graph theory Local properties, global behaviours Predictive techniques
More informationNeo4j. Neo4j's Cypher. Samstag, 27. April 13
Neo4j Neo4j's Cypher Michael Hunger @mesirii @neo4j 1 (Michael)-[:WORKS_ON]-> (Neo4j) console Cypher Community Michael Server Neo4j.org Spring Cloud 2 3 is a 4 NOSQL 5 Graph Database 6 Some Ways to Learn
More informationIntroduction to Big Data. NoSQL Databases. Instituto Politécnico de Tomar. Ricardo Campos
Instituto Politécnico de Tomar Introduction to Big Data NoSQL Databases Ricardo Campos Mestrado EI-IC Análise e Processamento de Grandes Volumes de Dados Tomar, Portugal, 2016 Part of the slides used in
More informationNOSQL DATABASE SYSTEMS: DATA MODELING. Big Data Technologies: NoSQL DBMS (Data Modeling) - SoSe
NOSQL DATABASE SYSTEMS: DATA MODELING Big Data Technologies: NoSQL DBMS (Data Modeling) - SoSe 2017 24 Data Modeling Object-relational impedance mismatch Example: orders, order lines, customers (with different
More informationA Li%le Graph Theory for the Busy Developer. Jim Webber Chief Scien?st, Neo
A Li%le Graph Theory for the Busy Developer Jim Webber Chief Scien?st, Neo Technology @jimwebber Roadmap Imprisoned data Graph models Graph theory Local proper?es, global behaviours Predic?ve techniques
More informationIntroduction to Graph Databases
Introduction to Graph Databases David Montag @dmontag #neo4j 1 Agenda NOSQL overview Graph Database 101 A look at Neo4j The red pill 2 Why you should listen Forrester says: The market for graph databases
More informationHands-on immersion on Big Data tools
Hands-on immersion on Big Data tools NoSQL Databases Donato Summa THE CONTRACTOR IS ACTING UNDER A FRAMEWORK CONTRACT CONCLUDED WITH THE COMMISSION Summary : Definition Main features NoSQL DBs classification
More informationNeo4j. Spatial. Peter Neubauer Neo Technology. GIS for the rest of us.
Neo4j Spatial GIS for the rest of us Peter Neubauer Neo Technology #neo4j @peterneubauer peter@neotechnology.com Data size NOSQL data models Key-value stores Bigtable clones Document databases Graph databases
More informationAggregating Knowledge in a Data Warehouse and Multidimensional Analysis
Aggregating Knowledge in a Data Warehouse and Multidimensional Analysis Rafal Lukawiecki Strategic Consultant, Project Botticelli Ltd rafal@projectbotticelli.com Objectives Explain the basics of: 1. Data
More informationAN introduction to nosql databases
AN introduction to nosql databases Terry McCann @SQLshark Purpose of this presentation? It is important for a data scientist / data engineer to have the right tool for the right job. We will look at an
More informationCOMP9321 Web Application Engineering
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 6 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2411 1 We
More informationBig Data, Complex Data
Big Data, Complex Data Managing Data and Complexity in Graph Databases Peter Neubauer Neo Technology #neo4j @peterneubauer peter@neotechnology.com Data size NOSQL data models Key-value stores Bigtable
More informationDATA MINING AND WAREHOUSING
DATA MINING AND WAREHOUSING Qno Question Answer 1 Define data warehouse? Data warehouse is a subject oriented, integrated, time-variant, and nonvolatile collection of data that supports management's decision-making
More informationWelcome to the topic of SAP HANA modeling views.
Welcome to the topic of SAP HANA modeling views. 1 At the end of this topic, you will be able to describe the three types of SAP HANA modeling views and use the SAP HANA Studio to work with views in the
More informationNoSQL systems: introduction and data models. Riccardo Torlone Università Roma Tre
NoSQL systems: introduction and data models Riccardo Torlone Università Roma Tre Leveraging the NoSQL boom 2 Why NoSQL? In the last fourty years relational databases have been the default choice for serious
More informationA Simple Data Management Problem
A Simple Data Management Problem Adapted from Dr. Gary Lindstrom Department of Computer Science University of Utah Jan 09, 2012 Problem: Managing a list of addresses Solution 1 A blank, spiral-bound notebook
More informationGraph Databases. Graph Databases. May 2015 Alberto Abelló & Oscar Romero
Graph Databases 1 Knowledge Objectives 1. Describe what a graph database is 2. Explain the basics of the graph data model 3. Enumerate the best use cases for graph databases 4. Name two pros and cons of
More informationIntroduction to NoSQL Databases
Introduction to NoSQL Databases Roman Kern KTI, TU Graz 2017-10-16 Roman Kern (KTI, TU Graz) Dbase2 2017-10-16 1 / 31 Introduction Intro Why NoSQL? Roman Kern (KTI, TU Graz) Dbase2 2017-10-16 2 / 31 Introduction
More informationGraph and Timeseries Databases
Graph and Timeseries Databases Roman Kern ISDS, TU Graz 2017-10-23 Roman Kern (ISDS, TU Graz) Dbase2 2017-10-23 1 / 31 Graph Databases Graph Databases Motivation and Basics of Graph Databases? Roman Kern
More informationCMPE 131 Software Engineering. Database Introduction
Presented By Melvin Ch ng CMPE 131 Software Engineering September 14, 2017 Database Introduction Ruby on Rails ORM Agenda Database Management System (DBMS) SQL vs NoSQL Relational Database Introduction
More informationChapter 24 NOSQL Databases and Big Data Storage Systems
Chapter 24 NOSQL Databases and Big Data Storage Systems - Large amounts of data such as social media, Web links, user profiles, marketing and sales, posts and tweets, road maps, spatial data, email - NOSQL
More informationCISC 7610 Lecture 4 Approaches to multimedia databases. Topics: Document databases Graph databases Metadata Column databases
CISC 7610 Lecture 4 Approaches to multimedia databases Topics: Document databases Graph databases Metadata Column databases NoSQL architectures: different tradeoffs for different workloads Already seen:
More informationGraph database Introduc1on
Graph database Introduc1on Agenda What is NoSQL? What is a Graph, Anyway? What is a Graph Database? Neo4J Graph Database What is NoSQL? Stands for Not Only SQL Class of non- relaaonal data storage systems
More informationCOMP9321 Web Application Engineering
COMP9321 Web Application Engineering Data Access in Web Applications Dr. Basem Suleiman Service Oriented Computing Group, CSE, UNSW Australia Semester 1, 2016, Week 5 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2442
More informationCISC 7610 Lecture 4 Approaches to multimedia databases. Topics: Graph databases Neo4j syntax and examples Document databases
CISC 7610 Lecture 4 Approaches to multimedia databases Topics: Graph databases Neo4j syntax and examples Document databases NoSQL architectures: different tradeoffs for different workloads Already seen:
More informationCSE 344 Final Review. August 16 th
CSE 344 Final Review August 16 th Final In class on Friday One sheet of notes, front and back cost formulas also provided Practice exam on web site Good luck! Primary Topics Parallel DBs parallel join
More informationNoSQL Databases. CPS352: Database Systems. Simon Miner Gordon College Last Revised: 4/22/15
NoSQL Databases CPS352: Database Systems Simon Miner Gordon College Last Revised: 4/22/15 Agenda Check-in NoSQL Databases Aggregate databases Key-value, document, and column family Graph databases Related
More informationYeSQL: Battling the NoSQL Hype Cycle with Postgres
YeSQL: Battling the NoSQL Hype Cycle with Postgres BRUCE MOMJIAN This talk explores how new NoSQL technologies are unique, and how existing relational database systems like Postgres are adapting to handle
More informationGetting to know. by Michelle Darling August 2013
Getting to know by Michelle Darling mdarlingcmt@gmail.com August 2013 Agenda: What is Cassandra? Installation, CQL3 Data Modelling Summary Only 15 min to cover these, so please hold questions til the end,
More informationNoSQL database and its business applications
COSC 657 Db. Management Systems Professor: RAMESH K. Student: BUER JIANG Research paper NoSQL database and its business applications The original purpose has been contemporary web-expand dbs. The movement
More informationHandout 12 Data Warehousing and Analytics.
Handout 12 CS-605 Spring 17 Page 1 of 6 Handout 12 Data Warehousing and Analytics. Operational (aka transactional) system a system that is used to run a business in real time, based on current data; also
More informationThe Challenge of Connected Data. Dr. Jim Webber Chief Scientist, Neo
The Challenge of Connected Data Dr. Jim Webber Chief Scientist, Neo Technology @jimwebber http://slantmagazine.com/film/review/saturday-night-fever/4210 http://freenewfoundlandlabrador.blogspot.com/2011/07/nl-fisheries-500-years-of-turmoil.html
More informationHBase vs Neo4j. Technical overview. Name: Vladan Jovičić CR09 Advanced Scalable Data (Fall, 2017) Ecolé Normale Superiuere de Lyon
HBase vs Neo4j Technical overview Name: Vladan Jovičić CR09 Advanced Scalable Data (Fall, 2017) Ecolé Normale Superiuere de Lyon 12th October 2017 1 Contents 1 Introduction 3 2 Overview of HBase and Neo4j
More informationIntroduction to Data Management. Lecture #2 (Big Picture, Cont.)
Introduction to Data Management Lecture #2 (Big Picture, Cont.) Instructor: Mike Carey mjcarey@ics.uci.edu Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke 1 Announcements v Still hanging
More informationThe NoSQL movement. CouchDB as an example
The NoSQL movement CouchDB as an example About me sleepnova - I'm a freelancer Interests: emerging technology, digital art web, embedded system, javascript, programming language Some of my works: Chrome
More informationCopyright 2013, Oracle and/or its affiliates. All rights reserved.
1 Oracle NoSQL Database: Release 3.0 What s new and why you care Dave Segleau NoSQL Product Manager The following is intended to outline our general product direction. It is intended for information purposes
More informationBuilding a Data Strategy for a Digital World
Building a Data Strategy for a Digital World Jason Hunter, CTO, APAC Data Challenge: Pushing the Limits of What's Possible The Art of the Possible Multiple Government Agencies Data Hub 100 s of Service
More informationData Informatics. Seon Ho Kim, Ph.D.
Data Informatics Seon Ho Kim, Ph.D. seonkim@usc.edu NoSQL and Big Data Processing Database Relational Databases mainstay of business Web-based applications caused spikes Especially true for public-facing
More informationMarkLogic 8 Overview of Key Features COPYRIGHT 2014 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.
MarkLogic 8 Overview of Key Features Enterprise NoSQL Database Platform Flexible Data Model Store and manage JSON, XML, RDF, and Geospatial data with a documentcentric, schemaagnostic database Search and
More informationVIDEO 1: WHY IS SEGMENTATION IMPORTANT WITH SMART CONTENT?
VIDEO 1: WHY IS SEGMENTATION IMPORTANT WITH SMART CONTENT? Hi there! I m Angela with HubSpot Academy. This class is going to teach you all about planning content for different segmentations of users. Segmentation
More informationA Journey to DynamoDB
A Journey to DynamoDB and maybe away from DynamoDB Adam Dockter VP of Engineering ServiceTarget Who are we? Small Company 4 Developers AWS Infrastructure NO QA!! About our product Self service web application
More informationMIS Database Systems.
MIS 335 - Database Systems http://www.mis.boun.edu.tr/durahim/ Ahmet Onur Durahim Learning Objectives Database systems concepts Designing and implementing a database application Life of a Query in a Database
More informationModern Database Concepts
Modern Database Concepts Introduction to the world of Big Data Doc. RNDr. Irena Holubova, Ph.D. holubova@ksi.mff.cuni.cz What is Big Data? buzzword? bubble? gold rush? revolution? Big data is like teenage
More informationWelcome to CO 572: Advanced Databases
Welcome to CO 572: Advanced Databases Holger Pirk Holger Pirk Welcome to CO 572: Advanced Databases 1 / 41 Purpose of this Lecture Figuring stu out What you know This should mostly be revision (tell me
More informationA NoSQL Introduction for Relational Database Developers. Andrew Karcher Las Vegas SQL Saturday September 12th, 2015
A NoSQL Introduction for Relational Database Developers Andrew Karcher Las Vegas SQL Saturday September 12th, 2015 About Me http://www.andrewkarcher.com Twitter: @akarcher LinkedIn, Twitter Email: akarcher@gmail.com
More informationNeo. some code snippets. Emil Eifrem , API v1.0-rc1-snapshot
Neo some code snippets Emil Eifrem 2008-05-08, API v1.0-rc1-snapshot A few brief Neo4j code slides The following is a few slides from a live presentation hopefully the code is selfexplanatory But if it
More informationOutline. Database Management Systems (DBMS) Database Management and Organization. IT420: Database Management and Organization
Outline IT420: Database Management and Organization Dr. Crăiniceanu Capt. Balazs www.cs.usna.edu/~adina/teaching/it420/spring2007 Class Survey Why Databases (DB)? A Problem DB Benefits In This Class? Admin
More informationWhat is a graph database?
What is a graph database? A graph database is a data store that has been optimized for highly connected data. Storing connected data in a flat tabular format is time and resource intensive, usually requiring
More informationCS639: Data Management for Data Science. Lecture 1: Intro to Data Science and Course Overview. Theodoros Rekatsinas
CS639: Data Management for Data Science Lecture 1: Intro to Data Science and Course Overview Theodoros Rekatsinas 1 2 Big science is data driven. 3 Increasingly many companies see themselves as data driven.
More information1 Dulcian, Inc., 2001 All rights reserved. Oracle9i Data Warehouse Review. Agenda
Agenda Oracle9i Warehouse Review Dulcian, Inc. Oracle9i Server OLAP Server Analytical SQL Mining ETL Infrastructure 9i Warehouse Builder Oracle 9i Server Overview E-Business Intelligence Platform 9i Server:
More informationIntro to Neo4j and Graph Databases
Intro to Neo4j and Graph Databases David Montag Neo Technology! david@neotechnology.com Early Adopters of Graph Technology Survival of the Fittest Evolution of Web Search Pre-1999 WWW Indexing 1999-2012
More informationBEYOND THE RDBMS: WORKING WITH RELATIONAL DATA IN MARKLOGIC
BEYOND THE RDBMS: WORKING WITH RELATIONAL DATA IN MARKLOGIC Rob Rudin, Solutions Specialist, MarkLogic Agenda Introduction The problem getting relational data into MarkLogic Demo how to do this SLIDE:
More informationOverview. * Some History. * What is NoSQL? * Why NoSQL? * RDBMS vs NoSQL. * NoSQL Taxonomy. *TowardsNewSQL
* Some History * What is NoSQL? * Why NoSQL? * RDBMS vs NoSQL * NoSQL Taxonomy * Towards NewSQL Overview * Some History * What is NoSQL? * Why NoSQL? * RDBMS vs NoSQL * NoSQL Taxonomy *TowardsNewSQL NoSQL
More informationDatabase Availability and Integrity in NoSQL. Fahri Firdausillah [M ]
Database Availability and Integrity in NoSQL Fahri Firdausillah [M031010012] What is NoSQL Stands for Not Only SQL Mostly addressing some of the points: nonrelational, distributed, horizontal scalable,
More informationSCALABLE DATABASES. Sergio Bossa. From Relational Databases To Polyglot Persistence.
SCALABLE DATABASES From Relational Databases To Polyglot Persistence Sergio Bossa sergio.bossa@gmail.com http://twitter.com/sbtourist About Me Software architect and engineer Gioco Digitale (online gambling
More informationEF6 - Version: 1. Entity Framework 6
EF6 - Version: 1 Entity Framework 6 Entity Framework 6 EF6 - Version: 1 4 days Course Description: Entity Framework is the new ORM and data access technology introduced by Microsoft. Entity framework provides
More informationImporting and Exporting Data Between Hadoop and MySQL
Importing and Exporting Data Between Hadoop and MySQL + 1 About me Sarah Sproehnle Former MySQL instructor Joined Cloudera in March 2010 sarah@cloudera.com 2 What is Hadoop? An open-source framework for
More informationMongoDB - a No SQL Database What you need to know as an Oracle DBA
MongoDB - a No SQL Database What you need to know as an Oracle DBA David Burnham Aims of this Presentation To introduce NoSQL database technology specifically using MongoDB as an example To enable the
More informationMicroservice Splitting the Monolith. Software Engineering II Sharif University of Technology MohammadAmin Fazli
Microservice Software Engineering II Sharif University of Technology MohammadAmin Fazli Topics Seams Why to split the monolith Tangled Dependencies Splitting and Refactoring Databases Transactional Boundaries
More information745: Advanced Database Systems
745: Advanced Database Systems Yanlei Diao University of Massachusetts Amherst Outline Overview of course topics Course requirements Database Management Systems 1. Online Analytical Processing (OLAP) vs.
More informationTeiid - Scalable Information Integration. Teiid Caching Guide 7.6
Teiid - Scalable Information Integration 1 Teiid Caching Guide 7.6 1. Overview... 1 2. Results Caching... 3 2.1. Support Summary... 3 2.2. User Interaction... 3 2.2.1. User Query Cache... 3 2.2.2. Procedure
More informationebay s Architectural Principles
ebay s Architectural Principles Architectural Strategies, Patterns, and Forces for Scaling a Large ecommerce Site Randy Shoup ebay Distinguished Architect QCon London 2008 March 14, 2008 What we re up
More informationforeword to the first edition preface xxi acknowledgments xxiii about this book xxv about the cover illustration
contents foreword to the first edition preface xxi acknowledgments xxiii about this book xxv about the cover illustration xix xxxii PART 1 GETTING STARTED WITH ORM...1 1 2 Understanding object/relational
More informationOLAP Introduction and Overview
1 CHAPTER 1 OLAP Introduction and Overview What Is OLAP? 1 Data Storage and Access 1 Benefits of OLAP 2 What Is a Cube? 2 Understanding the Cube Structure 3 What Is SAS OLAP Server? 3 About Cube Metadata
More informationInformatica Power Center 10.1 Developer Training
Informatica Power Center 10.1 Developer Training Course Overview An introduction to Informatica Power Center 10.x which is comprised of a server and client workbench tools that Developers use to create,
More informationIntroduction to Data Management. Lecture #1 (Course Trailer )
Introduction to Data Management Lecture #1 (Course Trailer ) Instructor: Mike Carey mjcarey@ics.uci.edu Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke 1 Today s Topics v Welcome to one
More informationIBM Cognos Framework Manager: Design Metadata Models (V10.2)
Kod szkolenia: Tytuł szkolenia: B5252PL IBM Cognos Framework Manager: Design Metadata Models (V10.2) Dni: 5 Opis: Course materials for this course are available in: English French German Spanish (Spain)
More informationIntroduction to Data Management. Lecture #1 (Course Trailer )
Introduction to Data Management Lecture #1 (Course Trailer ) Instructor: Mike Carey mjcarey@ics.uci.edu Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke 1 Today s Topics! Welcome to my biggest
More informationData Informatics. Seon Ho Kim, Ph.D.
Data Informatics Seon Ho Kim, Ph.D. seonkim@usc.edu HBase HBase is.. A distributed data store that can scale horizontally to 1,000s of commodity servers and petabytes of indexed storage. Designed to operate
More informationINTRODUCTION. In this guide, I m going to walk you through the most effective strategies for growing an list in 2016.
- Bryan Harris - INTRODUCTION In this guide, I m going to walk you through the most effective strategies for growing an email list in 2016. A lot of things are taught online that, quite honestly, just
More informationIntroduction to Data Management. Lecture #2 (Big Picture, Cont.) Instructor: Chen Li
Introduction to Data Management Lecture #2 (Big Picture, Cont.) Instructor: Chen Li 1 Announcements v We added 10 more seats to the class for students on the waiting list v Deadline to drop the class:
More informationTopics. History. Architecture. MongoDB, Mongoose - RDBMS - SQL. - NoSQL
Databases Topics History - RDBMS - SQL Architecture - SQL - NoSQL MongoDB, Mongoose Persistent Data Storage What features do we want in a persistent data storage system? We have been using text files to
More informationBIS Database Management Systems.
BIS 512 - Database Management Systems http://www.mis.boun.edu.tr/durahim/ Ahmet Onur Durahim Learning Objectives Database systems concepts Designing and implementing a database application Life of a Query
More informationebay Marketplace Architecture
ebay Marketplace Architecture Architectural Strategies, Patterns, and Forces Randy Shoup, ebay Distinguished Architect QCon SF 2007 November 9, 2007 What we re up against ebay manages Over 248,000,000
More informationNoSQL & NewSQL - The Empire Strikes Back?!
NoSQL & NewSQL - The Empire Strikes Back? Dave Thomas www.davethomas.net Bedarra Research Labs, YOW GOTO, Lodestone Foundation, DepthFirst, Queensland University of Technology, Carleton University Love
More informationCS430/630 Database Management Systems Spring, Betty O Neil University of Massachusetts at Boston
CS430/630 Database Management Systems Spring, 2019 Betty O Neil University of Massachusetts at Boston People & Contact Information Instructor: Prof. Betty O Neil Email: eoneil AT cs DOT umb DOT edu (preferred
More informationCISC 7610 Lecture 2b The beginnings of NoSQL
CISC 7610 Lecture 2b The beginnings of NoSQL Topics: Big Data Google s infrastructure Hadoop: open google infrastructure Scaling through sharding CAP theorem Amazon s Dynamo 5 V s of big data Everyone
More informationDistributed Databases: SQL vs NoSQL
Distributed Databases: SQL vs NoSQL Seda Unal, Yuchen Zheng April 23, 2017 1 Introduction Distributed databases have become increasingly popular in the era of big data because of their advantages over
More informationHighly Scalable, Ultra-Fast and Lots of Choices
Highly Scalable, Ultra-Fast and Lots of Choices A Pattern Approach to NoSQL Tim Wellhausen kontakt@tim-wellhausen.de http://www.tim-wellhausen.de November 07, 2012 Introduction The main motivation to evaluate
More informationSyllabus. Syllabus. Motivation Decision Support. Syllabus
Presentation: Sophia Discussion: Tianyu Metadata Requirements and Conclusion 3 4 Decision Support Decision Making: Everyday, Everywhere Decision Support System: a class of computerized information systems
More informationIntroduction to Data Management. Lecture #1 (Course Trailer ) Instructor: Chen Li
Introduction to Data Management Lecture #1 (Course Trailer ) Instructor: Chen Li 1 Today s Topics v Welcome to one of my biggest classes ever! v Read (and live by) the course wiki page: http://www.ics.uci.edu/~cs122a/
More informationCSE 544 Principles of Database Management Systems. Magdalena Balazinska Winter 2015 Lecture 14 NoSQL
CSE 544 Principles of Database Management Systems Magdalena Balazinska Winter 2015 Lecture 14 NoSQL References Scalable SQL and NoSQL Data Stores, Rick Cattell, SIGMOD Record, December 2010 (Vol. 39, No.
More informationCIP Multiple Graphs. Presentation at ocig 8 on April 11, Stefan Plantikow, Andrés Taylor, Petra Selmer (Neo4j)
CIP2017-06-18 Multiple Graphs Presentation at ocig 8 on April 11, 2018 Stefan Plantikow, Andrés Taylor, Petra Selmer (Neo4j) History Started working on multiple graphs early 2017 Parallel work in LDBC
More informationNeo4j. Graph database for highly interconnected data
Neo4j Graph database for highly interconnected data What is a graph database? 100 75 50 25 0 April May June July When I first heard about graph databases, this is what I expected to see. I had no idea
More informationObject-Relational Mapping
Object-Relational Mapping Object-Relational Mapping Software Architecture ORM Problems ORM Solutions Demo Software Architecture Part 1 Architecture Separation of Concerns A design principle that comprises
More informationData-Intensive Distributed Computing
Data-Intensive Distributed Computing CS 451/651 431/631 (Winter 2018) Part 5: Analyzing Relational Data (1/3) February 8, 2018 Jimmy Lin David R. Cheriton School of Computer Science University of Waterloo
More informationAdministration Naive DBMS CMPT 454 Topics. John Edgar 2
Administration Naive DBMS CMPT 454 Topics John Edgar 2 http://www.cs.sfu.ca/coursecentral/454/johnwill/ John Edgar 4 Assignments 25% Midterm exam in class 20% Final exam 55% John Edgar 5 A database stores
More informationUnderstanding NoSQL Database Implementations
Understanding NoSQL Database Implementations Sadalage and Fowler, Chapters 7 11 Class 07: Understanding NoSQL Database Implementations 1 Foreword NoSQL is a broad and diverse collection of technologies.
More informationBeyond Relational Databases: MongoDB, Redis & ClickHouse. Marcos Albe - Principal Support Percona
Beyond Relational Databases: MongoDB, Redis & ClickHouse Marcos Albe - Principal Support Engineer @ Percona Introduction MySQL everyone? Introduction Redis? OLAP -vs- OLTP Image credits: 451 Research (https://451research.com/state-of-the-database-landscape)
More informationThe strategic advantage of OLAP and multidimensional analysis
IBM Software Business Analytics Cognos Enterprise The strategic advantage of OLAP and multidimensional analysis 2 The strategic advantage of OLAP and multidimensional analysis Overview Online analytical
More informationSafe Harbor Statement
Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment
More informationCS614 - Data Warehousing - Midterm Papers Solved MCQ(S) (1 TO 22 Lectures)
CS614- Data Warehousing Solved MCQ(S) From Midterm Papers (1 TO 22 Lectures) BY Arslan Arshad Nov 21,2016 BS110401050 BS110401050@vu.edu.pk Arslan.arshad01@gmail.com AKMP01 CS614 - Data Warehousing - Midterm
More informationCIB Session 12th NoSQL Databases Structures
CIB Session 12th NoSQL Databases Structures By: Shahab Safaee & Morteza Zahedi Software Engineering PhD Email: safaee.shx@gmail.com, morteza.zahedi.a@gmail.com cibtrc.ir cibtrc cibtrc 2 Agenda What is
More informationBig Data Management and NoSQL Databases
NDBI040 Big Data Management and NoSQL Databases Lecture 1. Introduction Doc. RNDr. Irena Holubova, Ph.D. holubova@ksi.mff.cuni.cz http://www.ksi.mff.cuni.cz/~holubova/ndbi040/ What is Big Data? buzzword?
More informationFive Common Myths About Scaling MySQL
WHITE PAPER Five Common Myths About Scaling MySQL Five Common Myths About Scaling MySQL In this age of data driven applications, the ability to rapidly store, retrieve and process data is incredibly important.
More informationWhat is Grails4Notes(TM)?
What is Grails4Notes(TM)? Justin Hill, CTO, Prominic.NET, Inc. Copyright (c) 2014. All rights reserved. Trademarks mentioned herein are the rights of their respective owners. About me and Prominic: Co-founder
More informationNOSQL EGCO321 DATABASE SYSTEMS KANAT POOLSAWASD DEPARTMENT OF COMPUTER ENGINEERING MAHIDOL UNIVERSITY
NOSQL EGCO321 DATABASE SYSTEMS KANAT POOLSAWASD DEPARTMENT OF COMPUTER ENGINEERING MAHIDOL UNIVERSITY WHAT IS NOSQL? Stands for No-SQL or Not Only SQL. Class of non-relational data storage systems E.g.
More information