Skip to content
Snippets Groups Projects
Commit 28b84cc1 authored by Martin Weise's avatar Martin Weise
Browse files

Merge branch 'dev'

parents 9ae0869b 7ecb3214
Branches
Tags
No related merge requests found
...@@ -2,6 +2,56 @@ ...@@ -2,6 +2,56 @@
author: Martin Weise author: Martin Weise
--- ---
## tbd ## Data Versioning
tbd Data is getting bigger and so are expectations of data provisioning in regards to data availability (i.e. immediately
after quality check and not in snapshot intervals), cost-effectiveness (i.e. no duplication of data), transparent,
precise citation and many more.
[System-versioned](https://mariadb.com/kb/en/system-versioned-tables/) tables in MariaDB are improved data structures
that keep track of historical data. For each entry in a system-versioned table, a time period is maintained that denotes
the validity time span of this tuple from its start to end. Tuples in system-versioned tables are not *actually*
modified, they are marked as (in-)valid in time periods.
<figure markdown>
| ID | Sensor | Temp | Start | End |
|----|--------|------|-------|-----|
| 1 | A | 23.1 | t1 | |
| 2 | B | 25.8 | t2 | |
</figure>
Assuming that Sensor A was calibrated wrong and an updated measurement is passed to the system-versioned table, the
table contents show that the old row with Temp 23.1 is not deleted, but marked as valid in time span (t1, t3). The
updated row with Temp 22.1 is marked as valid from time span t3 onwards.
<figure markdown>
| ID | Sensor | Temp | Start | End |
|----|--------|------|-------|-----|
| 1 | A | 23.1 | t1 | t3 |
| 2 | B | 25.8 | t2 | |
| 1 | A | 22.1 | t3 | |
</figure>
System-versioned tables are part of the SQL:2011 standard and have been adopted by many database management system
vendors: MariaDB (10.5 and higher), Google BigQuery, IBM DB2 (12 and higher), SQL Server (2016 and higher), Azure SQL,
PostgreSQL with [temporal tables extension](https://github.com/nearform/temporal_tables), etc.
## Persistent Identifier
Data in DBRepo always has attached metadata (stored in the [Metadata Database](../../api/metadata-db)). This metadata
is provided as machine-understandable context in various open-source formats that is available, even when the original
data is not available anymore due to e.g. a retracted dataset (hence the name **persistent**). A persistent identifier
globally, uniquely identifies a data record such as:
* Database,
* Table whose data is continously changed in the background (nature of databases),
* View who show a denomination, joined schema or aggregated result of tables,
* Subset which precisely identifies a data record to reproduce the same dataset.
Combining [data versioning](#data-versioning) and queries, subsets can be precisely identified by storing the query
that creates them and the time when the query was executed. We store both in a table inside the database we call the
query store.
\ No newline at end of file
...@@ -2,22 +2,16 @@ ...@@ -2,22 +2,16 @@
author: Martin Weise author: Martin Weise
--- ---
## Index
tbd
## Document ## Document
TBD Each database in DBRepo has their own document where the document id (the identifier of a database in OpenSearch) is
equivalent to the database id (the identifier of a database in the [Metadata Database](../../api/metadata-db)).
## Query
## Unit Independent Search ## Unit Independent Search
Since the repository automatically collects statistical properties (min, max, mean, median, std.dev) in both the Since the repository automatically collects statistical properties (min, max, mean, median, std.dev) in both the
[Metadata Database](../system-databases-metadata) and the [Search Database](../system-databases-search), a special [Metadata Database](../../api/metadata-db) and the Search Database, a special search can be performed when at least two
search can be performed when at least two columns have the same semantic concept (e.g. temperature) annotated and columns have the same semantic concept (e.g. temperature) annotated and the units of measurements can be transformed.
the units of measurements can be transformed.
<figure markdown> <figure markdown>
![Two tables with compatible semantic concepts (Temperature) and units of measurement (left is in degree Celsius, right is in degree Fahrenheit)](../images/statistics-example.png) ![Two tables with compatible semantic concepts (Temperature) and units of measurement (left is in degree Celsius, right is in degree Fahrenheit)](../images/statistics-example.png)
......
---
author: Martin Weise
---
## S3
TBD
## Sidecar
TBD
## Upload
TBD
\ No newline at end of file
---
author: Martin Weise
---
TBD
\ No newline at end of file
...@@ -371,6 +371,7 @@ release-helm: ...@@ -371,6 +371,7 @@ release-helm:
only: only:
refs: refs:
- /^release-.*/ - /^release-.*/
when: manual
except: except:
refs: refs:
- release-latest - release-latest
......
...@@ -14,7 +14,7 @@ If you have [Docker](https://docs.docker.com/engine/install/) already installed ...@@ -14,7 +14,7 @@ If you have [Docker](https://docs.docker.com/engine/install/) already installed
with: with:
```bash ```bash
curl -sSL https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/-/raw/release-1.4.4/install.sh | bash curl -sSL https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/-/raw/release-1.4.5/install.sh | bash
``` ```
## Documentation ## Documentation
......
...@@ -12,7 +12,6 @@ nav: ...@@ -12,7 +12,6 @@ nav:
- Help with DBRepo: help.md - Help with DBRepo: help.md
- Installation: installation.md - Installation: installation.md
- Kubernetes: kubernetes.md - Kubernetes: kubernetes.md
- Migration Guide: migration.md
- contributing.md - contributing.md
- Concepts: - Concepts:
- Overview: concepts/index.md - Overview: concepts/index.md
...@@ -22,7 +21,6 @@ nav: ...@@ -22,7 +21,6 @@ nav:
- Monitoring: concepts/monitoring.md - Monitoring: concepts/monitoring.md
- Persistent Identifier: concepts/pid.md - Persistent Identifier: concepts/pid.md
- Search: concepts/search.md - Search: concepts/search.md
- Storage: concepts/storage.md
- User Interface: concepts/ui.md - User Interface: concepts/ui.md
- API: - API:
- Overview: api/index.md - Overview: api/index.md
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment