Table of Content
- About GraphFrames
- About
- What are GraphFrames?
- Use-cases of GraphFrames
- Downloading
- Applications, the Apache Spark shell, and clusters
- Where to Go from Here
- Internals
- Overview
- Graph Representation
- Vertex-centric Algorithms
- Benchmarks
- Graphalytics Benchmarks
- Quick Start
- Installation
- Maven Central Coordinates
- Spark Versions Compatibility
- Spark 3.x
- Spark 4.x
- Spark Connect Server Extension
- GraphFrames runtime dependencies
- Building GraphFrames from Source
- Nightly Builds
- Quick-Start
- Python API
- Scala API
- Graph Algorithms
- Tutorials
- GraphFrames Tutorials
- Other Resources
- Stack Exchange Data Setup
- What We're Building
- Prerequisites
- Installing GraphFrames
- Download the Stack Exchange Archive
- Convert XML to Parquet
- Load the Graph
- Next Steps
- Motif Tutorial
- What are graphlets and network motifs?
- Data Setup
- Motif Finding
- Conclusion
- Pregel Tutorial
- Prerequisites
- What is Pregel?
- Data Setup
- Example 1: Degree Centrality with AggregateMessages
- Example 2: Degree Centrality with Pregel
- Example 3: PageRank with Pregel
- Example 4: Connected Components with Pregel
- Example 5: Shortest Paths with Pregel
- Example 6: Reputation Propagation
- Designing Your Own Pregel Algorithm
- Example 7: Debug Trace — Understanding Pregel's Mechanics
- Advanced Topics
- Conclusion
- Neo4j Integration Tutorial
- Why Integrate Neo4j with GraphFrames?
- Prerequisites
- Architecture Overview
- Step 1: Set Up Neo4j with Docker
- Step 2: Download the Stack Exchange Data
- Step 3: Load Stack Exchange in Neo4j
- Step 4: Import the Graph from Neo4j in Spark / GraphFrames
- Step 5: Write the Results Back to Neo4j
- Step 6: Cleanup!
- Troubleshooting
- Next Steps
- User Guide
- Creating GraphFrames
- Python API
- Scala API
- Basic Graph Operations
- Basics
- Filtering edges or vertices
- Centrality Metrics
- Degrees
- PageRank
- K-Core
- Approximate Neighbor Functions
- Motif finding
- Performance
- Python API
- Scala API
- Examples
- Traversals and Connectivity
- Shortest paths
- All paths
- Breadth-first search (BFS)
- Connected components
- Triangle count
- Cycles Detection
- Aggregate Neighbors
- Community Detection
- Label Propagation (LPA)
- Neighborhood-Aware CDLP
- Power Iteration Clustering (PIC)
- Maximal Independent Set
- Subgraphs
- Simple subgraph
- Complex subgraph: triplet filters
- Property Graphs
- Graph Machine Learning
- GraphFrames Approach to Graph ML
- Vertex Representation Learning
- References
- Saving and loading
- Python API
- Scala API
- Message passing
- Python API
- Scala API
- Pregel API
- API
- Arguments
- Property Graphs
- Overview
- Property Graphs in GraphFrames
- GraphX conversions
- GraphFrame to GraphX
- GraphX to GraphFrame
- Example conversions
- Configurations
- Configuration Table
- Setting Configurations
- Example: Connected Components with Custom Configurations
- Notes on Configuration Usage
- Reserved Columns
- Algorithm Specific Columns
- GraphFrames Blog
- Blog
- All posts:
- GraphFrames 0.12.0 release
- New Contributors
- New Community Detection Algorithm
- New all paths API
- Approximate Neighbor Functions
- Performance optimizations in Connected Components
- Important note
- Future steps
- GraphFrames 0.11.0 release
- Connected Components: new algorithm
- Pregel: automatic join skipping
- Graph embeddings & random walks
- PySpark Property Graph API
- Other new features
- Future work
- GraphFrames 0.10.0 release
- New Contributors
- Performance
- PySpark APIs
- Motifs finding
- Typed Degrees
- Cycles detection
- K-Core
- Maximal Independent Set
- Compatibility with Scala 3
- LLMS.txt
- Future steps
- GraphFrames 0.9.3 release
- The brand-new website and documentation
- The new Property Graph Model
- Local checkpoints in DataFrame-based Pregel and Connected Components
- Bug fixes in DataFrame-based LabelPropagation
- Benchmarks for GraphFrames
- Compatibility with Scala 3
- Future steps
- GraphFrames is back!
- GraphFrames is BACK!
- New Features in GraphFrames 0.9.2
- State of the Union
- Property Graphs
- Inclusion in Spark
- GraphX is Deprecated
- The Sedona Alliance!
- New Contributors
- A Call for Help
- Contributing
- Contributing Guide
- 1. Prerequisites
- 2. Clone the repository
- 3. Scala / JVM workflow
- 4. Python workflow
- 5. Pre-commit hooks
- 6. Making and testing changes
- 7. Update documentation
- 8. Quick reference
- GraphFrames community