Graph Features in Spark 3.0: Integrating Graph Querying and Algorithms in Spark Graph

Databricks
DatabricksDeveloper Marketing and Relations at MuleSoft
WIFI SSID:Spark+AISummit | Password: UnifiedDataAnalytics
#UnifiedDataAnalytics #SparkAISummit
#UnifiedDataAnalytics #SparkAISummit
Graphs are everywhere
3
#UnifiedDataAnalytics #SparkAISummit
… and growing
4
#UnifiedDataAnalytics #SparkAISummit
Graphs at Spark Summit
5
#UnifiedDataAnalytics #SparkAISummit
Property Graphs & Big Data
The Property Graph data model is becoming increasingly mainstream
Cloud graph data services like Azure CosmosDB or Amazon Neptune
Simple graph features in SQLServer 2017, multiple new graph DB products
New graph query language to be standardized by ISO
Neo4j becoming common operational store in retail, finance, telcos … and more
Increasing interest in graph algorithms over graph data as a basis for AI
Apache® Spark is the leading scale-out clustered memory solution for Big Data
Spark 2: Data viewed as tables (DataFrames), processed by SQL,
in function chains, using queries and user functions,
transforming immutable tabular data sets
6
#UnifiedDataAnalytics #SparkAISummit
Graphs are coming to Spark
7
[SPARK-25994]
SPIP: Property Graphs, Cypher Queries, and Algorithms
Goal
● bring Property Graphs and the Cypher Query language to
Spark
● the SparkSQL for graphs
Status
● Accepted by the community
● Implementation still Work in Progress
#UnifiedDataAnalytics #SparkAISummit
Demonstration
#UnifiedDataAnalytics #SparkAISummit
The Property Graph
#UnifiedDataAnalytics #SparkAISummit
The Whiteboard Model Is the Physical Model
Eliminates
Graph-to-Relational
Mapping
In your data
Bridge the gap
between logical
model and DB
models
#UnifiedDataAnalytics #SparkAISummit
REVIEW
S
name: “Dan”
born: May 29, 1970
twitter: “@dan”
name: “Ann”
born: Dec 5, 1975
date:
Jan 10, 2011
name: “Cars, Inc”
sector:
“automotive”
Property Graph Model Components
Nodes
• The objects in the graph
• Can have name-value
properties
• Can be labeled
KNOWS
KNOWS
FOLLOWS
REVIEW
S
User User
Relationships
• Relate nodes by type and
direction
• Can have name-value
properties Business
#UnifiedDataAnalytics #SparkAISummit
Relational Versus Graph Models
Relational Model Graph Model
REVIEWS
REVIEWS
REVIEWS
Alice
Burgers, Inc
Pizza, Inc
Pretzels
User BusinessUser-Business
Alice
Burgers, Inc
Pretzels
Pizza, Inc
#UnifiedDataAnalytics #SparkAISummit
Graphs in Spark 3.0
#UnifiedDataAnalytics #SparkAISummit
Tables for Labels
• In Spark Graph, PropertyGraphs are represented by
– Node Tables and Relationship Tables
• Tables are represented by DataFrames
– Require a fixed schema
• Property Graphs have a Graph Type
– Node and relationship types that occur in the graph
– Node and relationship properties and their data type
Property Graph
Node Tables
Rel. Tables
Graph Type
#UnifiedDataAnalytics #SparkAISummit
Tables for Labels
:User:ProAccount
name: Alice
:Business
name: Burgers, Inc
:REVIEWS
id name
0 Alice
id name
1 Burgers, Inc
id source target
0 0 1
:User:ProAccount
:Business
:REVIEWS
Graph Type {
:User:ProAccount (
name: STRING
),
:Business (
name: STRING
),
:REVIEWS
}
#UnifiedDataAnalytics #SparkAISummit
Creating a graph
Property Graphs are created from a set of DataFrames.
There are two possible options:
- Using Wide Tables
- one DF for nodes and one for relationships
- column name convention identifies label and property
columns
- Using NodeFrames and RelationshipFrames
- requires a single DataFrame per node label combination and
relationship type
- allows mapping DF columns to properties
16
#UnifiedDataAnalytics #SparkAISummit
Storing and Loading
business.json
user.json
review.json
Create Node and
Relationship Tables
Create Property Graph Store Property Graph
as Parquet
17
#UnifiedDataAnalytics #SparkAISummit
Demonstration
#UnifiedDataAnalytics #SparkAISummit
Graph Querying with
Cypher
#UnifiedDataAnalytics #SparkAISummit
What is Cypher?
• Declarative query language for graphs
– "SQL for graphs"
• Based on pattern matching
• Supports basic data types for properties
• Functions, aggregations, etc
20
#UnifiedDataAnalytics #SparkAISummit
Pattern matching
a b
1
4
3
2
5
1 2
32
4 5
Query graph: Data graph: Result:
#UnifiedDataAnalytics #SparkAISummit
Basic Pattern: Alice's reviews?
(:User {name:'Alice'} ) -[:REVIEWS]-> (business:Business)
REVIEWS
User
Forrest
Gump
VAR LABEL
NODE NODE
?
LABEL PROPERTY
RELATIONSHIP
Type
#UnifiedDataAnalytics #SparkAISummit
Cypher query structure
• Cypher operates over a graph and returns a table
• Basic structure:
MATCH pattern
WHERE predicate
RETURN/WITH expression AS alias, ...
ORDER BY expression
SKIP ... LIMIT ...
#UnifiedDataAnalytics #SparkAISummit
Basic Query:
Businesses Alice has reviewed?
MATCH (user:User)-[r:REVIEWS]->(b:Business)
WHERE user.name = 'Alice'
RETURN b.name, r.rating
#UnifiedDataAnalytics #SparkAISummit
Query Comparison: Colleagues of Tom Hanks?
SELECT co.name AS coReviewer, count(co) AS nbrOfCoReviews
FROM User AS user
JOIN UserBusiness AS ub1 ON (user.id = ub1.user_id)
JOIN UserBusiness AS ub2 ON (ub1.b_id = ub2.b_id)
JOIN User AS co ON (co.id = ub2.user_id)
WHERE user.name = "Alice"
GROUP BY co.name
MATCH
(user:User)-[:REVIEWS]->(:Business)<-[:REVIEWS]-(co:User)
WHERE user.name = 'Alice'
RETURN co.name AS coReviewer, count(*) AS nbrOfCoReviews
#UnifiedDataAnalytics #SparkAISummit
Variable-length patterns
MATCH (a:User)-[r:KNOWS*2..6]->(other:User)
RETURN a, other, length(r) AS length
Allows the traversal of paths of variable length
Returns all results between the minimum and maximum number of
hops
26
#UnifiedDataAnalytics #SparkAISummit
Aggregations
• Cypher supports a number of aggregators
– min(), max(), sum(), avg(), count(), collect(), ...
• When aggregating, non-aggregation projections form a grouping
key:
MATCH (u:User)
RETURN u.name, count(*) AS count
The above query will return the count per unique name
27
#UnifiedDataAnalytics #SparkAISummit
Projections
• UNWIND
UNWIND [‘a’, ‘b’, ‘c’] AS list
• WITH
– Behaves similar to RETURN
– Allows projection of values into new variables
– Controls scoping of variables
MATCH (n1)-[r1]->(m1)
WITH n1, collect(r1) AS r // r1, m1 not visible after this
RETURN n1, r
list
‘a’
‘b’
‘c’
#UnifiedDataAnalytics #SparkAISummit
Expressions
• Arithmetic (+, -, *, /, %)
• Logical (AND, OR, NOT)
• Comparison (<, <=, =, <>, >=, >)
• Functions
– Math functions (sin(), cos(), asin(), ceil(), floor())
– Conversion (toInteger(), toFloat(), toString())
– String functions
– Date and Time functions
– Containers (Nodes, Relationships, Lists, Maps)
– …
#UnifiedDataAnalytics #SparkAISummit
Cypher in Spark 3.0
#UnifiedDataAnalytics #SparkAISummit
In the previous session...
• Property Graph is a growing data model
• Spark Graph will bring Property Graphs
and Cypher to Spark 3.0
• Cypher is "SQL for graphs"
– Based on pattern matching
31
#UnifiedDataAnalytics #SparkAISummit
Now that you know Cypher...
val graph: PropertyGraph = …
graph.cypher(
"""
|MATCH (u:User)-[:REVIEWS]->(b:Business)
|WHERE u.name = 'Alice'
|RETURN u.name, b.name
""".stripMargin
).df.show
32
#UnifiedDataAnalytics #SparkAISummit
So, what happens in that call?
33
#UnifiedDataAnalytics #SparkAISummit
● Distributed executionSpark Core
Spark SQL ● Rule-based query optimization
Query Processing
MATCH (u:User)-[:REVIEWS]->(b:Business)
WHERE u.name = 'Alice'
RETURN u.name, b.name
34
openCypher Frontend
● Shared with Neo4j database system
● Parsing, Rewriting, Normalization
● Semantic Analysis (Scoping, Typing, etc.)
Okapi + Spark Cypher ● Schema and Type handling
● Query translation to DataFrame operations
#UnifiedDataAnalytics #SparkAISummit
Query Translation
MATCH (u:User)-[:REVIEWS]->(b:Business)
WHERE u.name = 'Alice'
RETURN u.name, b.name
Logical view
Physical view (DataFrame operations)
NodeTable(Business)
RelTable(REVIEWS)
NodeTable(User)
Result
35
#UnifiedDataAnalytics #SparkAISummit
Spark Cypher Architecture
36
● Conversion of expressions
● Typing of expressions
● Translation into Logical Operators
● Basic Logical Optimization
● Column layout computation for intermediate results
● Translation into Relational Operations
openCypher Frontend
Okapi + Spark Cypher
Spark SQL
Spark Core
Intermediate Language
Relational Planning
Logical Planning
● Translation of Relational Operations into DataFrame
transformations
● Expression Conversion to Spark SQL Columns
Spark Cypher
#UnifiedDataAnalytics #SparkAISummit
Query(None,
SingleQuery(List(
Match(false,
Pattern(List(
EveryPath(
RelationshipChain(
NodePattern(Some(Variable(u)),List(),None,None),
RelationshipPattern(Some(Variable(UNNAMED18)),List(RelTypeName(REVIEWS)),None,None,OUTGOING,None,false),
NodePattern(Some(Variable(b)),List(),None,None))))),List(),
Some(Where(
Ands(
Set(HasLabels(Variable(u),List(LabelName(User))),
HasLabels(Variable(b),List(LabelName(Business))),
Equals(Property(Variable(u),PropertyKeyName(name)),Parameter( AUTOSTRING0,String))))))),
With(false,ReturnItems(false,List(
AliasedReturnItem(Property(Variable(u),PropertyKeyName(name)),Variable(n.name)),
AliasedReturnItem(Property(Variable(b),PropertyKeyName(name)),Variable(b.name)))),None,None,None,None),
Return(false,ReturnItems(false,List(
AliasedReturnItem(Variable(u.name),Variable(u.name)),
AliasedReturnItem(Variable(b.name),Variable(b.name)))),None,None,None,Set()))))
MATCH (u:User)-[:REVIEWS]->(b:Business)
WHERE u.name = 'Alice'
RETURN u.name, b.name
37
openCypher Frontend
Okapi + Spark
Cypher
Spark SQL
Spark Core
Intermediate
Language
Relational Planning
Logical Planning
Spark Cypher
#UnifiedDataAnalytics #SparkAISummit
MATCH (u:User)-[:REVIEWS]->(b:Business)
WHERE u.name = 'Alice'
RETURN u.name, b.name
38
╙──TableResultBlock(OrderedFields(List(u.name :: STRING, b.name :: STRING)), ...)
╙──ProjectBlock(Fields(Map(u.name :: STRING -> u.name :: STRING, b.name :: STRING -> b.name :: STRING)), Set(), ...)
╙──ProjectBlock(Fields(Map(u.name :: STRING -> u.name :: STRING, b.name :: STRING -> b.name :: STRING)), Set(), ...)
╙──MatchBlock(Pattern(
Set(u :: NODE, b :: NODE, UNNAMED18 :: RELATIONSHIP(:REVIEWS)),
Map( UNNAMED18 :: RELATIONSHIP(:REVIEWS) -> DirectedRelationship(Endpoints(u :: NODE, b :: NODE))),
Set(u:User :: BOOLEAN, b:Business :: BOOLEAN, u.name :: STRING = "Alice" :: STRING)
))
╙──SourceBlock(IRCatalogGraph(session.tmp#1)
openCypher Frontend
Okapi + Spark
Cypher
Spark SQL
Spark Core
Intermediate
Language
Relational Planning
Logical Planning
Spark Cypher
• Converting AST patterns into okapi patterns
• Converting AST expressions into okapi expressions
• Typing expressions
#UnifiedDataAnalytics #SparkAISummit
MATCH (u:User)-[:REVIEWS]->(b:Business)
WHERE n.name = 'Alice'
RETURN u.name, b.name
Select(List(u.name :: STRING, b.name :: STRING), ...)
╙─Project((b.name :: STRING,Some(b.name :: STRING)), ...)
╙─Project((u.name :: STRING,Some(u.name :: STRING)), ...)
╙─Filter(u.name :: STRING = $ AUTOSTRING0 :: STRING, ...)
╙─Project((u.name :: STRING,None), ...)
╙─Filter(b:Business :: BOOLEAN, ...)
╙─Filter(u:User :: BOOLEAN, ...)
╙─Expand(u :: NODE, UNNAMED18 :: RELATIONSHIP(:REVIEWS), b :: NODE, Directed, ...)
╟─NodeScan(u :: NODE, ...)
║ ╙─Start(LogicalCatalogGraph(session.tmp#1), ...)
╙─NodeScan(b :: NODE , ...)
╙─Start(LogicalCatalogGraph(session.tmp#1), ...)
Convert Intermediate Language Blocks into Logical Query Operators
39
openCypher Frontend
Okapi + Spark
Cypher
Spark SQL
Spark Core
Intermediate
Language
Relational Planning
Logical Planning
Spark Cypher
#UnifiedDataAnalytics #SparkAISummit
Select(List(u.name :: STRING, b.name :: STRING), ...)
╙─Project((b.name :: STRING,Some(b.name :: STRING)), ...)
╙─Project((u.name :: STRING,Some(u.name :: STRING)), ...)
╙─Filter(u.name :: STRING = $ AUTOSTRING0 :: STRING, ...)
╙─Project((u.name :: STRING,None), ...)
╙─Expand(u :: NODE, UNNAMED18 :: RELATIONSHIP(:REVIEWS), b :: NODE, Directed, ...)
╟─NodeScan(u :: NODE(:User), ...)
║ ╙─Start(LogicalCatalogGraph(session.tmp#1), ...)
╙─NodeScan(b :: NODE(:Business), ...)
╙─Start(LogicalCatalogGraph(session.tmp#1), ...)
40
openCypher Frontend
Okapi + Spark
Cypher
Spark SQL
Spark Core
Intermediate
Language
Relational Planning
Logical Planning
Spark Cypher
Apply basic optimizations to a Logical Query plan (e.g. label pushdown)
MATCH (u:User)-[:REVIEWS]->(b:Business)
WHERE u.name = 'Alice'
RETURN u.name, b.name
#UnifiedDataAnalytics #SparkAISummit
MATCH (u:User)-[:REVIEWS]->(b:Business)
WHERE u.name = 'Alice'
RETURN u.name, b.name
Select(u.name :: STRING, b.name :: STRING), RecordHeader with 2 entries)
╙─Alias(b.name :: STRING AS b.name :: STRING RecordHeader with 15 entries)
╙─Alias(u.name :: STRING AS u.name :: STRING, RecordHeader with 14 entries)
╙─Filter(u.name :: STRING = "Alice", RecordHeader with 13 entries)
╙─Join((target(UNNAMED18 :: RELATIONSHIP(:REVIEWS)) -> b :: NODE)), RecordHeader with 13 entries, InnerJoin)
╟─Join((u :: NODE -> source(UNNAMED18 :: RELATIONSHIP(:REVIEWS))), RecordHeader with 9 entries, InnerJoin)
║ ╟─NodeScan(u :: NODE(:User), RecordHeader 4 entries)
║ ║ ╙─Start(Some(CAPSRecords.unit), session.tmp#1)
║ ╙─RelationshipScan(UNNAMED18 :: RELATIONSHIP(:REVIEWS), RecordHeader with 5 entries)
║ ╙─Start(None)
╙─NodeScan(b :: NODE(:Business), RecordHeader with 4 entries)
╙─Start(Some(CAPSRecords.unit))
Translation of graph operations into relational operations
41
openCypher Frontend
Okapi + Spark
Cypher
Spark SQL
Spark Core
Intermediate
Language
Logical Planning
Relational Planning
Spark Cypher
#UnifiedDataAnalytics #SparkAISummit
● Describes the output table of a relational operator
● Maps query expressions (e.g. ‘n.name’ or ‘n:User’) to DataFrame / Table columns
● Used to access columns when evaluating expression during physical execution
● Supports relational operations to reflect data changes (e.g.
header.join(otherHeader))
42
#UnifiedDataAnalytics #SparkAISummit
Expression Column Name
NodeVar(n) :: CTNODE(:User) n
HasLabel(n, :User) :: CTBOOLEAN ____n:User
Property(n.name) :: CTSTRING ____n_dot_nameSTRING
43
Select(b, name)
╙─Project(b.name as name)
╙─Project(n as b)
╙─NodeScan(n:User)
#UnifiedDataAnalytics #SparkAISummit
Expression Column Name
NodeVar(n) :: CTNODE(:User) n
HasLabel(n, :User) :: CTBOOLEAN ____n:User
Property(n.name) :: CTSTRING ____n_dot_nameSTRING
NodeVar(b) :: CTNODE(:User) n
HasLabel(b, :User) :: CTBOOLEAN ____n:User
Property(b.name) :: CTSTRING ____n_dot_nameSTRING
44
Select(b, name)
╙─Project(b.name as name)
╙─Project(n as b)
╙─NodeScan(n:User)
#UnifiedDataAnalytics #SparkAISummit
Expression Column Name
NodeVar(n) :: CTNODE(:User) n
HasLabel(n, :User) :: CTBOOLEAN ____n:User
Property(n.name) :: CTSTRING ____n_dot_nameSTRING
NodeVar(b) :: CTNODE(:User) n
HasLabel(b, :User) :: CTBOOLEAN ____n:User
Property(b.name) :: CTSTRING ____n_dot_nameSTRING
SimpleVar(name) :: CTSTRING ____n_dot_nameSTRING
45
Select(b, name)
╙─Project(b.name as name)
╙─Project(n as b)
╙─NodeScan(n:User)
#UnifiedDataAnalytics #SparkAISummit
Expression Column Name
NodeVar(b) :: CTNODE(:User) n
HasLabel(b, :User) :: CTBOOLEAN ____n:User
Property(b.name) :: CTSTRING ____n_dot_nameSTRING
SimpleVar(name) :: CTSTRING ____n_dot_nameSTRING
46
Select(b, name)
╙─Project(b.name as name)
╙─Project(n as b)
╙─NodeScan(n:User)
#UnifiedDataAnalytics #SparkAISummit
Abstracts relational operators over the relational backends table
Converts OKAPI expressions into backend specific expressions
trait Table[E] {
def header: RecordHeader
def select(expr: String, exprs: String*): Table[E]
def filter(expr: Expr): Table[E]
def distinct: Table[E]
def order(by: SortItem[Expr]*): Table[E]
def group(by: Set[Expr], aggregations: Set[Aggregation]): Table[E]
def join(other: Table[E], joinExprs: Set[(String, String)], joinType: JoinType): Table[E]
def unionAll(other: Table[E]): Table[E]
def add(expr: Expr): Table[E]
def addInto(expr: Expr, into: String): Table[E]
def drop(columns: String*): Table[E]
def rename(oldColumn: Expr, newColumn: String): Table[E]
}
47
openCypher Frontend
Okapi + Spark
Cypher
Spark SQL
Spark Core
Intermediate
Language
Relational Planning
Spark Cypher
Logical Planning
#UnifiedDataAnalytics #SparkAISummit
class DataFrameTable(df: DataFrame) extends RelationalTable[DataFrameTable] {
// ...
override def filter(expr: Expr): DataFrameTable = {
new DataFrameTable(df.filter(convertExpression(expr, header)))
}
override def join(other: DataFrameTable, joinExprs: Set[(String, String)], joinType: JoinType): DataFrameTable = {
val joinExpr = joinExprs.map { case (l,r) => df.col(l) === other.df(r) }.reduce(_ && _)
new DataFrameTable(df.join(other.df, joinExpr, joinType))
}
// ...
}
openCypher Frontend
Okapi + Spark
Cypher
Spark SQL
Spark Core
Intermediate
Language
Relational Planning
Logical Planning
Spark Cypher
48
#UnifiedDataAnalytics #SparkAISummit
Future improvement ideas
• Common table expressions
• Worst-case optimal joins
• Graph-aware optimisations in Catalyst
• Graph-aware data partitioning
49
#UnifiedDataAnalytics #SparkAISummit
Spark Cypher in Action
#UnifiedDataAnalytics #SparkAISummit
Extending Spark
Graph with Neo4j
Morpheus
#UnifiedDataAnalytics #SparkAISummit
Neo4j Morpheus
• Incubator for SparkCypher
• Extends Cypher language with
multiple-graph features
• Graph catalog
• Property graph data sources for
integration with Neo4j, SQL DBMS, etc.
https://github.com/opencypher/morpheus
52
#UnifiedDataAnalytics #SparkAISummit
Get Involved!
• SPIP was accepted in February
• Current status:
– Core development is poc-complete
– PRs in review
• We are not Spark committers
– Help us review / merge
– Contribute to documentation, Python API
53
DON’T FORGET TO RATE
AND REVIEW THE SESSIONS
SEARCH SPARK + AI SUMMIT
1 of 54

Recommended

A Tale of Three Apache Spark APIs: RDDs, DataFrames, and Datasets with Jules ... by
A Tale of Three Apache Spark APIs: RDDs, DataFrames, and Datasets with Jules ...A Tale of Three Apache Spark APIs: RDDs, DataFrames, and Datasets with Jules ...
A Tale of Three Apache Spark APIs: RDDs, DataFrames, and Datasets with Jules ...Databricks
5K views50 slides
Deep Dive into Spark SQL with Advanced Performance Tuning with Xiao Li & Wenc... by
Deep Dive into Spark SQL with Advanced Performance Tuning with Xiao Li & Wenc...Deep Dive into Spark SQL with Advanced Performance Tuning with Xiao Li & Wenc...
Deep Dive into Spark SQL with Advanced Performance Tuning with Xiao Li & Wenc...Databricks
10.8K views45 slides
Understanding Query Plans and Spark UIs by
Understanding Query Plans and Spark UIsUnderstanding Query Plans and Spark UIs
Understanding Query Plans and Spark UIsDatabricks
4.7K views50 slides
Introduction to Spark Internals by
Introduction to Spark InternalsIntroduction to Spark Internals
Introduction to Spark InternalsPietro Michiardi
19.2K views80 slides
Build Real-Time Applications with Databricks Streaming by
Build Real-Time Applications with Databricks StreamingBuild Real-Time Applications with Databricks Streaming
Build Real-Time Applications with Databricks StreamingDatabricks
957 views13 slides
Introducing DataFrames in Spark for Large Scale Data Science by
Introducing DataFrames in Spark for Large Scale Data ScienceIntroducing DataFrames in Spark for Large Scale Data Science
Introducing DataFrames in Spark for Large Scale Data ScienceDatabricks
41K views39 slides

More Related Content

What's hot

Optimizing Apache Spark SQL Joins by
Optimizing Apache Spark SQL JoinsOptimizing Apache Spark SQL Joins
Optimizing Apache Spark SQL JoinsDatabricks
44.9K views24 slides
Beyond SQL: Speeding up Spark with DataFrames by
Beyond SQL: Speeding up Spark with DataFramesBeyond SQL: Speeding up Spark with DataFrames
Beyond SQL: Speeding up Spark with DataFramesDatabricks
43.3K views24 slides
Programming in Spark using PySpark by
Programming in Spark using PySpark      Programming in Spark using PySpark
Programming in Spark using PySpark Mostafa Elzoghbi
5.9K views25 slides
Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update... by
Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update...Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update...
Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update...Databricks
282 views52 slides
Cost-Based Optimizer in Apache Spark 2.2 by
Cost-Based Optimizer in Apache Spark 2.2 Cost-Based Optimizer in Apache Spark 2.2
Cost-Based Optimizer in Apache Spark 2.2 Databricks
5.5K views55 slides
Lessons from the Field: Applying Best Practices to Your Apache Spark Applicat... by
Lessons from the Field: Applying Best Practices to Your Apache Spark Applicat...Lessons from the Field: Applying Best Practices to Your Apache Spark Applicat...
Lessons from the Field: Applying Best Practices to Your Apache Spark Applicat...Databricks
11.1K views50 slides

What's hot(20)

Optimizing Apache Spark SQL Joins by Databricks
Optimizing Apache Spark SQL JoinsOptimizing Apache Spark SQL Joins
Optimizing Apache Spark SQL Joins
Databricks44.9K views
Beyond SQL: Speeding up Spark with DataFrames by Databricks
Beyond SQL: Speeding up Spark with DataFramesBeyond SQL: Speeding up Spark with DataFrames
Beyond SQL: Speeding up Spark with DataFrames
Databricks43.3K views
Programming in Spark using PySpark by Mostafa Elzoghbi
Programming in Spark using PySpark      Programming in Spark using PySpark
Programming in Spark using PySpark
Mostafa Elzoghbi5.9K views
Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update... by Databricks
Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update...Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update...
Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update...
Databricks282 views
Cost-Based Optimizer in Apache Spark 2.2 by Databricks
Cost-Based Optimizer in Apache Spark 2.2 Cost-Based Optimizer in Apache Spark 2.2
Cost-Based Optimizer in Apache Spark 2.2
Databricks5.5K views
Lessons from the Field: Applying Best Practices to Your Apache Spark Applicat... by Databricks
Lessons from the Field: Applying Best Practices to Your Apache Spark Applicat...Lessons from the Field: Applying Best Practices to Your Apache Spark Applicat...
Lessons from the Field: Applying Best Practices to Your Apache Spark Applicat...
Databricks11.1K views
Processing Large Data with Apache Spark -- HasGeek by Venkata Naga Ravi
Processing Large Data with Apache Spark -- HasGeekProcessing Large Data with Apache Spark -- HasGeek
Processing Large Data with Apache Spark -- HasGeek
Venkata Naga Ravi12.4K views
Physical Plans in Spark SQL by Databricks
Physical Plans in Spark SQLPhysical Plans in Spark SQL
Physical Plans in Spark SQL
Databricks7K views
Dynamic Partition Pruning in Apache Spark by Databricks
Dynamic Partition Pruning in Apache SparkDynamic Partition Pruning in Apache Spark
Dynamic Partition Pruning in Apache Spark
Databricks4.9K views
Delta Lake: Optimizing Merge by Databricks
Delta Lake: Optimizing MergeDelta Lake: Optimizing Merge
Delta Lake: Optimizing Merge
Databricks1.1K views
PySpark Programming | PySpark Concepts with Hands-On | PySpark Training | Edu... by Edureka!
PySpark Programming | PySpark Concepts with Hands-On | PySpark Training | Edu...PySpark Programming | PySpark Concepts with Hands-On | PySpark Training | Edu...
PySpark Programming | PySpark Concepts with Hands-On | PySpark Training | Edu...
Edureka!1.4K views
Common Strategies for Improving Performance on Your Delta Lakehouse by Databricks
Common Strategies for Improving Performance on Your Delta LakehouseCommon Strategies for Improving Performance on Your Delta Lakehouse
Common Strategies for Improving Performance on Your Delta Lakehouse
Databricks716 views
Delta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard by Paris Data Engineers !
Delta Lake OSS: Create reliable and performant Data Lake by Quentin AmbardDelta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
Delta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in Spark by Bo Yang
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in SparkSpark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in Spark
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in Spark
Bo Yang2.7K views
Deep Dive: Memory Management in Apache Spark by Databricks
Deep Dive: Memory Management in Apache SparkDeep Dive: Memory Management in Apache Spark
Deep Dive: Memory Management in Apache Spark
Databricks14.5K views
Apache Spark in Depth: Core Concepts, Architecture & Internals by Anton Kirillov
Apache Spark in Depth: Core Concepts, Architecture & InternalsApache Spark in Depth: Core Concepts, Architecture & Internals
Apache Spark in Depth: Core Concepts, Architecture & Internals
Anton Kirillov9.6K views
Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E... by Edureka!
Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E...Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E...
Spark SQL Tutorial | Spark Tutorial for Beginners | Apache Spark Training | E...
Edureka!2.4K views
Raven: End-to-end Optimization of ML Prediction Queries by Databricks
Raven: End-to-end Optimization of ML Prediction QueriesRaven: End-to-end Optimization of ML Prediction Queries
Raven: End-to-end Optimization of ML Prediction Queries
Databricks449 views
A Thorough Comparison of Delta Lake, Iceberg and Hudi by Databricks
A Thorough Comparison of Delta Lake, Iceberg and HudiA Thorough Comparison of Delta Lake, Iceberg and Hudi
A Thorough Comparison of Delta Lake, Iceberg and Hudi
Databricks11.1K views
Spark SQL Join Improvement at Facebook by Databricks
Spark SQL Join Improvement at FacebookSpark SQL Join Improvement at Facebook
Spark SQL Join Improvement at Facebook
Databricks463 views

Similar to Graph Features in Spark 3.0: Integrating Graph Querying and Algorithms in Spark Graph

Neo4j Morpheus: Interweaving Documents, Tables and and Graph Data in Spark wi... by
Neo4j Morpheus: Interweaving Documents, Tables and and Graph Data in Spark wi...Neo4j Morpheus: Interweaving Documents, Tables and and Graph Data in Spark wi...
Neo4j Morpheus: Interweaving Documents, Tables and and Graph Data in Spark wi...Databricks
903 views41 slides
Cypher and apache spark multiple graphs and more in open cypher by
Cypher and apache spark  multiple graphs and more in  open cypherCypher and apache spark  multiple graphs and more in  open cypher
Cypher and apache spark multiple graphs and more in open cypherNeo4j
888 views50 slides
Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac... by
Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac...Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac...
Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac...Databricks
1.7K views102 slides
AWS November Webinar Series - Advanced Analytics with Amazon Redshift and the... by
AWS November Webinar Series - Advanced Analytics with Amazon Redshift and the...AWS November Webinar Series - Advanced Analytics with Amazon Redshift and the...
AWS November Webinar Series - Advanced Analytics with Amazon Redshift and the...Amazon Web Services
1.7K views40 slides
Extending Spark Graph for the Enterprise with Morpheus and Neo4j by
Extending Spark Graph for the Enterprise with Morpheus and Neo4jExtending Spark Graph for the Enterprise with Morpheus and Neo4j
Extending Spark Graph for the Enterprise with Morpheus and Neo4jDatabricks
868 views54 slides
Morpheus SQL and Cypher® in Apache® Spark - Big Data Meetup Munich by
Morpheus SQL and Cypher® in Apache® Spark - Big Data Meetup MunichMorpheus SQL and Cypher® in Apache® Spark - Big Data Meetup Munich
Morpheus SQL and Cypher® in Apache® Spark - Big Data Meetup MunichMartin Junghanns
158 views83 slides

Similar to Graph Features in Spark 3.0: Integrating Graph Querying and Algorithms in Spark Graph(20)

Neo4j Morpheus: Interweaving Documents, Tables and and Graph Data in Spark wi... by Databricks
Neo4j Morpheus: Interweaving Documents, Tables and and Graph Data in Spark wi...Neo4j Morpheus: Interweaving Documents, Tables and and Graph Data in Spark wi...
Neo4j Morpheus: Interweaving Documents, Tables and and Graph Data in Spark wi...
Databricks903 views
Cypher and apache spark multiple graphs and more in open cypher by Neo4j
Cypher and apache spark  multiple graphs and more in  open cypherCypher and apache spark  multiple graphs and more in  open cypher
Cypher and apache spark multiple graphs and more in open cypher
Neo4j888 views
Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac... by Databricks
Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac...Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac...
Neo4j Morpheus: Interweaving Table and Graph Data with SQL and Cypher in Apac...
Databricks1.7K views
AWS November Webinar Series - Advanced Analytics with Amazon Redshift and the... by Amazon Web Services
AWS November Webinar Series - Advanced Analytics with Amazon Redshift and the...AWS November Webinar Series - Advanced Analytics with Amazon Redshift and the...
AWS November Webinar Series - Advanced Analytics with Amazon Redshift and the...
Amazon Web Services1.7K views
Extending Spark Graph for the Enterprise with Morpheus and Neo4j by Databricks
Extending Spark Graph for the Enterprise with Morpheus and Neo4jExtending Spark Graph for the Enterprise with Morpheus and Neo4j
Extending Spark Graph for the Enterprise with Morpheus and Neo4j
Databricks868 views
Morpheus SQL and Cypher® in Apache® Spark - Big Data Meetup Munich by Martin Junghanns
Morpheus SQL and Cypher® in Apache® Spark - Big Data Meetup MunichMorpheus SQL and Cypher® in Apache® Spark - Big Data Meetup Munich
Morpheus SQL and Cypher® in Apache® Spark - Big Data Meetup Munich
Martin Junghanns158 views
Morpheus - SQL and Cypher in Apache Spark by Henning Kropp
Morpheus - SQL and Cypher in Apache SparkMorpheus - SQL and Cypher in Apache Spark
Morpheus - SQL and Cypher in Apache Spark
Henning Kropp72 views
Data-Driven Transformation: Leveraging Big Data at Showtime with Apache Spark by Databricks
Data-Driven Transformation: Leveraging Big Data at Showtime with Apache SparkData-Driven Transformation: Leveraging Big Data at Showtime with Apache Spark
Data-Driven Transformation: Leveraging Big Data at Showtime with Apache Spark
Databricks757 views
Composable Parallel Processing in Apache Spark and Weld by Databricks
Composable Parallel Processing in Apache Spark and WeldComposable Parallel Processing in Apache Spark and Weld
Composable Parallel Processing in Apache Spark and Weld
Databricks3.6K views
Tactical Data Science Tips: Python and Spark Together by Databricks
Tactical Data Science Tips: Python and Spark TogetherTactical Data Science Tips: Python and Spark Together
Tactical Data Science Tips: Python and Spark Together
Databricks762 views
DASK and Apache Spark by Databricks
DASK and Apache SparkDASK and Apache Spark
DASK and Apache Spark
Databricks4K views
2018 data warehouse features in spark by Chester Chen
2018   data warehouse features in spark2018   data warehouse features in spark
2018 data warehouse features in spark
Chester Chen768 views
Big data analysis using spark r published by Dipendra Kusi
Big data analysis using spark r publishedBig data analysis using spark r published
Big data analysis using spark r published
Dipendra Kusi161 views
Graph database in sv meetup by Joshua Bae
Graph database in sv meetupGraph database in sv meetup
Graph database in sv meetup
Joshua Bae655 views
New Features in Neo4j 3.4 / 3.3 - Graph Algorithms, Spatial, Date-Time & Visu... by jexp
New Features in Neo4j 3.4 / 3.3 - Graph Algorithms, Spatial, Date-Time & Visu...New Features in Neo4j 3.4 / 3.3 - Graph Algorithms, Spatial, Date-Time & Visu...
New Features in Neo4j 3.4 / 3.3 - Graph Algorithms, Spatial, Date-Time & Visu...
jexp639 views
BDA305 NEW LAUNCH! Intro to Amazon Redshift Spectrum: Now query exabytes of d... by Amazon Web Services
BDA305 NEW LAUNCH! Intro to Amazon Redshift Spectrum: Now query exabytes of d...BDA305 NEW LAUNCH! Intro to Amazon Redshift Spectrum: Now query exabytes of d...
BDA305 NEW LAUNCH! Intro to Amazon Redshift Spectrum: Now query exabytes of d...
Amazon Web Services5.4K views
Graph Analytics in Spark by Paco Nathan
Graph Analytics in SparkGraph Analytics in Spark
Graph Analytics in Spark
Paco Nathan21.8K views
Introduction to SQL Server Graph DB by Greg McMurray
Introduction to SQL Server Graph DBIntroduction to SQL Server Graph DB
Introduction to SQL Server Graph DB
Greg McMurray163 views
Multiplaform Solution for Graph Datasources by Stratio
Multiplaform Solution for Graph DatasourcesMultiplaform Solution for Graph Datasources
Multiplaform Solution for Graph Datasources
Stratio771 views

More from Databricks

DW Migration Webinar-March 2022.pptx by
DW Migration Webinar-March 2022.pptxDW Migration Webinar-March 2022.pptx
DW Migration Webinar-March 2022.pptxDatabricks
4.3K views25 slides
Data Lakehouse Symposium | Day 1 | Part 1 by
Data Lakehouse Symposium | Day 1 | Part 1Data Lakehouse Symposium | Day 1 | Part 1
Data Lakehouse Symposium | Day 1 | Part 1Databricks
1.5K views43 slides
Data Lakehouse Symposium | Day 1 | Part 2 by
Data Lakehouse Symposium | Day 1 | Part 2Data Lakehouse Symposium | Day 1 | Part 2
Data Lakehouse Symposium | Day 1 | Part 2Databricks
739 views16 slides
Data Lakehouse Symposium | Day 4 by
Data Lakehouse Symposium | Day 4Data Lakehouse Symposium | Day 4
Data Lakehouse Symposium | Day 4Databricks
1.8K views74 slides
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop by
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop
5 Critical Steps to Clean Your Data Swamp When Migrating Off of HadoopDatabricks
6.3K views64 slides
Democratizing Data Quality Through a Centralized Platform by
Democratizing Data Quality Through a Centralized PlatformDemocratizing Data Quality Through a Centralized Platform
Democratizing Data Quality Through a Centralized PlatformDatabricks
1.4K views36 slides

More from Databricks(20)

DW Migration Webinar-March 2022.pptx by Databricks
DW Migration Webinar-March 2022.pptxDW Migration Webinar-March 2022.pptx
DW Migration Webinar-March 2022.pptx
Databricks4.3K views
Data Lakehouse Symposium | Day 1 | Part 1 by Databricks
Data Lakehouse Symposium | Day 1 | Part 1Data Lakehouse Symposium | Day 1 | Part 1
Data Lakehouse Symposium | Day 1 | Part 1
Databricks1.5K views
Data Lakehouse Symposium | Day 1 | Part 2 by Databricks
Data Lakehouse Symposium | Day 1 | Part 2Data Lakehouse Symposium | Day 1 | Part 2
Data Lakehouse Symposium | Day 1 | Part 2
Databricks739 views
Data Lakehouse Symposium | Day 4 by Databricks
Data Lakehouse Symposium | Day 4Data Lakehouse Symposium | Day 4
Data Lakehouse Symposium | Day 4
Databricks1.8K views
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop by Databricks
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop
Databricks6.3K views
Democratizing Data Quality Through a Centralized Platform by Databricks
Democratizing Data Quality Through a Centralized PlatformDemocratizing Data Quality Through a Centralized Platform
Democratizing Data Quality Through a Centralized Platform
Databricks1.4K views
Learn to Use Databricks for Data Science by Databricks
Learn to Use Databricks for Data ScienceLearn to Use Databricks for Data Science
Learn to Use Databricks for Data Science
Databricks1.6K views
Why APM Is Not the Same As ML Monitoring by Databricks
Why APM Is Not the Same As ML MonitoringWhy APM Is Not the Same As ML Monitoring
Why APM Is Not the Same As ML Monitoring
Databricks743 views
The Function, the Context, and the Data—Enabling ML Ops at Stitch Fix by Databricks
The Function, the Context, and the Data—Enabling ML Ops at Stitch FixThe Function, the Context, and the Data—Enabling ML Ops at Stitch Fix
The Function, the Context, and the Data—Enabling ML Ops at Stitch Fix
Databricks689 views
Stage Level Scheduling Improving Big Data and AI Integration by Databricks
Stage Level Scheduling Improving Big Data and AI IntegrationStage Level Scheduling Improving Big Data and AI Integration
Stage Level Scheduling Improving Big Data and AI Integration
Databricks850 views
Simplify Data Conversion from Spark to TensorFlow and PyTorch by Databricks
Simplify Data Conversion from Spark to TensorFlow and PyTorchSimplify Data Conversion from Spark to TensorFlow and PyTorch
Simplify Data Conversion from Spark to TensorFlow and PyTorch
Databricks1.8K views
Scaling your Data Pipelines with Apache Spark on Kubernetes by Databricks
Scaling your Data Pipelines with Apache Spark on KubernetesScaling your Data Pipelines with Apache Spark on Kubernetes
Scaling your Data Pipelines with Apache Spark on Kubernetes
Databricks2.1K views
Scaling and Unifying SciKit Learn and Apache Spark Pipelines by Databricks
Scaling and Unifying SciKit Learn and Apache Spark PipelinesScaling and Unifying SciKit Learn and Apache Spark Pipelines
Scaling and Unifying SciKit Learn and Apache Spark Pipelines
Databricks667 views
Sawtooth Windows for Feature Aggregations by Databricks
Sawtooth Windows for Feature AggregationsSawtooth Windows for Feature Aggregations
Sawtooth Windows for Feature Aggregations
Databricks605 views
Redis + Apache Spark = Swiss Army Knife Meets Kitchen Sink by Databricks
Redis + Apache Spark = Swiss Army Knife Meets Kitchen SinkRedis + Apache Spark = Swiss Army Knife Meets Kitchen Sink
Redis + Apache Spark = Swiss Army Knife Meets Kitchen Sink
Databricks675 views
Re-imagine Data Monitoring with whylogs and Spark by Databricks
Re-imagine Data Monitoring with whylogs and SparkRe-imagine Data Monitoring with whylogs and Spark
Re-imagine Data Monitoring with whylogs and Spark
Databricks550 views
Processing Large Datasets for ADAS Applications using Apache Spark by Databricks
Processing Large Datasets for ADAS Applications using Apache SparkProcessing Large Datasets for ADAS Applications using Apache Spark
Processing Large Datasets for ADAS Applications using Apache Spark
Databricks513 views
Massive Data Processing in Adobe Using Delta Lake by Databricks
Massive Data Processing in Adobe Using Delta LakeMassive Data Processing in Adobe Using Delta Lake
Massive Data Processing in Adobe Using Delta Lake
Databricks719 views
Machine Learning CI/CD for Email Attack Detection by Databricks
Machine Learning CI/CD for Email Attack DetectionMachine Learning CI/CD for Email Attack Detection
Machine Learning CI/CD for Email Attack Detection
Databricks389 views
Jeeves Grows Up: An AI Chatbot for Performance and Quality by Databricks
Jeeves Grows Up: An AI Chatbot for Performance and QualityJeeves Grows Up: An AI Chatbot for Performance and Quality
Jeeves Grows Up: An AI Chatbot for Performance and Quality
Databricks260 views

Recently uploaded

MOSORE_BRESCIA by
MOSORE_BRESCIAMOSORE_BRESCIA
MOSORE_BRESCIAFederico Karagulian
5 views8 slides
Cross-network in Google Analytics 4.pdf by
Cross-network in Google Analytics 4.pdfCross-network in Google Analytics 4.pdf
Cross-network in Google Analytics 4.pdfGA4 Tutorials
6 views7 slides
RIO GRANDE SUPPLY COMPANY INC, JAYSON.docx by
RIO GRANDE SUPPLY COMPANY INC, JAYSON.docxRIO GRANDE SUPPLY COMPANY INC, JAYSON.docx
RIO GRANDE SUPPLY COMPANY INC, JAYSON.docxJaysonGarabilesEspej
6 views3 slides
UNEP FI CRS Climate Risk Results.pptx by
UNEP FI CRS Climate Risk Results.pptxUNEP FI CRS Climate Risk Results.pptx
UNEP FI CRS Climate Risk Results.pptxpekka28
11 views51 slides
[DSC Europe 23] Aleksandar Tomcic - Adversarial Attacks by
[DSC Europe 23] Aleksandar Tomcic - Adversarial Attacks[DSC Europe 23] Aleksandar Tomcic - Adversarial Attacks
[DSC Europe 23] Aleksandar Tomcic - Adversarial AttacksDataScienceConferenc1
5 views20 slides
CRM stick or twist.pptx by
CRM stick or twist.pptxCRM stick or twist.pptx
CRM stick or twist.pptxinfo828217
10 views16 slides

Recently uploaded(20)

Cross-network in Google Analytics 4.pdf by GA4 Tutorials
Cross-network in Google Analytics 4.pdfCross-network in Google Analytics 4.pdf
Cross-network in Google Analytics 4.pdf
GA4 Tutorials6 views
UNEP FI CRS Climate Risk Results.pptx by pekka28
UNEP FI CRS Climate Risk Results.pptxUNEP FI CRS Climate Risk Results.pptx
UNEP FI CRS Climate Risk Results.pptx
pekka2811 views
CRM stick or twist.pptx by info828217
CRM stick or twist.pptxCRM stick or twist.pptx
CRM stick or twist.pptx
info82821710 views
Data Journeys Hard Talk workshop final.pptx by info828217
Data Journeys Hard Talk workshop final.pptxData Journeys Hard Talk workshop final.pptx
Data Journeys Hard Talk workshop final.pptx
info82821710 views
[DSC Europe 23] Milos Grubjesic Empowering Business with Pepsico s Advanced M... by DataScienceConferenc1
[DSC Europe 23] Milos Grubjesic Empowering Business with Pepsico s Advanced M...[DSC Europe 23] Milos Grubjesic Empowering Business with Pepsico s Advanced M...
[DSC Europe 23] Milos Grubjesic Empowering Business with Pepsico s Advanced M...
[DSC Europe 23] Stefan Mrsic_Goran Savic - Evolving Technology Excellence.pptx by DataScienceConferenc1
[DSC Europe 23] Stefan Mrsic_Goran Savic - Evolving Technology Excellence.pptx[DSC Europe 23] Stefan Mrsic_Goran Savic - Evolving Technology Excellence.pptx
[DSC Europe 23] Stefan Mrsic_Goran Savic - Evolving Technology Excellence.pptx
Survey on Factuality in LLM's.pptx by NeethaSherra1
Survey on Factuality in LLM's.pptxSurvey on Factuality in LLM's.pptx
Survey on Factuality in LLM's.pptx
NeethaSherra16 views
CRM stick or twist workshop by info828217
CRM stick or twist workshopCRM stick or twist workshop
CRM stick or twist workshop
info8282179 views
CRIJ4385_Death Penalty_F23.pptx by yvettemm100
CRIJ4385_Death Penalty_F23.pptxCRIJ4385_Death Penalty_F23.pptx
CRIJ4385_Death Penalty_F23.pptx
yvettemm1006 views
Organic Shopping in Google Analytics 4.pdf by GA4 Tutorials
Organic Shopping in Google Analytics 4.pdfOrganic Shopping in Google Analytics 4.pdf
Organic Shopping in Google Analytics 4.pdf
GA4 Tutorials14 views
Advanced_Recommendation_Systems_Presentation.pptx by neeharikasingh29
Advanced_Recommendation_Systems_Presentation.pptxAdvanced_Recommendation_Systems_Presentation.pptx
Advanced_Recommendation_Systems_Presentation.pptx
SUPER STORE SQL PROJECT.pptx by khan888620
SUPER STORE SQL PROJECT.pptxSUPER STORE SQL PROJECT.pptx
SUPER STORE SQL PROJECT.pptx
khan88862012 views
3196 The Case of The East River by ErickANDRADE90
3196 The Case of The East River3196 The Case of The East River
3196 The Case of The East River
ErickANDRADE9016 views
[DSC Europe 23] Spela Poklukar & Tea Brasanac - Retrieval Augmented Generation by DataScienceConferenc1
[DSC Europe 23] Spela Poklukar & Tea Brasanac - Retrieval Augmented Generation[DSC Europe 23] Spela Poklukar & Tea Brasanac - Retrieval Augmented Generation
[DSC Europe 23] Spela Poklukar & Tea Brasanac - Retrieval Augmented Generation
Data about the sector workshop by info828217
Data about the sector workshopData about the sector workshop
Data about the sector workshop
info82821712 views

Graph Features in Spark 3.0: Integrating Graph Querying and Algorithms in Spark Graph