This is an automated email from the ASF dual-hosted git repository.
egonzalez pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-kogito-apps.git
The following commit(s) were added to refs/heads/main by this push:
new 399fe8dd4 [incubator-kie-issues-974] Document data index in compact
architecture (#2002)
399fe8dd4 is described below
commit 399fe8dd454c0cc9789e0c39175fff9e7b5c4a88
Author: Enrique <[email protected]>
AuthorDate: Thu Mar 7 10:07:25 2024 +0100
[incubator-kie-issues-974] Document data index in compact architecture
(#2002)
* [incubator-kie-issues-974] Document data index in compact architecture
* fix
---
data-index/README.md | 94 +++++++++++++++++++++++++++++++++++++++--
data-index/docs/data-index.png | Bin 0 -> 13357 bytes
2 files changed, 91 insertions(+), 3 deletions(-)
diff --git a/data-index/README.md b/data-index/README.md
index 3e4e7521a..e555ede1a 100644
--- a/data-index/README.md
+++ b/data-index/README.md
@@ -1,4 +1,92 @@
-## Kogito Data Index Service
+# Kogito Data Index Service
+
+Data Index is a subsystem/component responsible to store a snapshot of the
last state of the process instance state.
+
+The system supports two different types of deployment:
+* Compact Architecture: as component deployed within the application
+* Distributed Architecture: as component deployed independently as service
+
+Due to the nature of the system it support different types of storage
+
+* postgresql
+* infinispan
+* mongodb
+* jpa
+
+At present for compact configuration it only support quarkus runtime. For
distributed supports both runtimes quarkus and springboot.
+
+
+## Compact architecture
+
+The next dependency is added for quarkus and being able to use in-vm transport
tier.
+The same dependency is used to specify the storage of the data index and the
transport tier at the same time.
+
+
+
+ <dependency>
+ <groupId>org.kie</groupId>
+
<artifactId>kogito-addons-quarkus-data-index-persistence-postgresql</artifactId>
+ </dependency>
+
+
+
+As this dependency will include the storage as well and the in-vm transport.
+
+
+
+ <dependency>
+ <groupId>org.kie</groupId>
+
<artifactId>kogito-addons-quarkus-data-index-persistence-<storage></artifactId>
+ </dependency>
+
+
+where storage can be:
+* infinispan
+* mongodb
+* postgresql
+
+Current system
+
+
+
+
+The concepts to understand the above picture are:
+* Transport: the medium used to transfer events between the runtime and the
data index service. The transport is http in distributed environments, or in-vm
for compact architecture.
+* Storage: the persistence tier of the data index component.
+* Data index: the main component responsible for creating/updating the data
index, and for providing query capabilities.
+
+
+## Querying
+
+Data index support queries through graphQL (basic.schema.graphqls). For using
the endpoint you just need to explore in your deployment the URI:
+
+http://localhost:8080/<root path>/graphql-ui/
+
+to start working with the queries defined by the schema aforementioned.
+
+## Distributed deployment
+
+For distributed you need to specify and addons you will need to deploy the
data index as service and include the event publisher
+
+
+
+ <dependency>
+ <groupId>org.kie.kogito</groupId>
+ <artifactId>kogito-addons-springboot-events-process-kafka</artifactId>
+ </dependency>
+
+
+
+or for quarkus
+
+
+ <dependency>
+ <groupId>org.kie.kogito</groupId>
+ <artifactId>kogito-addons-quarkus-events-process-kafka</artifactId>
+ </dependency>
+
+
+
+More information about the Data Index images in here:
+[https://github.com/apache/incubator-kie-kogito-images?tab=readme-ov-file#kogito-data-index-component-images](https://github.com/apache/incubator-kie-kogito-images?tab=readme-ov-file#kogito-data-index-component-images)
-Documentation:
-https://github.com/kiegroup/kogito-runtimes/wiki/Data-Index-Service
diff --git a/data-index/docs/data-index.png b/data-index/docs/data-index.png
new file mode 100644
index 000000000..8619654c5
Binary files /dev/null and b/data-index/docs/data-index.png differ
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]