Course Outline
Introduction
- Graph databases and libraries
Understanding Graph Data
- The graph as a data structure
- Using vertices (dots) and edges (lines) to model real-world scenarios
Using Graph Databases to Model, Persist and Process Graph Data
- Local graph algorithms/traversals
- neo4j, OrientDB and Titan
Exercise: Modeling Graph Data with neo4j
- Whiteboard data modeling
Beyond Graph Databases: Graph Computing
- Understanding the property graph
- Graph modeling different scenarios (software graph, discussion graph, concept graph)
Solving Real-World Problems with Traversals
- Algorithmic/directed walk over the graph
- Determining circular cependencies
Case Study: Ranking Discussion Contributors
- Ranking by number and depth of contributed discussions
- A note on sentiment and concept analysis
Graph Computing: Local, In-Memory Graph toolkits
- Graph analysis and visualization
- JUNG, NetworkX, and iGraph
Exercise: Modeling Graph Data with NetworkX
- Using NetworkX to model a complex system
Graph Computing: Batch Processing Graph Frameworks
- Leveraging Hadoop for storage (HDFS) and processing (MapReduce)
- Overview of iterative algorithms
- Hama, Giraph, and GraphLab
Graph Computing: Graph-Parallel Computation
- Unifying ETL, exploratory analysis, and iterative graph computation within a single system
- GraphX
Setup and Installation
- Hadoop and Spark
GraphX Operators
- Property, structural, join, neighborhood aggregation, caching and uncaching
Iterating with Pregel API
- Passing arguments for sending, receiving and computing
Building a Graph
- Using vertices and edges in an RDD or on disk
Designing Scalable Algorithms
- GraphX Optimization
Accessing Additional Algorithms
- PageRank, Connected Components, Triangle Counting
Exercis: Page Rank and Top Users
- Building and processing graph data using text files as input
Deploying to Production
Closing Remarks
Requirements
- An undersanding of Java programming and frameworks
- A general understanding of Python is helpful but not required
- A general understanding of database concepts
Audience
- Developers
Testimonials
Gunnar was very friendly and took time to answer all questions. It was clear he knew a lot about Spark and was able to explain the content and answer questions well.
Kirsty Nangle - Capita Business Services Ltd.
The topics being taught, the examples and exercises were helpful and instructor had great knowledge of subject
Capita Business Services Ltd.
The detailed explanations. Gunnar knew the material very well and took the time to explain anything we found confusing. Most trainers object when you start asking searching questions that take half an hour to answer; Gunnar knew the answers and was willing to focus on what we wanted to learn, not what he had prepared.
Maxwell Green - Capita Business Services Ltd.
Ajay is very personable and a pleasant speaker. He is nice and seems super knowledgeable in many of these areas. He made himself available and his github is a great resource!
credit karma
Doing similar exercises different ways really help understanding what each component (Hadoop/Spark, standalone/cluster) can do on its own and together. It gave me ideas on how I should test my application on my local machine when I develop vs when it is deployed on a cluster.
Thomas Carcaud - IT Frankfurt GmbH
Sufficient hands on, trainer is knowledgable
Chris Tan
The trainer was passionate and well-known what he said I appreciate his help and answers all our questions and suggested cases.
The lab exercises. Applying the theory from the first day in subsequent days.
- Dell
The VM I liked very much The Teacher was very knowledgeable regarding the topic as well as other topics, he was very nice and friendly I liked the facility in Dubai.
Safar Alqahtani - Elm Information Security
His pace, was great. I loved the fact he went into theory too so that I understand WHY I would do the things he is asking.
Intelligent Medical Objects
Trainer adjusted the training slightly based on audience request, so throw some light on few diff topics that we have requested
Intelligent Medical Objects
Having hands on session / assignments
Poornima Chenthamarakshan - Intelligent Medical Objects
1. Right balance between high level concepts and technical details. 2. Andras is very knowledgeable about his teaching. 3. Exercise
Steven Wu - Intelligent Medical Objects
The live examples that were given and showed the basic aspects of Spark.
Intelligent Medical Objects
This is a great class! I most appreciate that Andras explains very clearly what Spark is all about, where it came from, and what problems it is able to solve. Much better than other introductions I've seen that just dive into how to use it. Andras has a deep knowledge of the topic and explains things very well.
Intelligent Medical Objects
It was great to get an understanding of what is going on under the hood of Spark. Knowing what's going on under the hood helps to better understand why your code is or is not doing what you expect it to do. A lot of the training was hands on which is always great and the section on optimizations was exceptionally relevant to my current work which was nice.
Intelligent Medical Objects
It was very informative. I've had very little experience with Spark before and so far this course has provided a very good introduction to the subject.
Intelligent Medical Objects
The content and the knowledge .
Jobstreet.com Shared Services Sdn. Bhd.
Get to learn spark streaming , databricks and aws redshift
Lim Meng Tee - Jobstreet.com Shared Services Sdn. Bhd.
Jorge was amazing- he is super knowledgeable and has a lot of Information to share.
Nadia Naidoo, Jembi Health Systems NPC
very interactive...
Richard Langford - Nadia Naidoo, Jembi Health Systems NPC
The trainer was always open for questions and willing to answer and explain everything. He seems to have very good and deep knowledge of what he is teaching. We were able to focus more on topics that might bring value for us since we were only two students.
DEVK Deutsche Eisenbahn Versicherung Sach- und HUK-Versicherungsverein a.G.
- The trainer is open to questions, and the training is in interactive way. I like this point. - The trainer was able to efficiently manage the participation of remote persons who weren't able to be present in the office.
Arnaud CAPITAINE, Adikteev
It was interesting, got the chance to learn more about machine learning and Spark stack of technologies.
Edina Kiss, Accenture Industrial SS
The fact that we were able to take with us most of the information/course/presentation/exercises done, so that we can look over them and perhaps redo what we didint understand first time or improve what we already did.
Raul Mihail Rat - Edina Kiss, Accenture Industrial SS
I liked that it managed to lay the foundations of the topic and go to some quite advanced exercises. Also provided easy ways to write/test the code.
Ionut Goga - Edina Kiss, Accenture Industrial SS
The live examples
Ahmet Bolat - Edina Kiss, Accenture Industrial SS
The trainer was passionate and well-known what he said I appreciate his help and answers all our questions and suggested cases.