Skip to content

Commit 869a0a2

Browse files
committed
Merge branch 'main' into feature/graphInsightsDocu-CMEM-7120
2 parents 541b779 + 3df3d1b commit 869a0a2

File tree

15 files changed

+689
-71
lines changed

15 files changed

+689
-71
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@ tmp
88
.DS_Store
99
.vscode/
1010
.python-version
11+

docs/build/mapping-creator/index.md

Lines changed: 30 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -7,60 +7,66 @@ tags:
77
---
88
# Mapping Creator
99

10-
## Configuration
10+
## Configuration Info
11+
12+
A specific configuration is require to activate this feature.
13+
Furthermore, for best experience an LLM provider configuration is also needed.
14+
See the link in the info box for details.
1115

1216
!!! info "Configuration"
1317

1418
See [Mapping Creator and LLM Configuration](../../deploy-and-configure/configuration/dataintegration/index.md#mapping-creator-and-llm-configuration) to learn how to enable and configure this feature.
1519

16-
The Mapping Creator need to configured in order to be activated and used.
17-
Furthermore, for best experience it requires an LLM provider configuration, see the link in the info box for the details.
18-
1920
## Usage
2021

22+
The Mapping Creator is a feature of BUILD transformation tasks (_BUILD_> _Project_> (_Workflow_>) _Transformation_> _Mapping Creator_).
23+
2124
!!! question "Help"
2225

2326
![Help](mapping-creator-help.png){ class="bordered" width="20%" align=right padding=40 }
2427

2528
Access help and a feature tour via the help menu :eccenca-item-question:.
2629

27-
**TODO:** describe how to get there in the first place!!! BUILD > Project > [ Workflow > ] Transformation > Mapping Creator
28-
2930
Use the Mapping Creator to connect your data to semantic models.
30-
Using visual tools, drag-and-drop, and suggestions, you’ll create mappings between your source data and knowledge graph classes as well as their properties.
31+
Using visual tools, drag-and-drop, and suggestions, you are able to create mappings between your source data and knowledge graph classes as well as their properties.
3132

3233
![Mapping Creator](mapping-creator.png){ class="bordered" }
3334

34-
The Mapping Creator is split into three parts:
35-
36-
- The left sidebar shows the source schema
37-
- The right sidebar shows the target schema
38-
- Mappings between elements in the source schema and elements in the target schema.
35+
The Mapping Creator consists of three parts:
3936

40-
**TODO**: rename _sidebar_ and describe the actual _sidebars_ properly (left: schema information, right: see below (Edit saved mapping rule))
37+
- Source schema shown on the left side
38+
- Target Schema shown on the right side
39+
- Mappings between elements in the source schema and in the target schema
4140

4241
You can move, connect or disconnect, and inspect each element visually.
4342

43+
<!--
44+
**TODO**: Clicking on an element in the source schema opens a detail view showing more schema information and describe the actual _sidebars_ properly (left: schema information, right: see below (Edit saved mapping rule)) **TODO**:@rpietzsch please add Details...
45+
-->
46+
4447
### Color Legend
4548

49+
Each color and visual element used in the Mapping Creator has a specific meaning as shown in the screenshot below.
50+
4651
**TODO:** show the color legend here, too
4752

48-
<figure markdown="span">
49-
![Color Legend](mapping-creator-color-legend.png){ class="bordered" }
50-
<figcaption>Color Legend Image Caption</figcaption>
51-
</figure>
53+
![Color Legend](mapping-creator-color-legend.png){ class="bordered" }
5254

5355
### Manual creation
5456

55-
Every mapping begins by selecting or creating a target class.
56-
This defines where your data will be be mapped in the knowledge graph.
57+
To start a mapping you need to select or define a target class first.
58+
The target class defines where your data will be be mapped in the knowledge graph.
5759

5860
#### Add properties
5961

6062
![Resource edit actions](mapping-creator-edit-actions.png){ class="bordered" width="40%" }
6163

6264
To complete a mapping properties need to be added to complete your desired target schema (i.e. the graph fragment that your transformation shall yield).
63-
The following two options exist to add properties.
65+
66+
There are two options to add properties:
67+
68+
- during class selection
69+
- from vocabularies
6470

6571
##### During class selection
6672

@@ -74,7 +80,7 @@ In the _add target class_ dialog you may select different kind of properties:
7480

7581
The property preview helps to confirm your choice.
7682

77-
##### By adding a property from your vocabularies
83+
##### From vocabularies
7884

7985
![Adding a property from your vocabulary](mapping-creator-property-selection.png){ class="bordered" width="80%" }
8086

@@ -96,15 +102,15 @@ Click on an already saved target element to show more details.
96102
With the :eccenca-item-edit: Pencil icon you can edit the mapping rule and rename elements, or adjust configurations.
97103
Advanced users can refine transformation logic here.
98104

99-
### Smart suggestions
105+
### Smart suggestions with AI support
100106

101107
!!! info
102108
Note that this feature is only available if a Large Language Model is configured.
103109

104110
Click the :eccenca-application-ai-suggestion: Magic Wand to automatically generate mapping suggestions based on your data and the selected class.
105111
Accept (:octicons-thumbsup-16:) or reject (:octicons-thumbsdown-16:) each suggestion as needed.
106112

107-
#### Class Suggestions
113+
#### Class suggestions
108114

109115
![Smart Class Suggestions](mapping-creator-class-suggestion.png){ class="bordered" }
110116

@@ -113,7 +119,7 @@ Alternatively, you can search for classes manually by typing text into the searc
113119

114120
Hover over the wand icon for each suggestion to understand why this class has been recommended.
115121

116-
#### Property Suggestions
122+
#### Property suggestions
117123

118124
Property suggestions are generated that map your source data to elements of the selected target vocabularies.
119125
You can accept (:octicons-thumbsup-16:) or reject (:octicons-thumbsdown-16:) each suggestion.

docs/deploy-and-configure/configuration/dataintegration/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1033,7 +1033,7 @@ Enable (or disable) the new visual [Mapping Create UI](../../../build/mapping-cr
10331033
com.eccenca.di.mappingCreatorEnabled = true
10341034
```
10351035

1036-
The [Mapping Creator can optionally use LLM](../../../build/mapping-creator/index.md#smart-suggestions) to automatically generate class and property mappings.
1036+
The [Mapping Creator can optionally use LLM](../../../build/mapping-creator/index.md#smart-suggestions-with-ai-support) to automatically generate class and property mappings.
10371037
Use the following configuration section as a blueprint to set up your OpenAI-compatible endpoint, providing:
10381038

10391039
- the API key,

docs/deploy-and-configure/installation/.pages

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,6 @@ nav:
22
- Installation: index.md
33
- "Scenario: Single Node Cloud Installation": scenario-single-node-cloud-installation
44
- "Scenario: Local Installation": scenario-local-installation
5+
- "Scenario: Kubernetes Deployment": scenario-k8s-deployment
56
- Migrating Stores: migrating-stores
67

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# Default values for cmem.
2+
nameOverride: ""
3+
4+
ingress:
5+
enabled: true
6+
className: nginx
7+
annotations:
8+
#kubernetes.io/tls-acme: "true"
9+
cert-manager.io/cluster-issuer: OVERRIDDEN_BY_TASKFILE
10+
11+
hosts:
12+
- host: "OVERRIDDEN_BY_TASKFILE"
13+
paths:
14+
- path: /
15+
pathType: Prefix
16+
serviceName: explore
17+
servicePort: 8080
18+
- path: /dataintegration
19+
pathType: Prefix
20+
serviceName: dataintegration
21+
servicePort: 8080
22+
tls:
23+
- hosts:
24+
- "OVERRIDDEN_BY_TASKFILE"
25+
secretName: cmem-ingress-cert
26+
27+
global:
28+
# The OAuth client that will be used to load the workspace initially and run the schedulers.
29+
# In order to enable that feature, you have to enable the service account feature in the Keycloak
30+
# OIDC client "cmem-service-client". Furthermore, an AccessCondition that maps with `eccauth:requiresClient :cmem-service-account`
31+
# is required.
32+
33+
protocol: "https"
34+
cmemClientId: cmem-service-account
35+
cmemClientSecret: c8c12828-000c-467b-9b6d-2d6b5e16df4a
36+
hostname: "OVERRIDDEN_BY_TASKFILE"
37+
# This is the base keycloak realm url, e.g. https://cmem.example.com/auth/realms/cmem
38+
# license: cmem-license
39+
disablePythonInstallFromOutside: false
40+
41+
bootstrap:
42+
enabled: true
43+
44+
explore:
45+
config:
46+
# disabeld by default
47+
# create Objects of kind Pod- or SeviceMonitor see
48+
# https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/developer/getting-started.md#deploying-a-sample-application
49+
serviceMonitorEnabaled: false
50+
podMonitorEnabled: true
51+
store:
52+
graphdb:
53+
enabled: true
54+
repository: cmem
55+
user: provisioner
56+
password: "iHaveSuperpowers"
57+
# With Dataplatform 22.2, we have a "host" property
58+
host: "graphdb.graphdb"
59+
sslEnabled: false
60+
createRepoOnStartup: true
61+
changeTrackingActive: true
62+
changeTrackingMaxQuadsMem: 1000
63+
64+
dataintegration:
65+
config:
66+
# pwgen 16 1
67+
passwordCryptKey: "Peek1uh1Ui8viequ"
68+
# pwgen 40 1
69+
playHTTPSecret: "waejai5aiMoShuvahcai3iaC3eefeichahYaemac"
70+
persistence:
71+
storageClassName: local-path
72+
tmp:
73+
storageClassName: local-path
74+
initContainer:
75+
pythonPluginImageInstall:
76+
enabled: true
77+
automountServiceAccountToken: true
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
---
2+
3+
# We use a separate, simpler ingress definition
4+
ingress:
5+
enabled: false
6+
7+
license:
8+
# Reference to a secret containing 'graphdb.license' file that will be mounted in the GraphDB pod.
9+
# The value is processed as a Helm template.
10+
existingSecret: "graphdb-license"
11+
# File name of the GraphDB license file in the existing license secret.
12+
# The default is graphdb.license, but it can be changed to map to a different secret key.
13+
licenseFilename: graphdb.license
14+
15+
resources:
16+
limits:
17+
memory: 4Gi
18+
cpu: 2000m
19+
requests:
20+
memory: 4Gi
21+
cpu: 500m
22+
23+
security:
24+
enabled: true
25+
provisioningUsername: provisioner
26+
# bcrypt encrypted password. default: iHaveSuperpowers
27+
provisioningPassword: iHaveSuperpowers
28+
29+
persistence:
30+
enabled: true
31+
volumeClaimTemplate:
32+
name: "storage"
33+
spec:
34+
accessModes: [ "ReadWriteOnce" ]
35+
resources:
36+
requests:
37+
storage: 5Gi
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
---
2+
postgres:
3+
internal: true
4+
provisioning:
5+
enabled: true
6+
# If true, this will drop the public schema and re-provision the database on every start.
7+
force: true
8+
9+
ingress:
10+
enabled: true
11+
className: nginx
12+
annotations:
13+
cert-manager.io/common-name: "kc.docker.localhost"
14+
hosts:
15+
- host: "kc.docker.localhost"
16+
paths:
17+
- path: /auth
18+
pathType: Prefix
19+
serviceName: keycloak
20+
servicePort: 8080
21+
tls:
22+
- hosts:
23+
- "kc.docker.localhost"
24+
secretName: keycloak-ingress-cert
25+
26+
tests:
27+
# Change this to your ingress controller IP in case you are using
28+
# kind/docker-desktop/k3d with host.docker.internal or docker.localhost
29+
ingressControllerIP: "10.43.82.133"

docs/deploy-and-configure/installation/scenario-k8s-deployment/images/cmem-helm-architecture.svg

Lines changed: 2 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)