Hallo Leute,
ich möchte eine (Arbeits-) Zeiterfassung realisieren.
Habe ein Rasperry 3b und dort die rfid installiert.
Nun möchte ich die Daten in die Datenbank schreiben.
kommen / Gehen...
Welche Datenbankmodul / Software könnt Ihr empfehlen?
Ich kenne " nur" mysql viele Grüße
Datenbank suggetstion
-
- User
- Beiträge: 2
- Registriert: Montag 20. Juli 2020, 07:02
-
- User
- Beiträge: 492
- Registriert: Mittwoch 13. November 2019, 08:38
Je nach Umfang und Anspruch sind da verschiedenste Datenbanken denkbar. Klassische SQL-Datenbanken wie SQLite, MySQL, MariaDB, PostgreSQL, MSSQL, ... oder auch NoSQL-Datenbanken wie MongoDB, ArangoDB, CouchDB, ... Ich mag SQLite für kleine Projekte oder MongoDB (auch für größere Projekte), weil ich mit Python einen guten Zugang dazu habe und leicht damit hantieren kann. In jedem Fall ist es entscheidend vorher gut über die Struktur der Daten nachzudenken und erst dann mit der Umsetzung zu beginnen.
Wenn du eine Datenbank nutzt, ist diese sicherlich mit ganz gewaltigem Abstand der komplexeste Komponente deiner Anwendung. Es braucht einiges an wissen um eine Datenbank effizient nutzen zu können und noch einiges mehr um sie auch ausreichend sicher zu administrieren. Das man dieses Wissen gleichermaßen für mehrere (OLTP) Datenbanken hat ist nahezu ausgeschlossen, selbst wenn man Experte auf dem Gebiet ist.
Das bestätigt sich mir dass jedesmal wenn ich ein Vorstellungsgespräch führe mit jemandem der eine lange Liste von Datenbanken im CV hat (Tipp: eine relationelle OLTP Datenbank, Redis, eine NoSQL Datenbank, vielleicht noch eine OLAP Datenbank im CV sind ok, mehr als dass ist eine Red Flag).
Insofern macht es immer Sinn erstmal die Datenbank zu nutzen mit der du am meisten Erfahrung hast, es sei den du hast einen wirklich guten Grund dies nicht zu tun. Marketing zu Datenbank X sagt die wäre besser ist da kein guter Grund.
tl;dr: Nimm MySQL.
Das bestätigt sich mir dass jedesmal wenn ich ein Vorstellungsgespräch führe mit jemandem der eine lange Liste von Datenbanken im CV hat (Tipp: eine relationelle OLTP Datenbank, Redis, eine NoSQL Datenbank, vielleicht noch eine OLAP Datenbank im CV sind ok, mehr als dass ist eine Red Flag).
Insofern macht es immer Sinn erstmal die Datenbank zu nutzen mit der du am meisten Erfahrung hast, es sei den du hast einen wirklich guten Grund dies nicht zu tun. Marketing zu Datenbank X sagt die wäre besser ist da kein guter Grund.
tl;dr: Nimm MySQL.
Wenn man eine relationale Datenbank hat, die nur aus einer Tabelle besteht, keine SQL-Abfragen braucht und das also nur eine Arbeitzeiterfassung für dich ohne Schnickschnack sein soll, kann auch eine einfache Textdatei ("Flat File Database") oder ein Key-Value Store reichen. Im Unterschied zu relationalen Datenbanken gibt es da jedoch etwas weniger "Hilfestellung" zum Design; das kann teilweise zu mehr konzeptuellem Aufwand und schlechteren Ergebnissen führen. Bei einer simplen Zeitverwaltung sehen ich das Problem aber nicht so sehr.