aboutsummaryrefslogtreecommitdiffstats
path: root/docs/iterator-pipeline.puml
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--docs/iterator-pipeline.puml45
1 files changed, 0 insertions, 45 deletions
diff --git a/docs/iterator-pipeline.puml b/docs/iterator-pipeline.puml
deleted file mode 100644
index 810ef63..0000000
--- a/docs/iterator-pipeline.puml
+++ /dev/null
@@ -1,45 +0,0 @@
-@startuml iterator-pipeline
-!theme plain
-title Volcano Iterator Model - Process Pipeline
-
-component "Scan Iterator\n(Process)" as P1 {
- [Read from Relation] as S1
-}
-
-component "Select Iterator\n(Process)" as P2 {
- [Apply Predicate] as S2
-}
-
-component "Project Iterator\n(Process)" as P3 {
- [Filter Attributes] as S3
-}
-
-component "Sort Iterator\n(Process)" as P4 {
- [Sort All Tuples] as S4
-}
-
-component "Take Iterator\n(Process)" as P5 {
- [Limit N Tuples] as S5
-}
-
-P1 -right-> P2: {next, Pid}\n{tuple, T} | done
-P2 -right-> P3: {next, Pid}\n{tuple, T} | done
-P3 -right-> P4: {next, Pid}\n{tuple, T} | done
-P4 -right-> P5: {next, Pid}\n{tuple, T} | done
-
-note bottom of P1
- Each iterator is an
- independent Erlang process
-
- Message passing protocol:
- - Request: {next, CallerPid}
- - Response: {tuple, Data} | done
-
- Benefits:
- - Lazy evaluation
- - Memory-bounded
- - Composable
- - Concurrent
-end note
-
-@enduml