Files
ihk-ausbildung/2-Ausbildungsjahr/LF8-Datenintegration/LF8-01-Datenquellen.md

2.1 KiB

8.1 Datenquellen

Arten von Datenquellen

Datenbanken

Datenbank-Typen
├── Relational (MySQL, PostgreSQL, Oracle)
├── NoSQL (MongoDB, Cassandra)
├── Graph (Neo4j)
└── Zeitreihen (InfluxDB)

Dateisysteme

Format Typ Einsatz
CSV Text Tabellarische Daten
JSON Text Strukturierte Daten
XML Text Konfiguration, Austausch
Excel Binär Tabellenkalkulation
PDF Binär Dokumente

Externe Quellen

Externe Datenquellen
├── APIs (REST, SOAP)
├── Webservices
├── Cloud-Speicher
├── Stream-Daten (IoT)
└── Drittanbieter

Datenbank-Anbindung

JDBC (Java)

// Verbindung zu Datenbank
Connection conn = DriverManager.getConnection(
    "jdbc:mysql://localhost:3306/datenbank",
    "benutzer",
    "passwort"
);

// Abfrage
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM tabelle");

Python (SQLAlchemy)

from sqlalchemy import create_engine

engine = create_engine(
    'postgresql://user:password@localhost:5432/database'
)

# Daten lesen
df = pd.read_sql("SELECT * FROM tabelle", engine)

Dateien einlesen

CSV

import pandas as pd

# CSV einlesen
df = pd.read_csv('daten.csv')

# Mit Trennzeichen
df = pd.read_csv('daten.txt', sep='\t')

JSON

import json

# JSON laden
with open('daten.json') as f:
    daten = json.load(f)

# Zu DataFrame
df = pd.json_normalize(daten)

Excel

import pandas as pd

# Excel einlesen
df = pd.read_excel('daten.xlsx')

# Bestimmtes Sheet
df = pd.read_excel('daten.xlsx', sheet_name='Tabelle1')

Datenbanktypen im Vergleich

Kriterium Relational NoSQL
Schema Fest Flexibel
Skalierung Vertikal Horizontal
Transaktionen ACID Eventual Consistency
Komplexität Mittel Niedrig
Beispiele MySQL, PostgreSQL MongoDB, Redis

Querverweise


Stand: 2024