You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-**ckn-mqtt-cameratraps**: MQTT-based camera trap ingestion plugin for edge event and image streaming. Enables scalable, decoupled data collection from edge devices. _(ICICLE)_
6
+
-**experiment-alerts**: Automated experiment monitoring and alerting plugin. Detects low-accuracy experiments and publishes alerts to Kafka for downstream workflows. _(ICICLE)_
7
+
-**ckn_inference_daemon**: Edge inference research plugin implementing FastAPI-based serving and model management. Intended for prototyping and experimentation. _(Research / Experimental)_
8
+
-**Documentation:**
9
+
- Added comprehensive documentation for new plugins and event topics (`docs/topics.md`), plugin usage, and deployment.
10
+
-**Database:**
11
+
- Introduced additional Neo4j indexes to improve query and analytics performance.
12
+
13
+
### Fixed
14
+
- Improved experiment completion detection and ensured robust accuracy reporting in monitoring and alerting workflows.
15
+
- Minor bug fixes, typo corrections, and formatting improvements throughout documentation and example configs.
Copy file name to clipboardExpand all lines: README.md
+24-98Lines changed: 24 additions & 98 deletions
Original file line number
Diff line number
Diff line change
@@ -20,20 +20,19 @@ CKN facilitates seamless connectivity between edge devices and the cloud through
20
20
21
21
CKN comprises several core components:
22
22
23
-
-**CKNDaemon** – A lightweight service that resides on each edge server. It manages communication with edge devices, handles requests, captures performance data, and deploys AI models as needed. The daemon connects with the cloud‑based CKN system via a pub/sub system, capturing real‑time events from edge devices (model usage, resource consumption, prediction accuracy, latency, and more).
23
+
-**CKNDaemon** – A lightweight service that resides on each edge server. It manages communication with edge devices, handles requests, captures performance data, and deploys AI models as needed. The daemon connects with the cloud‑based CKN system via a pub/sub system, capturing real‑time events from edge devices (model usage, resource consumption, prediction accuracy, latency, and more).
24
24
-**Event Streaming & Processing** – Stream‑processing techniques (for example, tumbling windows) aggregate events and generate real‑time alerts from edge‑device streams.
25
25
-**Knowledge Graph** – A Neo4j graph database that stores historical and provenance information about applications, models, and edge events. This comprehensive view of the system enables CKN to track model usage and analyse performance over time.
26
26
27
-
The primary objective of CKN is to provide a robust framework for optimising AI‑application deployment and resource allocation at the edge. Leveraging real‑time event streaming and knowledge graphs, CKN efficiently handles AI workloads, adapts to changing requirements, and supports scalable edge–cloud collaboration.
28
-
The CKN topics and their details are mentioned [here](https://github.com/Data-to-Insight-Center/cyberinfrastructure-knowledge-network/blob/main/docs/topics.md).
27
+
The primary objective of CKN is to provide a robust framework for optimising AI‑application deployment and resource allocation at the edge. Leveraging real‑time event streaming and knowledge graphs, CKN efficiently handles AI workloads, adapts to changing requirements, and supports scalable edge–cloud collaboration.
29
28
30
29
Refer to this paper for more information: [https://ieeexplore.ieee.org/document/10254827](https://ieeexplore.ieee.org/document/10254827).
31
30
32
31

33
32
34
33
---
35
34
36
-
## How‑ToGuide
35
+
## How‑ToGuide
37
36
38
37
See the full [documentation](https://cyberinfrastructure-knowledge-network.readthedocs.io/en/latest/) for detailed instructions on creating custom plug‑ins and streaming events to the knowledge graph.
39
38
@@ -69,38 +68,21 @@ docker compose ps
69
68
docker compose -f examples/docker-compose.yml up -d --build
70
69
```
71
70
72
-
- View the streamed data on the CKN dashboard: [http://localhost:8502/Camera\_Traps](http://localhost:8502/Camera_Traps)
docker compose -f examples/docker-compose.yml down
85
-
```
86
-
87
-
## Tutorial
88
-
89
-
### Step 1 | Set Up Your Environment
71
+
View the streamed data on the [CKN dashboard](http://localhost:8502/Camera_Traps) or open the [neo4j browser](http://localhost:7474/browser/) and log in with the credentials mentioned in the docker-compose file. Run `MATCH (n) RETURN n` to view the streamed data.
make up # launches Kafka, Neo4j, and supporting services
75
+
make down
76
+
docker compose -f examples/docker-compose.yml down
95
77
```
96
78
97
-
*Wait a few moments for all services to initialise.*
79
+
## Tutorial: Create a Custom CKN Plug-in
98
80
99
-
###Step 2 | Create a CKN Topic
81
+
#### 1. Create a CKN Topic
100
82
101
-
We will create a CKN topic named `temperature-sensor-data` to store temperature events.
83
+
We will create a CKN topic named `temperature-sensor-data` to store temperature events. The CKN topics and their details are mentioned [here](docs/topics.md).
102
84
103
-
**Update`docker-compose.yml`** (root directory) and add the topic to the broker environment:
85
+
Update`docker-compose.yml` (root directory) and add the topic to the broker environment:
104
86
105
87
```yaml
106
88
services:
@@ -117,30 +99,19 @@ make up
117
99
```
118
100
119
101
120
-
###Step 3 | Produce Events
102
+
#### 2. Produce Events
121
103
122
-
#### Install required libraries
123
-
124
-
```bash
125
-
python -m venv venv
126
-
source venv/bin/activate # or .\venv\Scripts\activate on Windows
MATCH (s:Sensor)-[:REPORTED]->(r:TemperatureReading)
241
-
RETURN s, r;
242
-
```
243
-
244
-
4.**Explore** the graph using Neo4j visual tools.
245
-
246
-
---
247
-
248
-
## Next Steps
249
-
250
-
You have successfully set up a temperature‑monitoring use case with **CKN**, **Kafka**, and **Neo4j**. Consider:
251
-
252
-
-**Adding more sensors** to simulate a larger network.
253
-
- Extending the cypher mapping to handle additional event attributes.
254
-
- Integrating alerting or dashboarding tools for real‑time monitoring.
179
+
Open [neo4j browser](http://localhost:7474/browser/) and log in with the credentials mentioned in the docker-compose file to view the streamed data.
180
+
You have successfully set up a temperature‑monitoring plugin with CKN!
255
181
256
182
---
257
183
@@ -261,4 +187,4 @@ The Cyberinfrastructure Knowledge Network (CKN) is copyrighted by the Indiana Un
261
187
262
188
## Acknowledgements
263
189
264
-
This research is funded in part by the National Science Foundation (award#2112606 – *AIInstitute for Intelligent CyberInfrastructure with Computational Learning in the Environment*\[ICICLE]) and by the *Data to Insight Center* (D2I) at Indiana University.
190
+
This research is funded in part by the National Science Foundation (award#2112606 – *AIInstitute for Intelligent CyberInfrastructure with Computational Learning in the Environment*\[ICICLE]) and by the *Data to Insight Center* (D2I) at Indiana University.
0 commit comments