diff --git a/documentations/conf.py b/documentations/conf.py index e6c35f9..b457357 100644 --- a/documentations/conf.py +++ b/documentations/conf.py @@ -95,6 +95,8 @@ intersphinx_mapping: Final[dict[str, tuple[str, None]]] = { "sqlalchemy": ("https://docs.sqlalchemy.org/en/14", None), } +myst_enable_extensions: Final[list[str]] = ["html_image"] + notfound_urls_prefix = "/" myst_enable_extensions = ["dollarmath", "amsmath"] diff --git a/documentations/meeting-notes/Meeting_2023-05-04.md b/documentations/meeting-notes/Meeting_2023-05-04.md index 0be8438..31b57e2 100644 --- a/documentations/meeting-notes/Meeting_2023-05-04.md +++ b/documentations/meeting-notes/Meeting_2023-05-04.md @@ -56,4 +56,4 @@ Sonstiges: ## Aktueller Projektstand - + diff --git a/documentations/seminararbeiten/Datenspeicherung/00_Datenspeicherung.md b/documentations/seminararbeiten/Datenspeicherung/00_Datenspeicherung.md index 081f423..59296e5 100644 --- a/documentations/seminararbeiten/Datenspeicherung/00_Datenspeicherung.md +++ b/documentations/seminararbeiten/Datenspeicherung/00_Datenspeicherung.md @@ -7,38 +7,38 @@ ## Inhaltsverzeichnis - [Datenspeicherung](#datenspeicherung) - - [Inhaltsverzeichnis](#inhaltsverzeichnis) - - [Motivation: Warum speichern wird Daten?](#motivation-warum-speichern-wird-daten) - - [1. Allgemeine Anforderungen an Datenbank](#1-allgemeine-anforderungen-an-datenbank) - - [2. Datenarten](#2-datenarten) - - [2.1 Welche Daten erwarten wir im Projekt?](#21-welche-daten-erwarten-wir-im-projekt) - - [2.2 strukturierte Daten](#22-strukturierte-daten) - - [2.3 unstrukturierte Daten](#23-unstrukturierte-daten) - - [3. Arten von Datenbanken](#3-arten-von-datenbanken) - - [3.1 Relationale Datenbank](#31-relationale-datenbank) - - [3.1.1 Anlegen von Tabellen](#311-anlegen-von-tabellen) - - [3.1.2 SQL - Abfrage von relationalen Datenbanken](#312-sql---abfrage-von-relationalen-datenbanken) - - [3.2 Graphdatenbank](#32-graphdatenbank) - - [3.2.1 Erstellung eines Datensatzes](#321-erstellung-eines-datensatzes) - - [3.2.2 Cypher - Abfrage von Graphdatenbanken](#322-cypher---abfrage-von-graphdatenbanken) - - [3.3 Zeitseriendatenbank](#33-zeitseriendatenbank) - - [3.3.1 Erstellung eines Datensatzes](#331-erstellung-eines-datensatzes) - - [3.3.2 FluxQuery](#332-fluxquery) - - [3.4 Dokumenten Datenbank ](#34-dokumenten-datenbank-) - - [3.4.1 Erstellen einer Collection / Ablegen von Dokumenten](#341-erstellen-einer-collection--ablegen-von-dokumenten) - - [3.5 Aufbau einer Datenbank](#35-aufbau-einer-datenbank) - - [4. Datenbanken Transparenzregister](#4-datenbanken-transparenzregister) - - [4.1 Production DB - relationales Datenbankmodell](#41-production-db---relationales-datenbankmodell) - - [4.2 Staging DB](#42-staging-db) - - [4.3 SQL Alchemy](#43-sql-alchemy) - - [5. Proof of Concept](#5-proof-of-concept) - - [5.1 Docker](#51-docker) - - [5.2 PG Admin](#52-pg-admin) - - [5.3 Erstellen von Mock Daten](#53-erstellen-von-mock-daten) - - [5.4 Anlegen der relationalen Tabellen](#54-anlegen-der-relationalen-tabellen) - - [5.5 Abfragen der Datenbank](#55-abfragen-der-datenbank) - - [6. Zusammenfassung](#6-zusammenfassung) - - [Quellen](#quellen) + - [Inhaltsverzeichnis](#inhaltsverzeichnis) + - [Motivation: Warum speichern wird Daten?](#motivation-warum-speichern-wird-daten) + - [1. Allgemeine Anforderungen an Datenbank](#1-allgemeine-anforderungen-an-datenbank) + - [2. Datenarten](#2-datenarten) + - [2.1 Welche Daten erwarten wir im Projekt?](#21-welche-daten-erwarten-wir-im-projekt) + - [2.2 strukturierte Daten](#22-strukturierte-daten) + - [2.3 unstrukturierte Daten](#23-unstrukturierte-daten) + - [3. Arten von Datenbanken](#3-arten-von-datenbanken) + - [3.1 Relationale Datenbank](#31-relationale-datenbank) + - [3.1.1 Anlegen von Tabellen](#311-anlegen-von-tabellen) + - [3.1.2 SQL - Abfrage von relationalen Datenbanken](#312-sql---abfrage-von-relationalen-datenbanken) + - [3.2 Graphdatenbank](#32-graphdatenbank) + - [3.2.1 Erstellung eines Datensatzes](#321-erstellung-eines-datensatzes) + - [3.2.2 Cypher - Abfrage von Graphdatenbanken](#322-cypher---abfrage-von-graphdatenbanken) + - [3.3 Zeitseriendatenbank](#33-zeitseriendatenbank) + - [3.3.1 Erstellung eines Datensatzes](#331-erstellung-eines-datensatzes) + - [3.3.2 FluxQuery](#332-fluxquery) + - [3.4 Dokumenten Datenbank ](#34-dokumenten-datenbank-) + - [3.4.1 Erstellen einer Collection / Ablegen von Dokumenten](#341-erstellen-einer-collection--ablegen-von-dokumenten) + - [3.5 Aufbau einer Datenbank](#35-aufbau-einer-datenbank) + - [4. Datenbanken Transparenzregister](#4-datenbanken-transparenzregister) + - [4.1 Production DB - relationales Datenbankmodell](#41-production-db---relationales-datenbankmodell) + - [4.2 Staging DB](#42-staging-db) + - [4.3 SQL Alchemy](#43-sql-alchemy) + - [5. Proof of Concept](#5-proof-of-concept) + - [5.1 Docker](#51-docker) + - [5.2 PG Admin](#52-pg-admin) + - [5.3 Erstellen von Mock Daten](#53-erstellen-von-mock-daten) + - [5.4 Anlegen der relationalen Tabellen](#54-anlegen-der-relationalen-tabellen) + - [5.5 Abfragen der Datenbank](#55-abfragen-der-datenbank) + - [6. Zusammenfassung](#6-zusammenfassung) + - [Quellen](#quellen)
@@ -239,7 +239,7 @@ Unternehmen. Die abgebildete Mindmap ist nicht vollständig und bildet nicht den finalen Datenumfang des Projekts ab. Es ist eine Momentaufnahme, bevor das relationale Schema entwickelt und die Implementierung begonnen wurde. - + ### 2.2 strukturierte Daten @@ -436,7 +436,7 @@ CREATE (u2)-[:cooparates_with]->(u1) ``` - + #### 3.2.2 Cypher - Abfrage von Graphdatenbanken @@ -620,7 +620,7 @@ Es gibt verschiedene Quellen, mit unterschiedlichen Schnittstellen bzw. Zugriff Web Scrapping. Es wurde eine Architektur definiert, welche den Aufbau der späteren Software skizziert: - + Mittels geeigneter Techniken werden Daten aus diversen Quellen extrahiert (Data Extraction) und in der Staging DB gespeichert. @@ -633,7 +633,7 @@ Das Frontend kann auf diese strukturierten Daten zugreifen, um diese zu visualis Für die Production DB ist eine relationale Datenbank vorgesehen, da diese die Daten organisiert und durch Verwendung von definierten Schemata strukturiert. \ Diese Strukturen erleichtern die Wartung und Integration zwischen Back- und Frontend. - + Zentrales Element ist die Stammdatentabelle **company**, welche einen zusammengesetzten Primärschlüssel aus der Nummer des Handelsregisters und dem zuständigen Amtsgericht bildet. \ @@ -796,7 +796,7 @@ Um das Konzept und den Umgang mit den ausgewählten Datenbanken zu überprüfen, werden. Hierfür wurde auf Statista recherchiert, welches die größten deutschen Unternehmen sind, um einen kleinen Stamm an Unternehmensdaten zu generieren (01_Stammdaten_Unternehmen_HR.csv). / Die Relation zu den Amtsgerichten ist frei erfunden und wurde nicht recherchiert. - + **Amtsgerichte:** Die Amtsgerichte sind aus https://www.gerichtsverzeichnis.de/ extrahiert, wobei lediglich 12 Amstgerichte eingefügt diff --git a/documentations/seminararbeiten/Datenspeicherung/images/Statista_Companies.png b/documentations/seminararbeiten/Datenspeicherung/images/Statista_Companies.PNG similarity index 100% rename from documentations/seminararbeiten/Datenspeicherung/images/Statista_Companies.png rename to documentations/seminararbeiten/Datenspeicherung/images/Statista_Companies.PNG