Skip to content

Commit 1f73cb1

Browse files
Update README.md
1 parent 37eb006 commit 1f73cb1

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

README.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,28 @@ CocoIndex is ultra performant data transformation framework, core engine written
2525

2626
The philosophy is to have the framework handle the source updates, and having developers only focus on defining a series of data transformation, inspired by spreadsheet.
2727

28+
## Data Flow programming
29+
CocoIndex follows [Data flow](https://en.wikipedia.org/wiki/Dataflow_programming) programming model. Compare with traditional orchestration framework, where data is opaque. In CocoIndex data and data operation are first class citizen, and there's no side effects for each data operation. All data are observable in each transformation, with lineage out of the box.
30+
31+
Particularly, user don't define data operations like creation, update, deletion. But rather, they define something like - for a set of source data, this is the transformation or formula. The framework takes care of the data operations like when to create, update, or delete. For example:
32+
33+
```python
34+
// ingest
35+
data['content'] = flow_builder.add_source(...)
36+
37+
// transform
38+
data['out'] = data['content']
39+
.transform(...)
40+
.transform(...)
41+
42+
// collect data
43+
collector.collect(...)
44+
45+
// export to db, vector db, graph db ...
46+
collector.export(...)
47+
```
48+
49+
2850

2951
## Quick Start:
3052
If you're new to CocoIndex 🤗, we recommend checking out the 📖 [Documentation](https://cocoindex.io/docs) and ⚡ [Quick Start Guide](https://cocoindex.io/docs/getting_started/quickstart). We also have a ▶️ [quick start video tutorial](https://youtu.be/gv5R8nOXsWU?si=9ioeKYkMEnYevTXT) for you to jump start.

0 commit comments

Comments
 (0)