1
00:00:02,870 --> 00:00:06,870
Moin, zu einfach komplex, dem 
Podcast für Software It Line von

2
00:00:06,870 --> 00:00:10,910
heisenware Ich bin Gerrit und 
heute spreche ich mal wieder mit

3
00:00:10,950 --> 00:00:14,350
Burkhard, unserem Experten. 
Moin Moin aus Hamburg, wir haben

4
00:00:14,350 --> 00:00:17,750
mal in Folge 6 das Thema 
Datenbanken auseinandergenommen,

5
00:00:17,910 --> 00:00:19,830
die Folge läuft ziemlich gut, es
ist tatsächlich unsere 

6
00:00:19,830 --> 00:00:22,710
erfolgreichste Folge am 
beliebtesten und da jetzt 

7
00:00:22,710 --> 00:00:25,230
wiederholt auch die Nachfrage 
kam, wie wählt man denn 

8
00:00:25,230 --> 00:00:28,030
eigentlich eine gute Datenbank 
aus, was ist denn eigentlich das

9
00:00:28,030 --> 00:00:31,190
Besondere an Post Dress, die 
öfter mal genannt wurde von 

10
00:00:31,190 --> 00:00:33,560
Burkhard? 
Ja, soll das heute auch unser 

11
00:00:33,560 --> 00:00:35,360
Thema sein? 
Burkhard, Was haben wir uns 

12
00:00:35,360 --> 00:00:37,440
vorgenommen. 
Ja, Gerrit, Wir wollten heute 

13
00:00:37,440 --> 00:00:40,240
mal über Postgeist SQL sprechen 
oder Postgrests, so hieß das 

14
00:00:40,320 --> 00:00:44,400
initiale Projekt und gar nicht 
so einfach, wenn man sich jetzt 

15
00:00:44,400 --> 00:00:47,360
so eine Datenbank 
Implementierung, sage ich mal 

16
00:00:47,360 --> 00:00:50,080
rauspickt, muss man erstmal 
überlegen, wie geht man dann so 

17
00:00:50,080 --> 00:00:52,680
eine Folge an und der Plan für 
die Folge wäre, dass wir einfach

18
00:00:52,680 --> 00:00:56,920
mal besprechen, was wäre denn 
die ideale theoretische 

19
00:00:56,920 --> 00:00:59,160
Datenbank, was müsste sie denn 
eigentlich können um alle 

20
00:00:59,160 --> 00:01:02,550
glücklich zu machen. 
Und das wollen wir mal kurz so n

21
00:01:02,550 --> 00:01:04,750
bisschen durchexerzieren. 
Und wenn wir das verstanden 

22
00:01:04,750 --> 00:01:07,950
haben, dann können wir ja mal 
gucken, wie weit Post Kress 

23
00:01:07,950 --> 00:01:10,710
dabei ist, diesen idealen 
Standard zu erfüllen. 

24
00:01:11,110 --> 00:01:13,910
Das wär die Idee und 
gleichzeitig besprechen wir dann

25
00:01:13,910 --> 00:01:15,670
n bisschen die Technik, das 
machen wir ja immer, also 

26
00:01:15,670 --> 00:01:18,270
versuchen zu verstehen, warum 
ist das dann auch gut gelöst 

27
00:01:18,270 --> 00:01:20,510
oder nicht, dann können wir 
natürlich noch ein bisschen auf 

28
00:01:20,510 --> 00:01:23,670
die Historie gucken, wie ist das
soweit gekommen und zum Schluss 

29
00:01:23,670 --> 00:01:26,070
gucken wir natürlich noch einmal
ein bisschen, machen wir das 

30
00:01:26,070 --> 00:01:27,990
Fenster auf, denn wir wollen ja 
nicht sagen Post resistiert die 

31
00:01:27,990 --> 00:01:31,160
ultimative. 
Number One Waffe für 

32
00:01:31,160 --> 00:01:33,560
Datenbanken, sondern es gibt ja 
noch andere und dann machen wir 

33
00:01:33,560 --> 00:01:35,640
noch mal einen kleinen Vergleich
das wir eine gute Übersicht 

34
00:01:35,640 --> 00:01:37,320
haben, das ist der Plan für die 
Folge denke ich mal. 

35
00:01:37,840 --> 00:01:39,720
Kann man das dann überhaupt so 
generell sagen? 

36
00:01:39,720 --> 00:01:42,160
Die Datenbank ist gut und die 
ist schlecht oder kann man das 

37
00:01:42,160 --> 00:01:44,280
eigentlich nur sagen, also 
relativ für meinen 

38
00:01:44,280 --> 00:01:46,800
Anwendungsfall ist eine 
bestimmte Datenbank gut oder 

39
00:01:46,800 --> 00:01:48,720
schlecht? 
Ich bin sowieso ein Freund von 

40
00:01:48,720 --> 00:01:51,600
differenzierter Betrachtung. 
Also insofern muss man immer 

41
00:01:51,600 --> 00:01:54,040
Anwendungsfälle mit in Betracht 
ziehen. 

42
00:01:54,040 --> 00:01:57,870
Man kann aber schon. 
Man kann aber schon schon n paar

43
00:01:57,870 --> 00:02:01,150
Kriterien raus packen, die 
idealer wenn sie dann gehen 

44
00:02:01,150 --> 00:02:02,670
würden. 
Was ich technisch bezweifle, 

45
00:02:02,670 --> 00:02:04,710
dass du halt alle 
Anwendungsfälle gleich gut 

46
00:02:04,710 --> 00:02:06,710
abdecken kannst. 
Oft halt einfach technisch nicht

47
00:02:06,710 --> 00:02:08,870
möglich, ne, weil du entweder 
optimierst, weil die eine 

48
00:02:08,870 --> 00:02:11,190
Richtung oder die andere. 
Aber man kann es schon 

49
00:02:11,190 --> 00:02:14,270
formulieren, was ne richtig 
coole Datenbank wäre, das glaub 

50
00:02:14,270 --> 00:02:16,630
ich schon. 
Ja die Anwendungsfälle sind, ich

51
00:02:16,630 --> 00:02:18,750
sag es mal gleich, also der 
krasseste Unterschied der 

52
00:02:18,750 --> 00:02:22,910
Anwendungsfälle ist halt, ob ich
nun viele relationale Daten hab.

53
00:02:23,350 --> 00:02:26,710
Und Relational heißt. 
Ich sag es jetzt mal in ganz 

54
00:02:26,710 --> 00:02:29,990
einfachen Worten, wenn man, wenn
man das Gefühl hat, seinen seine

55
00:02:29,990 --> 00:02:32,710
Daten, die man im Kopf hat oder 
die man verwalten will, in Excel

56
00:02:32,710 --> 00:02:35,150
abzubilden. 
Ja, das hat man ja oft, ne, du 

57
00:02:35,150 --> 00:02:37,870
hast irgendwie, willst irgendwie
was was weiß ich, du hast zum 

58
00:02:37,870 --> 00:02:40,350
Beispiel ne Liste oder irgendwie
was mit mit mit Leuten die zur 

59
00:02:40,350 --> 00:02:42,310
Party kommen oder irgendsowas 
und dann willst du irgendwie 

60
00:02:42,310 --> 00:02:45,110
noch das Essen dazu organisieren
oder sowas, da hat man, da hätte

61
00:02:45,110 --> 00:02:47,430
ich jetzt von mir aus wirklich 
so ein Tool nehmen wie Excel, 

62
00:02:47,510 --> 00:02:49,830
ich fange an strukturierte Daten
zu haben und so weiter. 

63
00:02:51,000 --> 00:02:53,000
Und es gibt aber ganz andere 
Probleme, wo du sagst, aber ich 

64
00:02:53,000 --> 00:02:55,080
nehme mal ein Word Dokument her,
weil ich habe da noch ein Bild 

65
00:02:55,080 --> 00:02:57,240
und hier noch einen Link und 
irgendwie wuseliges gemischtes 

66
00:02:57,240 --> 00:02:59,800
Zeus. 
Ja das ist halt unstrukturiert. 

67
00:02:59,800 --> 00:03:02,320
Ja das sind so die 2 
unterschiedlichen, vielleicht 

68
00:03:02,320 --> 00:03:05,440
noch einen dritten, ich habe 
irgendwas was wo die Zeit, das 

69
00:03:05,640 --> 00:03:07,440
hatten wir auch schon mal 
gesagt, eine Time Series ja wo 

70
00:03:07,440 --> 00:03:10,000
ich irgendwas aufzeichnen will 
über die Zeit ja Datenpunkte 

71
00:03:10,120 --> 00:03:12,920
sind so 3 ganz krass 
unterschiedliche 

72
00:03:13,440 --> 00:03:15,920
Kategorisierungen von Daten die 
ich. 

73
00:03:16,920 --> 00:03:20,560
Behandeln möchte, sind 
relationale, strukturierte und 

74
00:03:20,560 --> 00:03:23,600
dann sehr unstrukturierte, nicht
relationale Daten oder Daten, 

75
00:03:23,600 --> 00:03:26,080
die Halt einer Zeit, die einer 
Zeit einer Zeitfolge folgen. 

76
00:03:26,950 --> 00:03:29,990
Und für diese 3 sehr 
unterschiedlichen 

77
00:03:29,990 --> 00:03:32,470
Anwendungsfälle gibt es 
natürlich auch unterschiedliche 

78
00:03:32,470 --> 00:03:36,270
Datenbanklösungen. 
Host Res QL das SQL steht für 

79
00:03:36,550 --> 00:03:40,750
Relation ne das wir, wir gucken 
heute so n bisschen mehr diese 

80
00:03:40,750 --> 00:03:43,030
relationalen. 
Button an, aber ob strukturiert 

81
00:03:43,030 --> 00:03:44,830
oder nicht, das will ich sogar 
noch mal offen lassen, ne? 

82
00:03:45,230 --> 00:03:48,590
Dann eine Frage vorweg SQL, 
wofür steht das? 

83
00:03:48,870 --> 00:03:51,750
Structured Curie language. 
OK. 

84
00:03:52,190 --> 00:03:55,350
NSQL das kann man ja vielleicht 
noch mal als Recap sagen. 

85
00:03:55,790 --> 00:03:58,990
SQL ist im Prinzip ein. 
Mehr Sprache kann man fast 

86
00:03:58,990 --> 00:04:00,950
sagen, aber nicht so wirklich. 
Es ist eigentlich ne 

87
00:04:00,950 --> 00:04:04,830
Abfragesprache und das ist ganz 
krass das also wenn man 

88
00:04:04,830 --> 00:04:07,910
Informatik studiert, lernt man 
das, dahinter liegt die 

89
00:04:07,910 --> 00:04:11,670
sogenannte relationale Algebra, 
dass ein Bereich der Mathematik 

90
00:04:11,950 --> 00:04:16,190
ja, denn wenn man, wenn man 
Relationen verwaltet, dann kann 

91
00:04:16,190 --> 00:04:19,550
man das sehr stark mathematisch 
ausdrücken. 

92
00:04:19,550 --> 00:04:22,790
Ja, das ist Mengenlehre und 
Relationslehre, es gibt eine 

93
00:04:22,790 --> 00:04:25,110
richtige mathematische 
Abhandlung, und das hat dann mit

94
00:04:25,110 --> 00:04:28,400
SQL noch nichts zu tun und. 
Wenn man das quasi dieses 

95
00:04:28,400 --> 00:04:31,600
mathematische Konstrukt aber 
jetzt in die Hand geben möchte, 

96
00:04:31,600 --> 00:04:35,040
um es nutzen zu können, um 
relationale Daten einzufügen, 

97
00:04:35,040 --> 00:04:38,160
abzufragen, zu bearbeiten in der
Datenbank, dann brauche ich ein 

98
00:04:38,160 --> 00:04:40,600
bisschen was hochsprachigeres 
als die pure Matte. 

99
00:04:40,840 --> 00:04:44,120
Und daraus ist SQL entstanden. 
Sql ist ein ISO Standard sogar 

100
00:04:44,120 --> 00:04:48,200
auch das ist eine Art und Weise 
wie ich quasi relationale Daten 

101
00:04:48,200 --> 00:04:51,560
managen kann um mal kurz zu 
verstehen, was SQL ist. 

102
00:04:51,560 --> 00:04:55,080
Ja, hat aber englische Worte, 
sie sieht so aus wie Select. 

103
00:04:55,600 --> 00:05:00,040
Stern from und dann kommt der 
Tabellen Name Where The Beding 

104
00:05:00,040 --> 00:05:04,200
Bedingung zum Beispiel ID größer
als 4 oder irgend sowas so 

105
00:05:04,200 --> 00:05:06,390
ungefähr. 
Kann man sich vorstellen, sieht 

106
00:05:06,390 --> 00:05:08,710
SQL aus? 
Ja, ist schon sehr alt, gibt 

107
00:05:08,710 --> 00:05:11,550
schon sehr lange, ist schon sehr
viel standardisiert worden, ich 

108
00:05:11,550 --> 00:05:14,270
glaub der zweitausendsechzehner 
Standard ist der aktuelle ist 

109
00:05:14,270 --> 00:05:17,110
Halt die.de facto Abfragesprache
für Datenbanken. 

110
00:05:17,270 --> 00:05:18,750
Ja, OK, für alle Datenbanken 
dann, oder? 

111
00:05:19,030 --> 00:05:20,790
Also für die SQL Datenbanken 
ganz genau. 

112
00:05:20,790 --> 00:05:22,830
Ja ganz. 
Genau, ja prima, jetzt hast du 

113
00:05:22,830 --> 00:05:24,510
gesagt, wollen wir erstmal 
gucken, wie sieht dann 

114
00:05:24,510 --> 00:05:28,070
eigentlich so eine ideale 
Datenbank aus, was sind da 

115
00:05:28,070 --> 00:05:29,350
Kriterien die du anlegst? 
Genau. 

116
00:05:29,710 --> 00:05:32,190
Jetzt musst du dann einmal auch 
kurz verstehen, warum. 

117
00:05:32,440 --> 00:05:34,000
Überhaupt Datenbanken. 
Warum brauchen Sie, warum 

118
00:05:34,000 --> 00:05:36,920
brauchen wir sie und also, was 
machen sie klar, also sie 

119
00:05:36,920 --> 00:05:40,760
speichern halt Daten und zwar 
und das vielleicht gar nicht so 

120
00:05:40,760 --> 00:05:42,920
klar, sie speichern Sie halt 
einfach, ohne dass eine 

121
00:05:42,920 --> 00:05:46,400
Anwendung dabei laufen muss. 
Ich habe ja 2 Sachen, ich habe 

122
00:05:46,400 --> 00:05:50,480
meine Daten und ich habe meine 
Anwendungslogik oder mehrere 

123
00:05:50,480 --> 00:05:52,200
Anwendungslogiken, ist ja ganz 
egal. 

124
00:05:52,200 --> 00:05:54,200
Also ich habe einfach einen 
Haufen von Daten und dann habe 

125
00:05:54,200 --> 00:05:56,920
ich zum Beispiel eine Anwendung,
die die Daten liest. 

126
00:05:58,000 --> 00:06:00,000
Anzeigt. 
Ja, wir hatten jetzt letztens in

127
00:06:00,000 --> 00:06:01,800
der letzten Folge mal so einen 
blogspot, da könnten 

128
00:06:01,800 --> 00:06:05,720
Blogeinträge sein oder ein Order
Management System oder oder e 

129
00:06:05,720 --> 00:06:06,830
Commerce. 
Und so weiter. 

130
00:06:06,830 --> 00:06:09,230
Da hab ich ja ganz viele Daten 
von meinen Warehouse, von meinen

131
00:06:09,230 --> 00:06:11,390
Produkten, von den Kunden und so
weiter und dann hab ich ne 

132
00:06:11,390 --> 00:06:13,270
Anwendung die damit arbeiten 
muss. 

133
00:06:13,270 --> 00:06:15,750
So ja das sind die 2 Dinger und 
während die Anwendung 

134
00:06:15,750 --> 00:06:19,030
abgeschaltet werden kann und 
auch umgebaut werden kann, 

135
00:06:19,030 --> 00:06:22,710
müssen die Daten ja aber. 
Gehalten werden auf einer 

136
00:06:22,710 --> 00:06:26,030
Festplatte ja, und zwar im 
besten Falle sehr strukturiert. 

137
00:06:26,030 --> 00:06:27,950
Es wird halt nicht einfach auf 
die Festplatte irgendwie 

138
00:06:27,950 --> 00:06:30,510
geschrieben, sondern halt in 
Form einer Datenbank, ja. 

139
00:06:31,710 --> 00:06:34,030
Und, und jetzt kommt die 
Schwierigkeit, die man als 

140
00:06:34,030 --> 00:06:35,350
Entwickler hat. 
Das will ich auch einmal noch 

141
00:06:35,350 --> 00:06:39,110
mal kurz sagen, denn ich habe 
die Perspektive der Datenbank, 

142
00:06:39,110 --> 00:06:42,750
ist halt eine Art und Weise 
diese Daten quasi zu halten, zu 

143
00:06:42,750 --> 00:06:46,990
strukturieren und hinzulegen. 
Während ich in der Anwendung 

144
00:06:46,990 --> 00:06:50,430
ganz andere Konstrukte habe. 
Ich hab in der Anwendung 

145
00:06:50,430 --> 00:06:53,190
programmiere ich normalerweise 
keine Tabellen hin und Relation,

146
00:06:53,190 --> 00:06:56,310
sondern ich hab da Objekte, wir 
sprechen ja die meisten 

147
00:06:56,310 --> 00:06:59,510
Sprachen, sind objektorientiert,
OOP, Object oriented. 

148
00:07:00,190 --> 00:07:04,590
Programming machen wir und dann 
haben halt Objekte quasi selber 

149
00:07:04,590 --> 00:07:07,310
Daten in in drin, die haben 
Vererbung, die beziehen sich 

150
00:07:07,310 --> 00:07:10,670
aufeinander und jetzt muss ich 
schaffen quasi die Daten die in 

151
00:07:10,670 --> 00:07:12,630
der Datenbank in Tabellen 
abgebildet sind. 

152
00:07:13,470 --> 00:07:16,630
So rauszuziehen, dass sie meine 
Objekte, die in der Runtime 

153
00:07:16,630 --> 00:07:19,790
entstehen, in der Businesslogik 
füllen und dass die sinnvoll 

154
00:07:19,790 --> 00:07:22,910
arbeiten können. 
Das das ist ne Schwierigkeit und

155
00:07:23,230 --> 00:07:27,070
das hat was mit Datenstrukturen 
und Datentypen zu tun. 

156
00:07:27,550 --> 00:07:30,470
Und das ist der erste Punkt, der
eine ideale Datenbank macht, 

157
00:07:30,470 --> 00:07:34,390
aus, dass sie im Prinzip keine 
Einschränkung dem Entwickler 

158
00:07:34,390 --> 00:07:37,190
bietet. 
Auch die wildesten Datentypen 

159
00:07:37,190 --> 00:07:40,110
und Strukturierungen, die ich 
quasi in der Business Logik 

160
00:07:40,110 --> 00:07:43,110
brauche, abzubilden und auf die 
Festplatte zu schreiben, ja. 

161
00:07:43,630 --> 00:07:46,750
Also ich brauche die ganze 
Breite aller Datentypen und die 

162
00:07:46,750 --> 00:07:49,150
ganze Kombinatorik aller 
Datentypen und auch komplexer 

163
00:07:49,150 --> 00:07:52,190
Datenstrukturen. 
Ne, wenn ich dazu grad limitiert

164
00:07:52,190 --> 00:07:54,230
bin, dann muss ich halt, wenn 
ich aus der Datenbank meine 

165
00:07:54,230 --> 00:07:56,790
Daten auslese, erstmal ganz viel
Umformung machen. 

166
00:07:56,790 --> 00:07:59,990
Datenmanagement um überhaupt die
Daten in meine Anwendungslogik 

167
00:07:59,990 --> 00:08:02,950
zu haben, das will ich nicht, 
ich will halt im Prinzip das was

168
00:08:02,950 --> 00:08:04,310
ich im Code habe abbilden 
können. 

169
00:08:04,590 --> 00:08:07,990
Ein Beispiel also, wo ich immer 
auch durcheinander komme. 

170
00:08:07,990 --> 00:08:11,030
Bei den Datentypen ist ja, man 
kann ja auch eine Zahl. 

171
00:08:11,120 --> 00:08:12,760
Laienhaft ausgedrückt in 
verschiedenen Arten, als 

172
00:08:12,760 --> 00:08:14,720
integer, als als was gibt es da 
noch? 

173
00:08:15,440 --> 00:08:18,480
Ja, float float, genau integer 
in verschiedenen Auflösungen. 

174
00:08:18,480 --> 00:08:21,760
Es gibt integer, 8 bit 16 Bit 32
Bit, dann gibt es die Gesignt 

175
00:08:21,760 --> 00:08:24,400
und Ungesigned, also ob ich ob 
brauche, ich brauche ich jeden 

176
00:08:24,400 --> 00:08:27,040
Vorzeichen quasi ne kann ich 
eine Minuszahl haben oder nicht 

177
00:08:27,040 --> 00:08:30,440
und so weiter und sofort habe 
ich eine Glide kommazahl also 

178
00:08:30,440 --> 00:08:35,000
hier 4,321 ja und wie krass muss
sie aufgelöst werden und so 

179
00:08:35,000 --> 00:08:37,600
weiter hat ihn hat die Floating 
Practitioner Double Position und

180
00:08:37,600 --> 00:08:40,830
so weiter das sind alles Sachen.
Ja, die sind im Code, sage ich 

181
00:08:40,830 --> 00:08:43,390
mal, heutzutage gar nicht mehr 
ganz so relevant. 

182
00:08:43,390 --> 00:08:45,910
Aber natürlich, das hat alles 
auch was mit Größe und Speicher 

183
00:08:45,910 --> 00:08:48,470
zu tun. 
Ja, also ich sag mal jetzt KI 

184
00:08:48,470 --> 00:08:50,750
zum Beispiel ja, wird das wieder
total relevant, da hab ich halt 

185
00:08:50,750 --> 00:08:54,430
so viele zahlen, ja das wissen 
wir ja, wir haben ja Billionen 

186
00:08:54,430 --> 00:08:57,430
von Parametern noch mehr an 
Gewichten und so weiter das 

187
00:08:57,510 --> 00:09:00,030
macht schon einen Unterschied ob
ich jetzt jedes einzelne Gewicht

188
00:09:00,510 --> 00:09:04,310
als Double Precision Speicher, 
das dann irgendwie 64 bit nimmt.

189
00:09:05,160 --> 00:09:07,920
Oder als Single Precision. 
Also das muss halt dann die 

190
00:09:07,920 --> 00:09:11,200
Datenbank auch abkönnen, das 
muss halt quasi in der Lage sein

191
00:09:11,200 --> 00:09:15,320
genau diese Sachen sauber hinzu 
Hinzudefinieren genau deswegen 

192
00:09:15,320 --> 00:09:17,400
gibt es dann eine relativ große 
Menge an Datentypen. 

193
00:09:17,480 --> 00:09:20,040
Verstanden. 
Zum ersten Punkt kapiert, da mit

194
00:09:20,040 --> 00:09:21,440
dem Erster. 
Punkt kapiert, zweiter Punkt, 

195
00:09:21,440 --> 00:09:24,960
ganz klar, wir wollen natürlich 
auch wenn die Datenbank sehr 

196
00:09:24,960 --> 00:09:29,360
voll wird, ja und ganz viele 
Einträge hat, also Analogie, du 

197
00:09:29,360 --> 00:09:33,080
hast eine Excel Tabelle, die hat
halt irgendwie 10 000 100 000. 

198
00:09:33,960 --> 00:09:38,280
Fast 1000000 Rose Einträge kann 
ja mal passieren, wollen wir 

199
00:09:38,280 --> 00:09:39,920
immer noch sehr sehr schnell 
lesen können. 

200
00:09:40,830 --> 00:09:44,150
Also wir müssen etwas besser 
werden als bei jeder Anfrage, 

201
00:09:44,150 --> 00:09:46,990
quasi alle alle Reihen 
durchzugehen und zu gucken. 

202
00:09:46,990 --> 00:09:48,990
Ist es das, was ich brauche, so,
ja, das wäre ein bisschen 

203
00:09:48,990 --> 00:09:50,350
langsam. 
Ja, das wäre quasi dieser 

204
00:09:50,350 --> 00:09:54,110
Vorloop, da ist das Stichwort 
Indexing und so weiter kommen 

205
00:09:54,110 --> 00:09:56,510
wir später drauf, also ich will 
unglaublich schnell lesen 

206
00:09:56,510 --> 00:09:58,910
können. 
Das ist vor allen Dingen für 

207
00:09:58,910 --> 00:10:02,710
diese ganzen Webanwendungen, die
ja wo du wo du Daten rausziehst 

208
00:10:02,710 --> 00:10:05,790
ja so Spotify und youtube und so
weiter das ist total wichtig, ja

209
00:10:06,070 --> 00:10:09,590
wo nicht so viel rein, also wo 
du nicht dass das reinschreiben 

210
00:10:09,590 --> 00:10:11,870
die Geschwindigkeit gar nicht so
wichtig, aber im besten Falle 

211
00:10:11,870 --> 00:10:13,950
will ich auch das schnell machen
können, ist der dritte Punkt ich

212
00:10:13,950 --> 00:10:17,310
will unglaublich schnell 
schreiben können und jetzt kommt

213
00:10:17,310 --> 00:10:20,470
es ganz wichtig gleich mal 
vorweg gesagt Wir haben ja eine 

214
00:10:20,470 --> 00:10:23,630
Datenbank normalerweise also 
mindestens logisch haben wir 

215
00:10:23,630 --> 00:10:26,150
einen Satz von diesen ganzen 
Informationen die wir 

216
00:10:26,150 --> 00:10:28,880
zusammenführen. 
Wir haben aber vielleicht. 

217
00:10:30,070 --> 00:10:34,390
Zehntausende Hunderttausende von
Klienten, ne, weil wir, weil das

218
00:10:34,390 --> 00:10:37,190
zum Beispiel ne Webanwendung 
gibt und jeder hinter seinem 

219
00:10:37,190 --> 00:10:40,150
Browser sitzt und jeder gerade 
was hochlädt n neues Video n 

220
00:10:40,190 --> 00:10:43,350
neuen Blog erstellt oder irgend 
sowas und das im besten falle 

221
00:10:43,350 --> 00:10:45,510
sogar irgendwie gleichzeitig auf
der Welt kann man ja nicht 

222
00:10:45,510 --> 00:10:49,310
kontrollieren ne so das heißt es
muss jeder der jetzt gerade was 

223
00:10:49,310 --> 00:10:52,870
in diese eine Datenbank einfügen
will in der Lage sein es sehr 

224
00:10:52,870 --> 00:10:55,350
sehr schnell zu tun und für die 
Datenbank sieht's halt grauselig

225
00:10:55,350 --> 00:10:58,190
aus weil die kriegt quasi alles 
ab alles gleichzeitig ja muss 

226
00:10:58,190 --> 00:11:00,790
das so schnell wie möglich 
abfrühstücken und konsistent. 

227
00:11:01,030 --> 00:11:03,950
Ohne Fehler einspeichern ne. 
Du hast nen den den Fachbegriff 

228
00:11:03,950 --> 00:11:05,550
dafür glaub ich noch 
aufgeschrieben, oder? 

229
00:11:05,670 --> 00:11:10,070
Ja, man sagt Concurrency oder 
Parallelität oder genau, und das

230
00:11:10,070 --> 00:11:13,520
ist technisch total, also. 
Es ist einfach nicht ne. 

231
00:11:13,520 --> 00:11:16,800
Wir haben ja quasi Reihen und 
wenn du jetzt gleichzeitig was 

232
00:11:16,800 --> 00:11:19,240
schreiben willst, da kann viel 
schief gehen, wenn man da auch 

233
00:11:19,240 --> 00:11:21,200
schon normal drüber nachdenkt, 
wenn ich dann auch noch 

234
00:11:21,200 --> 00:11:23,240
Beziehungen habe zwischen den 
Dingern, ich muss mir ganz viele

235
00:11:23,240 --> 00:11:26,680
Gedanken machen, was ich wie 
Sperre für einen kurzen Moment, 

236
00:11:26,680 --> 00:11:29,560
also Locking ist da das 
Stichwort, der eine User muss 

237
00:11:29,560 --> 00:11:31,840
halt sicher seine Daten 
reinpacken können und der andere

238
00:11:31,840 --> 00:11:34,280
vielleicht gleichzeitig, aber 
die Datenbank muss wissen ist 

239
00:11:34,280 --> 00:11:37,480
das jetzt, kann da was anbrennen
wenn die das gleichzeitig machen

240
00:11:37,480 --> 00:11:40,520
oder nicht ja also. 
Das da steckt ziemlich viel 

241
00:11:40,520 --> 00:11:42,760
Brandpower hinter und 
gleichzeitig wird natürlich auch

242
00:11:42,760 --> 00:11:45,360
noch gelesen von allen 
gleichzeitig muss halt alles in 

243
00:11:45,360 --> 00:11:49,200
Datenbank abkönnen, genau und 
dann dann will ich eigentlich, 

244
00:11:49,200 --> 00:11:51,000
dass du eine Datenbank 
vollständig standardisiert ist. 

245
00:11:51,000 --> 00:11:53,080
Wir hatten es ganz am Anfang 
gesagt, also wenn wir über SQL 

246
00:11:53,080 --> 00:11:56,160
sprechen dann und SQL ist halt 
ein ISO Standard, da steht ganz 

247
00:11:56,160 --> 00:11:59,760
schön viel drin was was also der
theoretische Implementierung 

248
00:11:59,760 --> 00:12:03,030
alles können muss. 
Dann erwarte ich das von einer 

249
00:12:03,030 --> 00:12:05,910
idealen Datenbank, dass die halt
vollständig diesen SQL Standard 

250
00:12:05,910 --> 00:12:08,830
bedient und und mit einer hohen 
Geschwindigkeit alle diese 

251
00:12:08,830 --> 00:12:12,390
Anfragen verarbeitet. 
Ja und auch quasi im Prinzip für

252
00:12:12,390 --> 00:12:14,910
jedes Operating System, da ist. 
Ja ich will die Datenbank ja 

253
00:12:14,910 --> 00:12:16,830
nicht auf einer speziellen 
Hardware laufen lassen können, 

254
00:12:16,830 --> 00:12:18,830
nur. 
Sondern auf allem, was so, was 

255
00:12:18,830 --> 00:12:21,470
man halt so kennt. 
Ja dann find ich das jetzt 

256
00:12:21,470 --> 00:12:23,870
wieder so mein Ding, weil ich 
bin da hier n Verfechter von 

257
00:12:23,870 --> 00:12:27,190
open Source und ich bin bin 
natürlich auch im Klamm 

258
00:12:27,190 --> 00:12:30,710
Geldbeutel immer unterwegs also 
ich finde im besten Falle kostet

259
00:12:30,710 --> 00:12:33,150
die Datenbank nichts ja und ist 
auch noch gleichzeitig Open 

260
00:12:33,150 --> 00:12:35,590
Source und zwar unter einer 
Lizenz die ich mich auch nicht 

261
00:12:35,590 --> 00:12:39,270
zwingt sogar meine meine eigenen
Code Open Source zu stellen 

262
00:12:39,270 --> 00:12:42,950
sondern eine Open Source Lizenz 
wo ich sogar quasi auch noch. 

263
00:12:43,120 --> 00:12:44,800
Einen Enterprise Produkt 
Mitverkaufen kann und ist 

264
00:12:44,800 --> 00:12:48,080
trotzdem ein Bauender erfahren. 
Das wäre natürlich das Non plus 

265
00:12:48,080 --> 00:12:50,800
ultra sage ich mal ja. 
Du meinst, wo du selbst ein 

266
00:12:50,800 --> 00:12:52,560
Close Source Produkt draus 
machen darfst? 

267
00:12:52,560 --> 00:12:54,360
Richtig, genau. 
Also wir sprechen halt von BSD 

268
00:12:54,360 --> 00:12:58,440
Lizenzen oder es gibt ja so ein 
paar LGPL und Mi t. 

269
00:12:58,520 --> 00:13:01,000
Das sind so die Lizenzen die die
das erlauben. 

270
00:13:01,240 --> 00:13:05,560
Wie alleine stehst du da oder 
wie viele andere Entwickler hast

271
00:13:05,560 --> 00:13:08,200
du da draußen, die das auch so 
sehen, oder? 

272
00:13:08,400 --> 00:13:10,080
Glaubst du, da sind auch welche,
die sagen, es ist besser? 

273
00:13:10,680 --> 00:13:12,760
Weiß ich nicht. 
Kauf bei Oracle oder sowas ich 

274
00:13:12,760 --> 00:13:16,040
glaube ich der größte 
Datenbankanbieter noch immer 

275
00:13:16,040 --> 00:13:18,880
oder war es zumindest lange ich 
nehme die Oracle Datenbank und 

276
00:13:18,880 --> 00:13:21,520
dann habe ich dahinter eine 
Firma und bezahle dafür lieber. 

277
00:13:21,760 --> 00:13:24,680
Also meine Meinung ist ganz 
klar, ich muss nichts bezahlen 

278
00:13:24,680 --> 00:13:28,200
müssen in meiner idealen 
Datenbank kostet die nichts und 

279
00:13:28,400 --> 00:13:30,240
es gibt keine Firma die dahinter
steckt warum? 

280
00:13:30,240 --> 00:13:33,080
Ich kann es auch sagen und also 
warum kann man sich auch anhören

281
00:13:33,080 --> 00:13:35,240
in unserer Open Source Folge, da
habe ich das sehr stark 

282
00:13:35,240 --> 00:13:37,800
ausgelegt aber es. 
Ist halt einfach so, wenn es 

283
00:13:37,800 --> 00:13:40,080
Open Source ist, heißt ja, dass 
der Quelltext offen ist. 

284
00:13:40,080 --> 00:13:43,080
Das heißt, und wenn ich dann 
auch noch eine große Community 

285
00:13:43,080 --> 00:13:46,480
habe, das bekomme ich immer 
dann, wenn das ein Projekt ist, 

286
00:13:46,480 --> 00:13:49,040
als sehr viel Mehrwert bietet 
und was viele Leute anfangen zu 

287
00:13:49,040 --> 00:13:51,430
nutzen. 
Ja, dann hab ich halt einfach. 

288
00:13:51,510 --> 00:13:54,070
Dann hab ich quasi Zehntausende 
von Entwicklern die da drauf 

289
00:13:54,070 --> 00:13:57,430
gucken und sicherstellen, dass 
das auch funktioniert, der 

290
00:13:57,430 --> 00:13:59,990
neuesten Technologie angepasst 
ist und sicher ist, weil alle 

291
00:14:00,070 --> 00:14:04,230
diese Entwickler machen das ja 
im Auftrag für ne andere Firma 

292
00:14:04,230 --> 00:14:06,670
und haben großes Eigeninteresse 
dran, dass das robust ist, 

293
00:14:06,670 --> 00:14:11,310
stabil ist und sicher ist. 
Und wie kann ich mir sicherer 

294
00:14:11,310 --> 00:14:13,830
sein, dass das ein tolles 
Projekt ist, wenn es quelloffen 

295
00:14:13,830 --> 00:14:15,870
ist und mir das angucken kann? 
Ja, ansonsten muss ich halt 

296
00:14:15,870 --> 00:14:18,190
Oracle vertrauen, ob die das 
auch ordentlich machen und es 

297
00:14:18,190 --> 00:14:20,390
werden weniger Entwickler sein 
bei Oracle, die haben zwar 

298
00:14:20,390 --> 00:14:23,230
viele. 
Als die Community groß ist, von 

299
00:14:23,230 --> 00:14:26,110
einem großen Open Source 
Projektor, deswegen sag ich 

300
00:14:26,110 --> 00:14:28,830
immer nem Alt open Source mit 
großer Community. 

301
00:14:28,830 --> 00:14:31,110
Ja, also jetzt vielleicht nicht 
irgendein Open Source Projekt, 

302
00:14:31,110 --> 00:14:34,990
aber halt die relevanten großen,
ja die sind im Notfall besser 

303
00:14:34,990 --> 00:14:38,350
geprüft und besser gecheckt als 
das jetzt eine einzelne Firma 

304
00:14:38,350 --> 00:14:42,230
stemmen kann in ihrem Closed 
Source Business genau und dann 

305
00:14:42,230 --> 00:14:45,390
ist natürlich so eine Datenbank 
wenn man ich sag mal wenn man 

306
00:14:45,390 --> 00:14:48,350
halt nicht nur vorgesetzt 
bekommt was sie alles genau 

307
00:14:48,350 --> 00:14:50,790
macht, sondern wenn man es quasi
darauf anlegt, dass jetzt ein 

308
00:14:50,790 --> 00:14:54,190
bisschen was technischer. 
Man sagt, OK, ich bereite das 

309
00:14:54,350 --> 00:14:58,630
Feld der Technologie so vor, 
dass ich sie auch erweitern kann

310
00:14:58,630 --> 00:15:01,110
in Zukunft mit was weiß ich was 
da kommt. 

311
00:15:01,110 --> 00:15:04,110
Ja, der hat zum Beispiel Post 
Dress, die haben ja da, die sind

312
00:15:04,110 --> 00:15:07,390
ja in den Achtzigern gestartet, 
da gab es ja noch keine AI und 

313
00:15:07,390 --> 00:15:10,550
so weiter haben die also noch 
nicht noch nicht antizipieren 

314
00:15:10,550 --> 00:15:12,430
können, dass wir dann auf einmal
irgendwie zum Beispiel jetzt 

315
00:15:12,430 --> 00:15:16,070
sowas haben wie ganz viele 
matrizenmäßige Floating Values, 

316
00:15:16,070 --> 00:15:17,110
die ich eigentlich speichern 
will. 

317
00:15:18,120 --> 00:15:20,880
Aber wenn ich jetzt quasi die 
Technologie so offen lasse, dass

318
00:15:20,880 --> 00:15:24,240
ich jetzt noch nacharbeiten 
kann, Module einfügen kann, die 

319
00:15:24,240 --> 00:15:26,680
das quasi die die 
Grundtechnologie dieser 

320
00:15:26,680 --> 00:15:31,120
Datenbank so hinbauen, dass ich 
auch noch neue Anforderungen mit

321
00:15:31,120 --> 00:15:34,200
verhaften kann, dann ist 
natürlich auch super plus, dass 

322
00:15:34,200 --> 00:15:37,200
ich quasi auch, und das ist auch
wichtig, sage ich nochmal eine 

323
00:15:37,200 --> 00:15:40,120
Datenbank ist. 
Manchmal nicht nur stumpf zum 

324
00:15:40,120 --> 00:15:43,480
reinschreiben und auslesen, 
sondern hat auch ein bisschen 

325
00:15:43,480 --> 00:15:45,560
Logik selber, also auf der 
untersten Ebene. 

326
00:15:45,560 --> 00:15:48,200
Es können also kleine Events 
passieren, die dann also. 

327
00:15:48,520 --> 00:15:50,840
Ich füge, was zum Beispiel ein 
in eine Datenbank von außen, und

328
00:15:50,840 --> 00:15:53,120
dann gibt es eine Logik in der 
Datenbank, die sagt, wenn du das

329
00:15:53,120 --> 00:15:57,200
einführt, dann machst du danach 
noch dies, das und das in den 

330
00:15:57,200 --> 00:15:59,480
Daten meiner Datenbank auf 
anderen Tabellen oder 

331
00:15:59,480 --> 00:16:01,120
Irgendsowas, also kleine 
Logiken. 

332
00:16:01,120 --> 00:16:04,680
Ja, das ist auch wichtig, dass 
sowas da ist, damit ich, damit 

333
00:16:04,680 --> 00:16:09,110
ich quasi sehr zügig und per 
Post Daten manipulieren kann, da

334
00:16:09,110 --> 00:16:11,150
wo sie halt quasi auch 
existieren auf der Platte. 

335
00:16:11,150 --> 00:16:12,750
Ja, also. 
Es ist wieder ein Punkt, wo sie 

336
00:16:12,750 --> 00:16:15,590
dir einfach wieder mehr abnimmt,
was du nicht selber manuell dann

337
00:16:15,590 --> 00:16:16,670
dann lösen müsst. 
Ja, genau. 

338
00:16:16,670 --> 00:16:18,510
Und vor allen Dingen ist n 
Performance Punkt den wenn ich 

339
00:16:18,510 --> 00:16:21,590
es erstmal auslesen muss und 
dann in meinem Anwendungscode 

340
00:16:21,590 --> 00:16:24,070
manipuliere um es dann wieder 
zurückzuschreiben kannst du dir 

341
00:16:24,070 --> 00:16:27,230
ja gleich vorstellen, dass das 
halt viel ineffizienter ist, als

342
00:16:27,230 --> 00:16:29,110
wenn ich jetzt zum Beispiel so 
eine kleine Routine direkt in 

343
00:16:29,110 --> 00:16:31,070
der Datenbank schreiben kann, 
muss ich es nämlich nicht 

344
00:16:31,070 --> 00:16:32,190
auslesen und wieder 
zurückschreiben. 

345
00:16:32,190 --> 00:16:34,390
Das ganze Locking und so weiter 
angucken, sondern es passiert 

346
00:16:34,390 --> 00:16:36,400
direkt da. 
Wo es sein soll? 

347
00:16:36,680 --> 00:16:38,720
Gut, das waren 6 Punkte. 
Jetzt kommt der siebte. 

348
00:16:38,720 --> 00:16:42,560
Jetzt kommt der letzte genau im 
besten Falle. 

349
00:16:42,960 --> 00:16:45,520
Jetzt bringe ich so ein bisschen
die Zeit rein, auch rein und die

350
00:16:45,520 --> 00:16:48,800
Analytik, Analytik, die 
Datenanalyse, aber stell dir 

351
00:16:48,800 --> 00:16:52,960
vor, du hast zum Beispiel eine 
Tabelle oder Sensordaten, 

352
00:16:52,960 --> 00:16:57,040
ausliest sehr sehr sehr sehr 
viele über Jahre hinweg und 

353
00:16:57,040 --> 00:17:00,040
jetzt willst du zum Beispiel 
einen Chart, also willst du es 

354
00:17:00,040 --> 00:17:02,920
einfach anzeigen lassen, die 
Sensordatenpunkte ja. 

355
00:17:03,080 --> 00:17:05,359
Dann willst du ja nicht in 
deinem armen Java Script 

356
00:17:05,359 --> 00:17:07,720
Dashboard sage ich mal, wo 
dieser Chart aufgebaut wird. 

357
00:17:08,910 --> 00:17:12,109
2000000 Sensordatenpunkte von 
den letzten 2 Jahren haben, 

358
00:17:12,109 --> 00:17:14,390
sondern da wirst du immer ne 
Statistik drauf machen, sag ich 

359
00:17:14,390 --> 00:17:17,910
mal und fast quasi Datenpunkte 
zusammen und sagst zum Beispiel 

360
00:17:18,109 --> 00:17:21,750
mach mir halt so nen so n 
Average jeden Monat, nimm alle 

361
00:17:21,750 --> 00:17:25,230
Datenpunkte zusammen, mach davon
average wert und dann kriegst du

362
00:17:25,230 --> 00:17:27,710
halt ne übersichtliche Anzahl 
von Datenpunkten die du anzeigen

363
00:17:27,710 --> 00:17:29,270
kannst. 
Trotzdem über Jahre hinweg, ja 

364
00:17:29,630 --> 00:17:33,070
jetzt ist die Frage, wo machst 
du das Averaging auch wieder so 

365
00:17:33,070 --> 00:17:35,200
ein bisschen das sind. 
Ist ja ähnlich. 

366
00:17:35,200 --> 00:17:36,680
Der Punkt den ich davor hatte 
oder nicht. 

367
00:17:37,080 --> 00:17:40,080
Aber wenn jetzt zum Beispiel die
Datenpunkte Datenbank so eine 

368
00:17:40,080 --> 00:17:43,320
Art Windowing Aggregation, 
vorverarbeitung. 

369
00:17:45,040 --> 00:17:48,280
In einer Art von also 
Datenanalyse bietet, dann 

370
00:17:48,280 --> 00:17:50,240
brauchst du auch erst gar nicht 
so viele Datenpunkte abfragen, 

371
00:17:50,240 --> 00:17:52,760
dann sagst du mach halt 
averaging jeden Monat und dann 

372
00:17:52,760 --> 00:17:56,440
bekommst du schon übers Netzwerk
auch nur die Datenpunkte, die 

373
00:17:56,440 --> 00:17:58,520
schon vorverarbeitet sind. 
Ja, ansonsten müsste ich es 

374
00:17:58,520 --> 00:18:01,320
wieder in meine Anwendungslogik 
machen, das wäre wieder viel 

375
00:18:01,320 --> 00:18:05,000
Bandbreite vom Kabel und es wird
halt langsamer, weil ich halt 

376
00:18:05,000 --> 00:18:08,440
irgendwie das später mache, aber
wenn ich Sachen früher erledigen

377
00:18:08,440 --> 00:18:11,560
kann, näher zu dem wo es wo der 
Datenpunkt gehalten wird, dann 

378
00:18:11,560 --> 00:18:13,400
ist es immer besser, es ist wie 
beim Edge Computing. 

379
00:18:14,150 --> 00:18:15,950
Cool, dann war das jetzt 
sozusagen die optimale 

380
00:18:15,950 --> 00:18:17,230
Datenbank, die du beschrieben 
hast. 

381
00:18:17,750 --> 00:18:21,550
Ziemlich frei vom Anwendungsfall
noch beziehungsweise ja, es geht

382
00:18:21,550 --> 00:18:23,950
um strukturierte Daten oder über
die. 

383
00:18:23,950 --> 00:18:25,230
Besprechung oder geht es auch 
immer? 

384
00:18:25,230 --> 00:18:26,630
Noch? 
Nee, das war bunt gemischt. 

385
00:18:26,670 --> 00:18:28,470
Ich hab sogar jetzt sogar noch n
bisschen die Zeit rein mit 

386
00:18:28,470 --> 00:18:30,230
reingebracht. 
Ja richtig, jetzt wo du es 

387
00:18:30,230 --> 00:18:32,510
sagst. 
Ja genau, also das ist schon. 

388
00:18:32,510 --> 00:18:34,950
Also wenn man jetzt, wenn man 
diese Punkte alle voll 

389
00:18:34,950 --> 00:18:37,910
durchoptimiert hätte, hätte man 
es schon ziemlich gut optimierte

390
00:18:37,910 --> 00:18:40,070
Datenbank, die alles Mögliche 
schon abdecken könnte jetzt. 

391
00:18:40,070 --> 00:18:42,230
Habe ich noch eine Frage, weil 
das haben wir ja auch bei uns, 

392
00:18:42,230 --> 00:18:47,440
wir haben ja die Möglichkeit. 
Einen Eintrag in einer Reihe 

393
00:18:47,440 --> 00:18:51,840
über die Zeit zu beobachten, zum
Beispiel, wenn sich irgendwie, 

394
00:18:51,840 --> 00:18:54,560
wenn du hast als als als einen 
Eintrag, als eine Row in einer 

395
00:18:54,560 --> 00:18:57,520
Tabelle, also eine Person mit 
einer Adresse, meinetwegen, es 

396
00:18:57,520 --> 00:19:02,000
ändert sich die Adresse von 
birkenweg auf den Lindenweg, 

397
00:19:02,000 --> 00:19:05,400
meinetwegen die Straße, und 
jetzt will ich aber wissen zum 

398
00:19:05,400 --> 00:19:08,400
Zeitpunkt x, wie war da die 
Straße, sowas können wir doch 

399
00:19:08,400 --> 00:19:11,200
sogar auch machen mit der Post, 
dann wieder, oder willst du da 

400
00:19:11,200 --> 00:19:13,680
noch drauf eingehen? 
Ja nee, aber das, das kann 

401
00:19:13,760 --> 00:19:16,870
eigentlich jeder. 
Bank, weil, weil jetzt da kannst

402
00:19:16,870 --> 00:19:19,350
du dir musst du einfach clever 
überlegen, wie speicherst du das

403
00:19:19,350 --> 00:19:22,510
ab, dann kannst du sagen ich hab
halt quasi ne historische 

404
00:19:22,510 --> 00:19:26,830
Tabelle also du hast die Tabelle
addresses und dann hast du 

405
00:19:26,830 --> 00:19:29,070
historical addresses dann machst
du ne zweite Tabelle. 

406
00:19:29,790 --> 00:19:32,510
Und jetzt ist es so. 
Wenn du das ändern würdest. 

407
00:19:32,510 --> 00:19:35,590
Und jetzt kommt so n bisschen 
der der Trick diese Triggers. 

408
00:19:35,590 --> 00:19:39,190
Ja du sagst jetzt OK ich ändere 
eine Zeile die Adresse dann soll

409
00:19:39,190 --> 00:19:42,390
automatisch jetzt ist der Punkt 
automatisch, soll dann quasi 

410
00:19:42,390 --> 00:19:45,030
eine Zeile angelegt werden in 
der historischen Adresse. 

411
00:19:45,510 --> 00:19:50,830
Tabelle der dann sagt OK, hier 
wurde geändert auf ja zack das 

412
00:19:50,830 --> 00:19:52,510
Delta und dann weißt du was los 
ist. 

413
00:19:52,910 --> 00:19:55,430
Aber das willst du quasi nicht 
in deinem Code verhaften, 

414
00:19:55,430 --> 00:19:57,870
sondern du willst in deinem Code
nur sagen hier Update neue 

415
00:19:57,870 --> 00:20:01,550
Adresse aber die Datenbank hat 
jetzt n Trigger hinterlegt wenn 

416
00:20:01,590 --> 00:20:04,110
sich die Adresse ändert, dann 
machst du einen Insert in den 

417
00:20:04,110 --> 00:20:07,870
historischen Table automatisch, 
das ist ein Datenbank Business 

418
00:20:07,870 --> 00:20:10,990
Logik quasi und mach das und 
Post press kann das ja so und so

419
00:20:10,990 --> 00:20:12,870
lösen wir das ja. 
Dann war das also eigentlich nur

420
00:20:12,870 --> 00:20:15,470
ein Beispiel für den sechsten 
Punkt, den du hattest, dass die 

421
00:20:15,470 --> 00:20:17,550
schon gewisse. 
Selber abbilden kann die die 

422
00:20:17,550 --> 00:20:18,230
Daten. 
Genau. 

423
00:20:18,230 --> 00:20:21,350
Customization, Small Programming
und so weiter Events und so 

424
00:20:21,350 --> 00:20:25,630
weiter ja. 
OK, verstanden so, dann ist ja 

425
00:20:25,630 --> 00:20:29,190
die Frage, warum ist Postgrass 
jetzt auch bei uns die Datenbank

426
00:20:29,190 --> 00:20:32,190
der Wahl? 
Und und so beliebt ne ganz 

427
00:20:32,190 --> 00:20:36,510
genau, ja, weil und die Antwort 
ist natürlich, weil weil gut, 

428
00:20:36,510 --> 00:20:38,550
das ist jetzt natürlich ne 
subjektive Geschichte, das kann 

429
00:20:38,550 --> 00:20:41,030
ich jetzt einfach nur aus meiner
warte ja sagen, weil ich finde, 

430
00:20:41,350 --> 00:20:45,270
dass das postcrest Projekt halt 
am nahesten Drankommt, an dem, 

431
00:20:45,270 --> 00:20:48,670
was ich jetzt auch so. 
Als ideale Datenbank gerade 

432
00:20:48,670 --> 00:20:51,350
formuliert. 
Hab ja, es ist halt für mich das

433
00:20:51,350 --> 00:20:56,830
Projekt was halt diese Punkte am
besten ausfüllte, wenn im 

434
00:20:56,830 --> 00:20:59,270
Vergleich zu den anderen 
angeboten die es so gibt ja. 

435
00:21:00,070 --> 00:21:02,150
Warum das so ist, das können wir
gleich im Einzelnen noch mal 

436
00:21:02,150 --> 00:21:03,990
besprechen. 
Ne, vielleicht sag ich kurz was 

437
00:21:03,990 --> 00:21:06,190
zum Bhost res Projekt, damit wir
es mal kurz einordnen kann 

438
00:21:06,190 --> 00:21:07,830
irgendwie auch. 
Ja, ja, gerne. 

439
00:21:08,150 --> 00:21:09,990
Also wir müssen Historie, wo 
kommt es her? 

440
00:21:11,110 --> 00:21:12,310
Wo wird es eingesetzt? 
Et cetera? 

441
00:21:12,470 --> 00:21:16,670
Ja genau, also das also diese, 
dieser Start, dieser ganzen 

442
00:21:16,670 --> 00:21:18,030
Post. 
Grace, was man heute kennt, das 

443
00:21:18,030 --> 00:21:21,190
heißt ja postquest QL und ist 
halt n Datenbanksystem. 

444
00:21:22,030 --> 00:21:25,070
Der Start ist so alt wie ich 
selber und das ist schon 

445
00:21:25,070 --> 00:21:27,310
ziemlich alt, also das ist 
Anfang der Achtzigern ist das 

446
00:21:27,310 --> 00:21:30,750
quasi alles losgelegt worden von
einem Herrn Michael, 

447
00:21:30,750 --> 00:21:33,630
wahrscheinlich hat er Michael 
Stonebreaker und der hat dann 

448
00:21:33,630 --> 00:21:36,150
mal irgendwie Anfang der 80er 
dieses Post Quest Projekt 

449
00:21:36,150 --> 00:21:38,480
gestartet. 
Noch ganz am Anfang glaube ich 

450
00:21:38,480 --> 00:21:43,320
gar nicht mit mit dem mit dem 
Ziel jetzt SQL voll supporten, 

451
00:21:43,320 --> 00:21:47,080
sondern eher mit dem Ziel die 
Datentypen gut zu unterstützen. 

452
00:21:47,080 --> 00:21:49,520
Das war in den Achtzigern noch 
das größere Problem, was ich 

453
00:21:49,520 --> 00:21:51,320
ganz mit der ersten Punkt, den 
ich gesagt hatte, die komplexe 

454
00:21:51,320 --> 00:21:53,680
Datentypen, alles Mögliche da 
verwalten und abbilden zu 

455
00:21:53,680 --> 00:21:57,070
können, die ganzen Relationen. 
Gut und effizient zu managen, 

456
00:21:57,070 --> 00:21:58,910
das war, glaube ich, der 
initiale Zündpunkt. 

457
00:21:58,910 --> 00:22:00,750
Da gab es dann noch nicht so 
viele Konkurrenzprodukte, die 

458
00:22:00,750 --> 00:22:02,990
das gut konnten, ne. 
Deswegen wurde dieses Projekt 

459
00:22:03,270 --> 00:22:08,030
ins Leben gerufen, 89 gab es das
erste Release und mit einer Open

460
00:22:08,030 --> 00:22:11,190
Source Lizenz BSD, also mit 
einer sehr freien opensource 

461
00:22:11,310 --> 00:22:14,910
Lizenz. 
Und dann hat man 94. 

462
00:22:14,910 --> 00:22:17,470
Also das war der Stoneback hat 
angefangen, da gab es dann 

463
00:22:17,470 --> 00:22:21,110
Studenten, PHD und das wurde 
dann sofort ne Community, war ja

464
00:22:21,110 --> 00:22:23,310
Open Source, also da haben 
mehrere Leute dran gearbeitet. 

465
00:22:23,310 --> 00:22:25,270
In Berkeley. 
In Berkeley. 

466
00:22:25,270 --> 00:22:26,750
Das kann man mal sagen. 
Ja genau, das stimmt. 

467
00:22:27,190 --> 00:22:29,630
War in. 
Den Achtzigern auch schon der, 

468
00:22:29,670 --> 00:22:33,350
der der Ursprung der Großen, der
großen Technologien, sag ich 

469
00:22:33,350 --> 00:22:35,030
mal. 
Ja, da ging ja das Silicon 

470
00:22:35,030 --> 00:22:38,630
Valley, also also da fing es an,
die Erfolgsstory des Silicon 

471
00:22:38,630 --> 00:22:39,590
Valleys. 
Ganz genau. 

472
00:22:39,590 --> 00:22:42,230
Ja und? 
Und solche Projekte wie Post 

473
00:22:42,230 --> 00:22:43,710
West gehören halt auf jeden Fall
dazu. 

474
00:22:43,910 --> 00:22:49,150
Total erfolgreiche Projekte bis 
heute 94 wurde der SQL Support 

475
00:22:49,150 --> 00:22:52,630
hinzugefügt und das sag ich 
jetzt gleich mal vorweg, einer 

476
00:22:52,630 --> 00:22:55,990
der wenigen Datenbanken ist Post
Dress die das die den diesen ISO

477
00:22:55,990 --> 00:23:00,990
Standard der wirklich heftig ist
so komplett und getreu erfüllt, 

478
00:23:01,110 --> 00:23:04,750
denn du hast ja immer also SQL 
ist halt ein stapel Papier wie 

479
00:23:04,750 --> 00:23:07,710
es sein sollte in der Theorie 
und dann hast du halt natürlich 

480
00:23:07,710 --> 00:23:10,790
die Implementierung, das muss 
erstmal so laufen dagegen ja und

481
00:23:10,790 --> 00:23:12,630
Podcast. 
Ich, einer der führenden 

482
00:23:12,630 --> 00:23:15,190
Implementierungen von 
Datenbanken, die das als 

483
00:23:15,190 --> 00:23:19,110
wirklich zu einem sehr, sehr 
hohen Prozentsatz exakt so 

484
00:23:19,590 --> 00:23:21,670
umsetzt. 
Ja, die Anforderung dieses ISO 

485
00:23:21,670 --> 00:23:23,470
Standards, ja. 
Genau. 

486
00:23:23,470 --> 00:23:28,030
Und 96 kam glaube ich der Name 
Post Grass QL zustande, also 

487
00:23:28,030 --> 00:23:31,550
durch ne dadurch, dass der SQL 
Support mit rein kam und das 

488
00:23:31,550 --> 00:23:35,110
auch n ja n wichtiger Feature 
Punkt war wo der SQL quasi dem 

489
00:23:35,110 --> 00:23:36,950
Namen hinzugefügt und seitdem 
heißt es halt. 

490
00:23:37,390 --> 00:23:40,750
Bisschen sperrig, Post Grä Post 
Grass sie ist das Projekt, und 

491
00:23:40,750 --> 00:23:43,910
dann haben Sie das Essen auf mit
dem QL hinten dran, damit das 

492
00:23:43,910 --> 00:23:47,830
Sequel, das heißt übrigens 
Sequel jetzt richtig ne SQL, das

493
00:23:47,830 --> 00:23:50,150
sind da die 3 Buchstaben für 
Structured Curry Language, man 

494
00:23:50,150 --> 00:23:52,510
spricht es aber Sequel. 
Aus ja, da erkennt man immer die

495
00:23:52,510 --> 00:23:55,270
Line für mich dran. 
Ich sag immer SQL und meine 

496
00:23:55,270 --> 00:23:57,550
Gesprächspartner sagen immer 
Sequel, also wenn es wenn es 

497
00:23:57,550 --> 00:23:59,350
Entwickler sind und ich Kriegs 
nicht auf die Kette, aber 

498
00:23:59,350 --> 00:24:00,470
irgendwann will ich es noch 
schaffen. 

499
00:24:01,670 --> 00:24:02,950
Ich schaffe es ja selber auch 
schon nicht. 

500
00:24:03,920 --> 00:24:07,400
Bei postcress ich sag meistens 
postcremes, weil postcress 

501
00:24:07,960 --> 00:24:10,560
Sequel heißt glaube ich nicht 
postcremes QL ist alles 

502
00:24:10,560 --> 00:24:13,440
irgendwie zungenbrecher, aber 
wenn man es Post sagt Weißt du 

503
00:24:13,440 --> 00:24:14,680
weißt schon der Rest was los 
ist. 

504
00:24:14,680 --> 00:24:16,960
Da gibt es auch sonst nichts, 
das ist dann immer das eine. 

505
00:24:16,960 --> 00:24:20,800
Ja genau, denn jetzt muss ich 
vom Spicker ablesen, könnt ihr 

506
00:24:20,800 --> 00:24:24,040
auch selber lesen, aber 97 Open 
Source Community entwickelt 

507
00:24:24,040 --> 00:24:27,120
quasi das Projekt weiter, hat es
übernommen worden, die treuen 

508
00:24:27,120 --> 00:24:29,080
Hände gegeben, das klappt ja 
auch nicht immer bei so Open 

509
00:24:29,080 --> 00:24:32,600
Source Projekten und 2005 steht 
ja noch Windows Support wurde 

510
00:24:32,600 --> 00:24:37,070
eingeführt. 
Und mal für so ne Übersicht Post

511
00:24:37,070 --> 00:24:38,110
res. 
Ich hab ja gesagt es ist halt 

512
00:24:38,110 --> 00:24:40,870
Open Source und ist n wichtiges 
Datenbanksystem wie wichtig es 

513
00:24:40,870 --> 00:24:43,030
ist erkennt man immer wenn man 
mal so n paar Beispiele nennt 

514
00:24:43,030 --> 00:24:46,430
von Firmen, von einschlägigen 
Firmen und Institutionen die es 

515
00:24:46,430 --> 00:24:49,110
nutzen die es vielleicht nicht 
exklusiv nutzen, aber. 

516
00:24:49,310 --> 00:24:53,310
Mindestens an wichtiger Stelle. 
Ja, ich les einfach mal vor 

517
00:24:53,310 --> 00:24:57,070
Apple, Instagram, Reddit, 
Spotify, Debian, Debian ist die 

518
00:24:57,070 --> 00:25:01,030
Linux Disco United States 
Federal Government, also da ist 

519
00:25:01,030 --> 00:25:04,350
auch verbaut die in der ESA, 
Gitlab, Uber, tripadvisor, 

520
00:25:04,350 --> 00:25:07,070
openstreetmap, openstreetmap 
halte ich kurz mal an 

521
00:25:07,190 --> 00:25:11,710
openstreetmap ist ja also 
Navigationssystem, im Prinzip 

522
00:25:11,710 --> 00:25:15,950
Datenbank und das ist cool, weil
hier das Hochoptimiert für 

523
00:25:15,950 --> 00:25:19,600
Geodaten. 
Es gibt einen Datentyp quasi der

524
00:25:19,600 --> 00:25:22,800
für diese ganzen Geodaten 
optimiert ist und da hat man 

525
00:25:22,800 --> 00:25:24,760
quasi eine Erweiterung 
eingebaut, weil es halt ging. 

526
00:25:24,760 --> 00:25:28,560
Das ist nochmal erster Punkt, 
Komplexität, Datenstrukturen usw

527
00:25:29,080 --> 00:25:32,240
Weiterentwicklung möglich, ja 
und das hat man halt gemacht ja 

528
00:25:32,240 --> 00:25:36,400
und hat ein Feature rangesetzt 
Twist heißt das glaube ich und 

529
00:25:36,400 --> 00:25:39,960
das halt besonders krass und 
schnell Geodaten verarbeiten 

530
00:25:39,960 --> 00:25:42,800
kann und darauf Anfragen machen 
kann Netflix. 

531
00:25:43,360 --> 00:25:46,400
Sales Force, Skype, Yahoo und 
Heroco kann man auch einmal 

532
00:25:46,400 --> 00:25:48,880
kurzhaltig auch mal kurz an, ist
quasi benutzt. 

533
00:25:48,880 --> 00:25:50,910
Postgre und Butt macht. 
Macht da quasi den Service 

534
00:25:50,910 --> 00:25:52,670
drumherum. 
Ja, Service kann man dann 

535
00:25:52,670 --> 00:25:55,270
irgendwie noch mal über andere 
Interfaces bedienen, könnt ihr 

536
00:25:55,270 --> 00:25:58,550
selber gucken, also schon n paar
einschlägige Firmen, bei denen 

537
00:25:58,550 --> 00:26:03,430
halt innenproduktion sehr 
relevant ja und wichtig postgreß

538
00:26:03,430 --> 00:26:06,150
eingesetzt wird ja, ist also 
keine Randerscheinung, kein 

539
00:26:06,150 --> 00:26:09,750
Nischending ist schon ist schon 
ein sehr krasser krasser 

540
00:26:09,750 --> 00:26:12,190
Standard da. 
Das heißt, wir sind da in sehr 

541
00:26:12,190 --> 00:26:14,630
guter Gesellschafter, in dem wir
das auch nutzen. 

542
00:26:14,630 --> 00:26:16,750
Also man kann sagen, man macht 
nichts falsch, wenn man sich 

543
00:26:16,750 --> 00:26:18,070
jetzt für Post Quest 
entscheidet. 

544
00:26:18,880 --> 00:26:21,360
Hat man erstmal nichts falsch 
gemacht, dass das würde ich 

545
00:26:21,360 --> 00:26:23,120
jetzt mal vorweg sagen, als 
Fazit. 

546
00:26:23,400 --> 00:26:27,360
Diese Datenbank liefert alles 
was man braucht für also wenn 

547
00:26:27,360 --> 00:26:30,080
ich jetzt nicht gerade irgendwie
was weiß ich die neue Raumfahrt 

548
00:26:30,080 --> 00:26:32,160
aufmache oder so oder die 
nächste Nasa bin, dann muss ich 

549
00:26:32,160 --> 00:26:33,840
vielleicht noch mal nachdenken. 
Aber also wenn ich jetzt 

550
00:26:33,840 --> 00:26:36,440
irgendwie eine Webanwendung 
mache auch eine Komplexe, dann 

551
00:26:36,440 --> 00:26:38,720
bin ich mit und auch mit vielen 
Daten, dann bin ich mit Postgras

552
00:26:38,720 --> 00:26:41,440
auf der sicheren Seite. 
Witzig, dass du es gerade sagst.

553
00:26:41,480 --> 00:26:44,680
Man begegnet mich gerade die 
Mondlandung, also ich glaube 69 

554
00:26:44,680 --> 00:26:49,120
oder so ne krasser Weise. 
Als du sagtest, Anfang der 80er,

555
00:26:49,120 --> 00:26:51,720
hat man da in Berkeley 
angefangen mit der Datenbank und

556
00:26:51,720 --> 00:26:53,040
man hat sich erstmal 
beschäftigt. 

557
00:26:53,190 --> 00:26:55,270
Halt da verschiedene Datentypen 
überhaupt abbildet und so weiter

558
00:26:55,270 --> 00:26:57,510
und dachte so hm 11 Jahre vorher
ist man schon irgendwie zum Mond

559
00:26:57,510 --> 00:26:58,830
geflogen. 
Also es ging anscheinend 

560
00:26:58,830 --> 00:27:02,350
trotzdem solche Sachen ne ja das
ist mir sowieso n krasses Rätsel

561
00:27:02,350 --> 00:27:03,870
wie die das alles damals gemacht
haben. 

562
00:27:04,030 --> 00:27:06,630
Also das ist das sagen auch die 
Computer ganz anders aus, das 

563
00:27:06,630 --> 00:27:09,390
waren ja Räume und keine 
Computer, das war Wahnsinn. 

564
00:27:09,430 --> 00:27:11,390
Ne, da gibt es ne coole 
Dokumentation. 

565
00:27:11,390 --> 00:27:12,990
Muss man mal gucken. 
Ich weiß nicht wie sie heißt, 

566
00:27:12,990 --> 00:27:15,310
aber es ging über die Technik 
der Mondlandung. 

567
00:27:15,310 --> 00:27:19,230
Ja wer Bock hat kann ich 
empfehlen im Fernsehen das. 

568
00:27:19,400 --> 00:27:25,080
Machen wir okay kleiner Ausflug 
wieder zurück zu Datenbanken und

569
00:27:25,080 --> 00:27:28,160
Post. 
Grass gut, bisschen über die 

570
00:27:28,160 --> 00:27:30,080
Historie gesprochen. 
Wo wird es eingesetzt? 

571
00:27:30,080 --> 00:27:32,960
Es ist extrem verbreitet, du 
sagst man man macht nichts 

572
00:27:32,960 --> 00:27:34,960
falsch wenn man es benutzt, ich 
glaube es ist trotzdem immer 

573
00:27:34,960 --> 00:27:37,360
angeraten noch mal seine 
Anforderungen auf den Prüfstand 

574
00:27:37,360 --> 00:27:40,560
zu stellen und zu gucken ob es 
wirklich passt. 

575
00:27:40,840 --> 00:27:43,960
Aber nichtsdestotrotz eine 
Empfehlung an der Stelle und 

576
00:27:43,960 --> 00:27:46,960
jetzt hast du gesagt wollen wir 
mal die Punkte vom Anfang 

577
00:27:46,960 --> 00:27:50,560
durchgehen und gucken. 
Wie löst, wie werden die dann 

578
00:27:50,560 --> 00:27:53,160
eigentlich gelöst? 
Jetzt bei Post Rescue oder? 

579
00:27:53,830 --> 00:27:55,030
Ja, Post Dress, lass uns 
einfach. 

580
00:27:55,030 --> 00:27:56,910
Ich sag einfach postgruster 
macht es. 

581
00:27:56,910 --> 00:27:59,950
Einfacher Postwest das fair. 
Dann mach ich auch mit. 

582
00:27:59,950 --> 00:28:04,670
Das erste Thema waren die 
Datenstrukturen, ne wie die dort

583
00:28:04,950 --> 00:28:07,670
abgebildet werden können. 
Richtig, richtig. 

584
00:28:09,400 --> 00:28:14,350
Also ich sag es noch mal. 
Wir haben im Prinzip 2 Varianten

585
00:28:14,350 --> 00:28:16,230
von Daten. 
Wir werden also wir können immer

586
00:28:16,230 --> 00:28:20,150
sagen, wenn Daten n Schema haben
oder wenn ich das Gefühl hab, 

587
00:28:20,150 --> 00:28:21,870
ich sag es noch mal, wenn ich 
Daten irgendwie ne Tabelle 

588
00:28:21,870 --> 00:28:24,190
verhaften kann tatsächlich schon
und nicht über Excel nachdenke 

589
00:28:24,190 --> 00:28:26,110
oder irgendsowas. 
Dann sind das immer 

590
00:28:26,110 --> 00:28:29,190
strukturierte Daten, ne. 
Wenn jeder Datensatz eigentlich 

591
00:28:29,190 --> 00:28:31,230
die gleichen Überschriften mal 
hat oder die gleichen 

592
00:28:31,230 --> 00:28:33,470
Eigenschaften richtig in der Art
ne. 

593
00:28:33,470 --> 00:28:35,950
Ja, zum Beispiel. 
Denk nach irgendwie was weiß ich

594
00:28:35,950 --> 00:28:38,430
Studenten, ja die haben die halt
nen Vornamen Nachnamen. 

595
00:28:40,510 --> 00:28:42,670
Was weiß ich nen 
Immatrikulationsdatum oder 

596
00:28:42,670 --> 00:28:44,150
Irgendsowas. 
Ja das sind dann quasi 

597
00:28:44,150 --> 00:28:46,670
Überschriften einer Tabelle, so 
ist es ja auch ne Datenbanken, 

598
00:28:46,670 --> 00:28:49,110
Datenbanken, Tabellen am Ende 
des Tages ja und dann hab ich 

599
00:28:49,110 --> 00:28:51,830
die Überschriften und dann hab 
ich die Einträge in der 

600
00:28:51,830 --> 00:28:55,310
Datenbank sind quasi die Reihen 
einer Tabelle, so also in dem 

601
00:28:55,310 --> 00:28:58,790
Studentenbeispiel bleibt das 
Halt immer gleich der Header und

602
00:28:58,790 --> 00:29:02,030
dann tacker ich die halt runter 
so und dann ist es das sagen wir

603
00:29:02,030 --> 00:29:04,870
nochmal ganz klar also ich hab 
ne Überschrift also. 

604
00:29:05,120 --> 00:29:08,360
Jetzt zum Beispiel Vorname. 
Ich hab die Tabelle students, 

605
00:29:08,560 --> 00:29:12,480
dann habe ich First Name immer 
englisch und der First Name 

606
00:29:12,480 --> 00:29:17,160
dieser dieses Feld, dieser 
Header, der hat jetzt einen 

607
00:29:17,440 --> 00:29:21,630
definierten Datentyp zu haben. 
So der ist zum Beispiel String. 

608
00:29:22,350 --> 00:29:26,270
Ja String sagt dann aber zum 
Beispiel auch ist vielleicht 

609
00:29:26,270 --> 00:29:30,870
darf dann halt maximal 128 
Charakterlang sein, also 128 

610
00:29:30,870 --> 00:29:34,470
Zeichen, wenn der Vorname länger
ist als 128 Zeichen passt es 

611
00:29:34,470 --> 00:29:37,150
halt nicht in das Feld. 
Weil der Datentyp so festgelegt 

612
00:29:37,150 --> 00:29:39,870
ist. 
So ja, muss ich überlegen, passt

613
00:29:39,870 --> 00:29:42,310
das für n Vorname ja 
wahrscheinlich schon. 

614
00:29:42,310 --> 00:29:44,830
Ja ansonsten muss ich n anderen 
Datentyp nehmen, wenn der halt 

615
00:29:44,830 --> 00:29:47,230
länger ist, dann muss ich halt 
Text nehmen, zum Beispiel gibt 

616
00:29:47,230 --> 00:29:49,430
es nen anderen Datentyp, da 
kannst du halt beliebig viele. 

617
00:29:50,830 --> 00:29:53,070
Zeichen reinfügen jetzt kannst 
du sie aber natürlich 

618
00:29:53,070 --> 00:29:58,070
vorstellen, dass nen begrenzter 
String viel effizienter 

619
00:29:58,230 --> 00:30:01,630
abgehandelt wird, sowohl für 
das, für das also für das 

620
00:30:01,630 --> 00:30:03,190
Speichern und für den Memory 
Footprint. 

621
00:30:03,190 --> 00:30:07,070
Ja, als auch beim Lesen und 
schreiben als jetzt ein größerer

622
00:30:07,070 --> 00:30:08,950
Datentyp, das ist halt die 
Kunst. 

623
00:30:08,950 --> 00:30:11,230
Da lege ich mich fest. 
Und wenn ich jetzt aber mich 

624
00:30:11,230 --> 00:30:14,910
festgelegt habe, dass ich sage 
okay ein Student sieht halt 

625
00:30:14,910 --> 00:30:16,870
immer so aus, er hat ein 
Firstname, das ist ein String, 

626
00:30:16,870 --> 00:30:19,070
der hat einen Lastname, ist auch
ein String, dann hat er ihn 

627
00:30:19,070 --> 00:30:21,190
immer artikulationsdatum, das 
ist halt ein. 

628
00:30:21,670 --> 00:30:26,070
Spezielle Date Formate auch n 
Datenformat wie das Halt quasi 

629
00:30:26,070 --> 00:30:28,150
gehalten wird. 
Dann hab ich ein Schema 

630
00:30:28,150 --> 00:30:31,670
definiert, ein Schema ist quasi 
eine Definition. 

631
00:30:32,910 --> 00:30:35,630
Wie meine Daten aus meine 
strukturierten Daten aus 

632
00:30:35,630 --> 00:30:37,630
Versehen haben. 
Ja, also wenn ich immer wenn ich

633
00:30:37,630 --> 00:30:39,550
n Schema habe, dann hab ich im 
Prinzip, dann sprech ich von 

634
00:30:39,550 --> 00:30:42,430
strukturierten Daten ne so und 
dann hab ich noch die Relation 

635
00:30:42,430 --> 00:30:44,470
wenn ich jetzt die Mentoren hab 
das sag ich noch mal kurz als 

636
00:30:44,470 --> 00:30:47,390
Recap, das ist ja wichtig also 
wenn ich jetzt zum Beispiel mit 

637
00:30:47,390 --> 00:30:52,270
Toren hab und jeder Student kann
genau einen Mentor haben, dann 

638
00:30:52,270 --> 00:30:53,870
packe ich jetzt die Mentoren 
nicht mit in die 

639
00:30:53,870 --> 00:30:57,470
Studententabelle weil sonst also
weil weil mehrere Studenten 

640
00:30:57,470 --> 00:31:00,030
können ja auch unter anderem den
gleichen Mentor haben, sonst 

641
00:31:00,030 --> 00:31:02,790
würde ich ja quasi den 
Dateninformationen zu dem Mentor

642
00:31:02,790 --> 00:31:05,390
kopieren müssen. 
Dann würd ich ja sagen, Student 

643
00:31:05,390 --> 00:31:10,030
Alicia oder Irgendsowas hat den 
Mentor Werner Zimmermann oder 

644
00:31:10,030 --> 00:31:11,750
Professor Werner Zimmermann oder
irgend sowas. 

645
00:31:11,750 --> 00:31:14,070
Ja und dann kommt aber der 
Torben, der hatte auch den 

646
00:31:14,070 --> 00:31:16,430
Professor Werner Zimmermann, 
weil der Halt quasi mehrere 

647
00:31:16,430 --> 00:31:18,870
Studenten hat als Mentor. 
Ja, und jetzt müsste ich den 

648
00:31:18,870 --> 00:31:22,390
Werner Zimmermann und seine 
Daten, wenn ich jetzt nur diese 

649
00:31:22,390 --> 00:31:24,870
eine Tabelle hätte, ja in jede 
Zeile wieder mit voll 

650
00:31:24,870 --> 00:31:28,510
reinschreiben, wenn ich schon 
erzähle, macht es keinen Sinn, 

651
00:31:28,670 --> 00:31:31,230
ja, das nennt man dann auch 
Normierung nee Entschuldigung, 

652
00:31:31,230 --> 00:31:33,510
nicht Normierung, sondern 
Normalisierung der Daten, das 

653
00:31:33,510 --> 00:31:35,830
heißt ich. 
Echt, ich guck mir das Problem 

654
00:31:35,830 --> 00:31:39,470
an, ja und sag dann OK macht 
keinen Sinn das in den Süden zu 

655
00:31:39,470 --> 00:31:41,750
machen, sondern ich nehm ne 
eigene Tabelle nur für die 

656
00:31:41,750 --> 00:31:45,230
Mentoren, nenn die Halt Mentors,
hab da quasi auch wieder First 

657
00:31:45,230 --> 00:31:47,190
Name Last Name drin und 
vielleicht n paar andere Daten 

658
00:31:47,190 --> 00:31:48,910
vielleicht für die Mentoren 
relevant sind. 

659
00:31:49,190 --> 00:31:51,030
Seit wann ist der Mentor oder 
was weiß ich? 

660
00:31:51,070 --> 00:31:54,670
Ja und jetzt sage ich, wenn ich 
jetzt den Studenten den Mentor 

661
00:31:54,670 --> 00:31:57,350
zuordnen will, und das ist die 
Relation, das ist wichtig, dass 

662
00:31:57,350 --> 00:32:00,150
das, was Datenbanken gut können,
jetzt sage ich quasi der Primary

663
00:32:00,150 --> 00:32:03,670
Key, also der, wenn ich so sagen
will, der Ro Index ja von dem. 

664
00:32:04,150 --> 00:32:08,670
Von dem Mentor, der steht jetzt 
quasi als Datentyp als weiteres 

665
00:32:08,670 --> 00:32:11,830
Feld bei den Studenten mit drin.
Ja, Mentor ID heißt es dann ja, 

666
00:32:11,830 --> 00:32:14,550
also wie ich bei den students 
First Name Last Name, 

667
00:32:14,750 --> 00:32:17,590
Matriculation Date und Mentor 
ID. 

668
00:32:17,590 --> 00:32:20,630
Ja und dann brauche ich nämlich 
nur noch ne ID einzumalen das 

669
00:32:20,630 --> 00:32:24,310
ist total effizient gespeichert 
und referenziert quasi auf den 

670
00:32:24,310 --> 00:32:26,430
Mentor und wenn jetzt 2 
verschiedene Studenten den 

671
00:32:26,430 --> 00:32:28,350
gleichen Mentor haben, dann 
steht da zweimal eine 1 drin und

672
00:32:28,350 --> 00:32:30,710
dann war es sparsam gespeichert.
Ja, jetzt hast du ja sehr 

673
00:32:30,710 --> 00:32:33,800
allgemein wieder erklärt. 
Was was ist da postkreis 

674
00:32:33,800 --> 00:32:37,000
überlegen anderen Datenbanken an
der Stelle, also was das Thema 

675
00:32:37,000 --> 00:32:38,520
angeht. 
Nein, aber ich habe deswegen so 

676
00:32:38,520 --> 00:32:40,840
ausgeholt, weil ich jetzt einen 
Punkt noch machen möchte. 

677
00:32:41,160 --> 00:32:43,480
Das waren jetzt die 
strukturierten Datenschema, das 

678
00:32:43,480 --> 00:32:45,960
kann Post Grace genauso gut wie 
alle anderen Datenbanken ist, da

679
00:32:46,000 --> 00:32:48,160
weiß ich nicht, wahrscheinlich 
nicht überlegen, aber ich 

680
00:32:48,160 --> 00:32:51,080
glaube, das ist gut 
implementiert haben und jetzt 

681
00:32:51,080 --> 00:32:53,440
hast du es aber manchmal, dass 
das nicht so passt. 

682
00:32:53,480 --> 00:32:56,320
Jetzt hast du manchmal einfach 
Daten, die willst du nicht so, 

683
00:32:56,400 --> 00:32:58,840
also es ist vielleicht ein 
großes Blob an Daten, jetzt hast

684
00:32:58,840 --> 00:33:01,240
du über Jason schon gesprochen, 
nicht auseinandernehmen, aber 

685
00:33:01,240 --> 00:33:03,950
Jason ist quasi. 
Nächsten Objekt kannst du ja 

686
00:33:03,950 --> 00:33:06,030
wieder also mehrere Datenpunkte 
ablegen. 

687
00:33:06,030 --> 00:33:09,430
Ja und jetzt könntest du sagen 
wollen, ich will ein Feld haben,

688
00:33:09,430 --> 00:33:12,150
das heißt halt nicht first nem 
müssen uns dringen, sondern das 

689
00:33:12,150 --> 00:33:16,110
heißt halt irgendwie ich nenn es
mal sogar fast Data um um es 

690
00:33:16,110 --> 00:33:18,270
auszudrücken, dass es gar nicht 
so fest ist, ja. 

691
00:33:18,470 --> 00:33:22,110
Und in diese in den Inhalt 
dieser Zelle quasi. 

692
00:33:22,110 --> 00:33:24,910
Ja von Data will ich jetzt halt 
nicht ins dringen oder n Int 

693
00:33:24,910 --> 00:33:27,030
oder n float oder irgendwas 
definiertes reinschreiben, 

694
00:33:27,030 --> 00:33:29,470
sondern Jason. 
Und n Jason, das kann ja in 

695
00:33:29,470 --> 00:33:32,430
jeder Reihe anders aussehen. 
Ne, das definiere ich dann nicht

696
00:33:32,430 --> 00:33:33,550
mehr. 
Das hat dann im Prinzip kein 

697
00:33:33,550 --> 00:33:37,350
Schema, außer dass es Jason sein
muss, kann dann aber für jeden 

698
00:33:37,510 --> 00:33:39,990
Reiheneintrag, für jeden 
Studenten den ich anlege, kann 

699
00:33:39,990 --> 00:33:42,390
der halt n anderes json haben 
mit anderem Inhalt, ja. 

700
00:33:42,910 --> 00:33:46,630
Das sind so also ich würd nicht 
sagen unstrukturiert, aber 

701
00:33:46,630 --> 00:33:48,870
halbstrukturiert es ist nicht 
mehr ganz so durchstrukturiert, 

702
00:33:48,870 --> 00:33:53,910
ja so und was jetzt aber kommt 
ist das obwohl du Jason da 

703
00:33:53,910 --> 00:33:56,230
reinpackst musst du jetzt nicht 
sagen, das ist jetzt irgendwie n

704
00:33:56,230 --> 00:33:59,550
String und ich sterilisation 
Instinkt sondern postcredit 

705
00:33:59,550 --> 00:34:03,870
kapiert Jason als Datentyp. 
Du kannst jetzt sagen, Data ist 

706
00:34:03,870 --> 00:34:09,400
vom Datentyp Jason und das. 
Kann ich alles? 

707
00:34:09,400 --> 00:34:11,840
Ja, das das muss n Jason sein, 
aber das kann da drin alles 

708
00:34:11,840 --> 00:34:16,120
sein, so und jetzt und jetzt ist
da aber mehr jetzt hat Post 

709
00:34:16,120 --> 00:34:19,600
Dress da davon mehr Logik als zu
sagen das ist jetzt einfach nur 

710
00:34:19,600 --> 00:34:23,719
irgendein Blob oder ein String 
oder Bytes ja sondern es weiß es

711
00:34:23,719 --> 00:34:26,639
ist ein Jason und jetzt kannst 
du bei den Abfragen und bei dem 

712
00:34:26,639 --> 00:34:30,360
Einspielen auf einmal auf extra 
Funktionalität zugreifen. 

713
00:34:30,360 --> 00:34:32,840
Du kannst jetzt zum Beispiel 
Teile von den JSON rausfiltern, 

714
00:34:33,199 --> 00:34:35,280
es weist jetzt nämlich auf 
einmal doch ein bisschen mehr 

715
00:34:35,280 --> 00:34:36,880
als nur, dass da irgendwas 
steht. 

716
00:34:38,000 --> 00:34:39,360
Sondern es kennt die Struktur 
von Jason. 

717
00:34:39,360 --> 00:34:41,960
Es kennt Keys und Values, es 
kann dir bei einer Abfrage zum 

718
00:34:41,960 --> 00:34:43,840
Beispiel Jasons 
Zusammenaggregieren in ein 

719
00:34:43,840 --> 00:34:45,760
großes Jason und so weiter und 
sofort. 

720
00:34:46,750 --> 00:34:50,110
Und das Gleiche gilt für XML. 
Ja, und was ich jetzt sagen will

721
00:34:50,110 --> 00:34:56,310
ist das Post res scheint weil es
nämlich sowohl strukturierte 

722
00:34:56,469 --> 00:35:00,670
Schema basierte Daten als auch 
zum Teil unstrukturierte Daten, 

723
00:35:00,670 --> 00:35:03,030
wenn sie denn in JSON und XML 
aufgeschrieben werden 

724
00:35:03,070 --> 00:35:05,790
unterstützt. 
Das heißt hier verschwimmen 

725
00:35:05,790 --> 00:35:08,990
sogar die Grenzen von den No 
Sequel wie wir so schön sagen 

726
00:35:08,990 --> 00:35:12,350
Databaces, die nur darauf 
optimiert quasi sowas wie Jason 

727
00:35:12,350 --> 00:35:15,350
oder sowas zu speichern, so 
einen strukturierten Krams aber.

728
00:35:15,520 --> 00:35:18,240
Postquest ist da ist, hat da 
nicht kein Feature, sondern das 

729
00:35:18,240 --> 00:35:20,440
kann das halt auch. 
Ja, und das ist besonders stark 

730
00:35:20,440 --> 00:35:22,440
an der Stelle, ja, das würde ich
mal so sagen, das kann nicht 

731
00:35:22,440 --> 00:35:25,640
jede Datenbank hat einen JSON 
Datentyp, ist auch nicht Teil 

732
00:35:25,640 --> 00:35:28,640
vom SQL Standard oder irgend 
sowas heißt ist halt einfach ein

733
00:35:28,640 --> 00:35:32,440
Feature wo Post resql da richtig
coolen Support hat. 

734
00:35:32,600 --> 00:35:35,360
Das heißt, ich kann dann auch 
Currys Abfragen, schreiben 

735
00:35:35,360 --> 00:35:38,360
nutzen, die auf die Inhalte 
dieser Jsons, wie du schon 

736
00:35:38,360 --> 00:35:40,800
sagst, zugreifen. 
Ja, richtig, bis zum Gewissen, 

737
00:35:40,800 --> 00:35:43,600
bis zu gewissen Grenzen und so 
weiter aber genau das stimmt ja,

738
00:35:43,640 --> 00:35:45,800
wir können genau und es gibt 
sogar noch einen Typ. 

739
00:35:45,990 --> 00:35:47,790
Jason B. 
Dann wird das Jason quasi noch 

740
00:35:47,790 --> 00:35:50,830
mal binarisiert und noch mal 
optimierter gespeichert und so. 

741
00:35:50,870 --> 00:35:53,710
Also es gibt da einfach sehr 
viel Support um diese und das 

742
00:35:53,710 --> 00:35:55,430
ist wichtig, weil wir haben ja 
auch schon mal ne Folge gemacht,

743
00:35:55,430 --> 00:35:58,590
Jason ist halt einfach ein 
unglaublich wichtiges 

744
00:35:58,590 --> 00:36:00,590
Austauschformat heute im Web. 
Ja, es ist. 

745
00:36:01,070 --> 00:36:03,590
Also für mich ist das einfach 
die Grundlage von von 

746
00:36:03,590 --> 00:36:04,950
Datenaustausch. 
Und wenn ich natürlich n 

747
00:36:04,950 --> 00:36:08,030
direkten JSON Support hab in der
Datenbank ist halt unglaublich 

748
00:36:08,030 --> 00:36:11,110
cool, ja. 
Und wir nutzen es auch und man 

749
00:36:11,110 --> 00:36:13,270
kann es auch mixen. 
Ja, du kannst halt quasi auch n 

750
00:36:13,270 --> 00:36:15,670
Urroul haben, wo du dann halt 
Datentypen machst, die Fest sind

751
00:36:16,310 --> 00:36:19,150
und dann hast du so n hast du so
n für flexiblere Sachen hast du 

752
00:36:19,150 --> 00:36:20,830
einfach n Jason, was du noch mit
dran klebst. 

753
00:36:20,830 --> 00:36:23,190
Ja und dann bist du auf einmal 
hast du ne sehr mächtige 

754
00:36:23,790 --> 00:36:26,150
Konstrukt gebaut wie du deine 
Daten halten kannst. 

755
00:36:26,630 --> 00:36:30,830
Ja das zu Datenstrukturen, also 
da kann Post Quest also quasi im

756
00:36:30,830 --> 00:36:33,190
Prinzip alles bedienen was man 
so braucht. 

757
00:36:33,350 --> 00:36:35,310
Ich würde mal ein Beispiel 
machen, vielleicht soll er dich 

758
00:36:35,310 --> 00:36:36,670
dazu fragen. 
Ich hab. 

759
00:36:36,880 --> 00:36:39,840
Jetzt meine meine meinen 
Eintrag, meine Row in dem Fall 

760
00:36:39,840 --> 00:36:42,640
meinetwegen jetzt also Kunden, 
ich rede jetzt über CRM, 

761
00:36:42,640 --> 00:36:44,240
Customer Relationship 
management, ich habe da die 

762
00:36:44,240 --> 00:36:47,160
Kunden und dann habe ich einen 
Header oder ein Feld, das heißt 

763
00:36:47,160 --> 00:36:52,280
Notes, Notizen und das könnte 
ich als JSON deklarieren und 

764
00:36:52,280 --> 00:36:56,640
dann kann ich in dem JSON als 
erstes sage ich mal dynamisch im

765
00:36:56,640 --> 00:36:59,640
Laufe der Nutzung dieser 
Anwendung Note 1, Note 2, Note 

766
00:36:59,640 --> 00:37:02,840
3, Note 4 et cetera anlegen, 
also jeweils als Key und dann in

767
00:37:02,840 --> 00:37:05,120
value die jeweilige Notiz da 
reintippen so. 

768
00:37:06,400 --> 00:37:08,440
Der eine Eintrag kann ja 
meinetwegen 3 Notizen haben. 

769
00:37:08,440 --> 00:37:10,760
Der nächste Eintrag hat nur eine
Notiz, der nächste hat 

770
00:37:10,760 --> 00:37:12,840
vielleicht 50 oder sowas. 
Also sowas könnte ich ja damit 

771
00:37:12,840 --> 00:37:13,880
eigentlich ganz gut abbilden 
dann. 

772
00:37:14,390 --> 00:37:17,150
Das kannst du machen. 
Ja, das kannst du machen und die

773
00:37:17,150 --> 00:37:19,190
wird sofort schwindelig, weil 
man immer wieder dann drüber 

774
00:37:19,190 --> 00:37:23,350
nachdenkt, ist das gut oder 
nicht, von der ja, das nennt 

775
00:37:23,350 --> 00:37:25,030
sich also, das nennt sich 
Normalisierung. 

776
00:37:25,030 --> 00:37:27,750
Ja, es gibt, das ist auch 
mathematisch, also das Wort 

777
00:37:27,750 --> 00:37:30,190
Normalisierung heißt quasi im 
Prinzip, ich guck mir meine 

778
00:37:30,190 --> 00:37:34,710
ganzen Daten an und analysiere 
deren interne Abhängigkeiten und

779
00:37:34,710 --> 00:37:37,950
Versuche, und eigentlich also 
wenn man, wenn man 

780
00:37:37,950 --> 00:37:40,870
Normalisierung ganz ernst nimmt 
und nicht über Jason nachdenkt, 

781
00:37:40,870 --> 00:37:42,990
dann ist das eigentlich genau 
nicht, wie man es macht, was du 

782
00:37:42,990 --> 00:37:45,160
sagst, die Notiz. 
En würde man nämlich 

783
00:37:45,160 --> 00:37:47,440
normalerweise, wenn es eine 
normalisierte Datenbank ist, die

784
00:37:47,440 --> 00:37:50,920
voll mit strukturierten Daten 
voll ist, dann würde man quasi 

785
00:37:50,920 --> 00:37:56,280
ein Notizendabelle anlegen, wo 
du einfach die Notizen weißt. 

786
00:37:56,280 --> 00:37:59,400
Du und jetzt Referenziere ist 
eine Relation, weil du hast 

787
00:37:59,400 --> 00:38:01,920
gesagt, der Kunde der kann 
Notizen haben. 

788
00:38:02,880 --> 00:38:05,880
So jetzt habe ich dann halt, 
dann habe ich halt eine runto 

789
00:38:05,880 --> 00:38:09,240
many connection von den Notizen 
zu dem Kunden, also habe ich 

790
00:38:09,240 --> 00:38:12,400
eben notiztabelle würde ich dann
quasi eine Kunden id haben so. 

791
00:38:12,600 --> 00:38:14,880
Und jetzt Gerrit. 
Jetzt merkst du schon, und das 

792
00:38:14,880 --> 00:38:18,430
ist halt. 
Die Kunst heute ja, die Kunst 

793
00:38:18,430 --> 00:38:23,230
ist, wie designe ich meine 
Datenbank, wie designe ich meine

794
00:38:23,230 --> 00:38:26,870
Anwendungslogik? 
Weil ich halt diese Mittel habe 

795
00:38:26,870 --> 00:38:28,710
zur Verfügung. 
Ja, mach ich es jetzt als Jason 

796
00:38:28,710 --> 00:38:30,590
oder nicht? 
Ja, es kann auch manchmal 

797
00:38:30,590 --> 00:38:34,630
vorteilhaft sein, die Datenbank 
nicht komplett mit Schema und 

798
00:38:34,630 --> 00:38:37,190
strukturierten Daten 
aufzusetzen, nicht alles in 3000

799
00:38:37,190 --> 00:38:40,110
tables aufzuteilen, weil, und 
das kannst du dir vorstellen. 

800
00:38:40,550 --> 00:38:43,910
Es führt zu Overhead. 
Ja, sowohl beim Einfügen, ja 

801
00:38:43,910 --> 00:38:45,870
weil wenn ich wenn ich jetzt 
wenn du jetzt neuen Eintrag 

802
00:38:45,870 --> 00:38:49,030
einfügen willst, dann musst du 
ja nicht nur in der Tabelle 

803
00:38:49,350 --> 00:38:52,110
Kunden irgendwas einfügen, 
sondern auch in der Tabelle 

804
00:38:52,110 --> 00:38:54,870
Notizen und so weiter und wenn 
du jetzt sag ich mal n großes 

805
00:38:54,870 --> 00:38:58,270
Gewebe hast wo du 40 Tabellen 
irgendwie wo sich 40 Tabellen 

806
00:38:58,270 --> 00:39:00,990
aufeinander beziehen um einen 
quasi logischen Datenpunkt 

807
00:39:00,990 --> 00:39:04,470
abzubilden mit deren ganzen 
Abhängigkeiten, dann kann das 

808
00:39:04,470 --> 00:39:06,270
auch irgendwann langsam werden 
und man. 

809
00:39:06,440 --> 00:39:08,240
Ist besser beraten, man packt 
dann so ein paar Sachen einfach 

810
00:39:08,240 --> 00:39:10,640
in Jason rein, so wie du es 
gesagt hast, fette ich aus ja 

811
00:39:10,920 --> 00:39:12,480
plus und das sage ich auch noch 
mal. 

812
00:39:13,000 --> 00:39:15,600
Wenn du jetzt was in eine neue 
Version führst, wenn du sagst, 

813
00:39:15,840 --> 00:39:18,720
verflixt, wir brauchen jetzt 
hier noch nicht nur Notizen, 

814
00:39:18,720 --> 00:39:21,840
sondern noch irgendwas anderes, 
dann fängst du ja an meiner 

815
00:39:21,840 --> 00:39:24,520
Datenbank so eine Art schima 
Evolution, so heißt das 

816
00:39:24,520 --> 00:39:26,960
fachworte du änderst dein 
Schema, weil du neue 

817
00:39:26,960 --> 00:39:29,160
strukturierte Daten oder die 
strukturierten Daten ändern 

818
00:39:29,160 --> 00:39:31,040
musst. 
Und das ist kompliziert, wenn 

819
00:39:31,040 --> 00:39:33,800
deine Tabelle schon Daten drinne
hat, dann brauchst du eine 

820
00:39:33,800 --> 00:39:36,320
Migration, dann musst du quasi 
von dem einen Status in den 

821
00:39:36,320 --> 00:39:38,990
neuen. 
Standard, dass man Tabellen 

822
00:39:38,990 --> 00:39:42,110
migriert, aber der Aufwand ist 
umso höher, desto mehr 

823
00:39:42,110 --> 00:39:44,470
strukturierte Daten du hast. 
Wenn du unstrukturierte Daten 

824
00:39:44,470 --> 00:39:46,630
hast, Cheat You Goal, dann sagst
du halt OK. 

825
00:39:46,630 --> 00:39:48,790
In den Notizen kannst du jetzt 
noch das und das abspeichern und

826
00:39:48,790 --> 00:39:50,790
klatschtest halt mit in dein 
json rein, wie du es gesagt hast

827
00:39:50,790 --> 00:39:52,950
da. 
Da das richtige Mittel zu 

828
00:39:52,950 --> 00:39:55,110
finden, da müssen wir halt die 
Software Architekten Fragen, ja 

829
00:39:55,110 --> 00:39:59,350
das aber die Technologie bietet 
es dir halt ja die Datenbank, du

830
00:39:59,350 --> 00:40:02,150
kannst dir aussuchen ne. 
Doch wenn dein Fass aufgemacht. 

831
00:40:02,470 --> 00:40:06,270
OK, Entschuldigung ja. 
Wurden ausgeschlagen. 

832
00:40:08,000 --> 00:40:09,720
Na. 
Ja, alles klar, aber das sind ja

833
00:40:09,720 --> 00:40:11,200
genau die Insights, die halt 
spannend sind. 

834
00:40:11,200 --> 00:40:13,320
Ja, also. 
Es ist halt auch ja, und es ist 

835
00:40:13,320 --> 00:40:14,480
für mich auch spannend jedes 
Mal. 

836
00:40:14,480 --> 00:40:17,120
Ja, es ist deswegen, es ist 
früher war es fast einfacher, 

837
00:40:17,120 --> 00:40:19,360
ja, da konnten wir halt einfach 
nicht Jason abspeichern, da 

838
00:40:19,360 --> 00:40:22,280
musstest du halt deine Notizen 
einfach normalisieren und dann 

839
00:40:22,280 --> 00:40:24,920
war es ganz fertig, die gesagt 
Garrett, deine Notizendings da, 

840
00:40:24,920 --> 00:40:26,840
das ist wieder ein Array in dem 
Rohr, sondern ist einfach eine 

841
00:40:26,840 --> 00:40:29,200
notizentabelle und ist links da 
drauf, fertig ist der Lack, 

842
00:40:29,720 --> 00:40:31,680
manchmal ist es ja auch eine 
Strafe, wenn man zu viele 

843
00:40:31,680 --> 00:40:33,520
Möglichkeiten hat. 
Ich wollte gerade sagen, wenn 

844
00:40:33,520 --> 00:40:36,040
man weniger weiß, so wie ich, 
dann hat man auch nicht so viele

845
00:40:36,040 --> 00:40:37,200
Auswahlmöglichkeiten. 
Ja, genau. 

846
00:40:37,480 --> 00:40:39,080
Das ist auch so. 
Ja, auch der. 

847
00:40:39,390 --> 00:40:41,190
Softwareentwickler hat es 
manchmal gar nicht so einfach. 

848
00:40:41,190 --> 00:40:43,670
Ja, weil er zu viel weiß. 
Man kann sich da nicht 

849
00:40:43,670 --> 00:40:47,640
entscheiden. 
Dann lassen wir weitermachen. 

850
00:40:47,640 --> 00:40:48,440
Wir. 
Machen mal weiter. 

851
00:40:48,440 --> 00:40:50,400
Wir sind jetzt fertig mit den 
Daten, mit den Datenstrukturen, 

852
00:40:50,400 --> 00:40:53,760
ich komme zum nächsten Thema, Es
war auslesen und schreiben, also

853
00:40:53,760 --> 00:40:56,760
möglichst schnell, jetzt gucken 
wir hier was macht Postquest 

854
00:40:56,760 --> 00:41:00,200
beim Auslesen, was machen alle 
Datenbanken beim Auslesen so 

855
00:41:00,200 --> 00:41:02,920
Punkt ja also wenn ich irgendwas
finden will sagen wir mal wir 

856
00:41:02,920 --> 00:41:05,480
haben da eine Excel Tabelle 
wieder ich bleibe jetzt mal bei 

857
00:41:05,480 --> 00:41:07,480
den Studenten die hatten wir ja 
am Anfang ja und ich will jetzt 

858
00:41:07,480 --> 00:41:10,800
einen bestimmten Studenten 
finden so wenn ich jetzt nichts 

859
00:41:10,800 --> 00:41:13,200
mache dann. 
Muss ich, dann muss der Computer

860
00:41:13,200 --> 00:41:15,920
auch wieder Mensch Reihe für 
Reihe angucken. 

861
00:41:16,040 --> 00:41:20,760
Scrollst es durch, bist du halt 
was weiß ich Bob Marley oder 

862
00:41:20,760 --> 00:41:26,000
irgendwas findest du ja in Reihe
1734 so bis dahin gescrollt und 

863
00:41:26,000 --> 00:41:27,720
wenn er weiter hinten steht hast
du halt Pech gehabt. 

864
00:41:29,600 --> 00:41:31,400
Das ist natürlich nicht, was 
Datenbanken machen, sondern 

865
00:41:31,400 --> 00:41:34,720
Datenbanken machen. 
Sogenannte Indizierung Indexing 

866
00:41:34,720 --> 00:41:36,080
hat man vielleicht auch schon 
mal gehört. 

867
00:41:36,080 --> 00:41:38,400
Ja, und was heißt Indexing 
heißt? 

868
00:41:39,630 --> 00:41:42,830
Ich nehme halt meine Einträge, 
die ich habe. 

869
00:41:42,910 --> 00:41:46,230
Und jetzt sage ich zum Beispiel 
ein bestimmter Header, also eine

870
00:41:46,230 --> 00:41:49,910
Column in meinem in meiner 
Tabelle, die optimiere ich jetzt

871
00:41:49,910 --> 00:41:51,630
dazu, dass sie gesucht werden 
kann. 

872
00:41:52,430 --> 00:41:54,470
Das wird immer auf dem Primary 
Key sowieso gemacht. 

873
00:41:54,470 --> 00:41:56,950
Also der ne die die ID quasi der
der Reihe. 

874
00:41:57,430 --> 00:41:59,310
Es kann aber zum Beispiel auch 
passieren und nicht ganz oft 

875
00:41:59,310 --> 00:42:01,750
Frage, wenn ich zum Beispiel 
ganz oft nach dem nach dem First

876
00:42:01,750 --> 00:42:04,950
Name Suche und will halt alle 
sehen die den First Name Alice 

877
00:42:04,950 --> 00:42:08,110
haben zum Beispiel ja da kann 
ich die Color First Name 

878
00:42:08,110 --> 00:42:12,030
indizieren und indizieren heißt 
ich guck mir das quasi alles an 

879
00:42:12,030 --> 00:42:16,470
und ich speichere eine zweite 
Datenstruktur hin und das ist 

880
00:42:16,470 --> 00:42:19,070
das ist jetzt Computer Theorie 
das sind B Trees nennt man das 

881
00:42:19,510 --> 00:42:21,510
oder auch Hashes und so weiter 
da gibt es verschiedene 

882
00:42:21,510 --> 00:42:24,150
Algorithmen und da. 
Quest übrigens auch. 

883
00:42:24,150 --> 00:42:27,270
Deswegen postest du es cool. 
Postquest hat im Prinzip alle 

884
00:42:27,710 --> 00:42:32,030
coolen Indexierungs Algorithmen 
implementiert, ja für alle 

885
00:42:32,030 --> 00:42:35,270
möglichen Anwendungsfälle. 
Ja, manchmal will ich quasi 

886
00:42:35,270 --> 00:42:38,030
direkt was finden, wo ich sage, 
ich will finden wo der Name 

887
00:42:38,030 --> 00:42:41,550
gleich ist, ja oder wo irgendwas
größer kleiner ist oder so 

888
00:42:41,550 --> 00:42:44,190
ähnlich ist wie oder ich habe so
eine fulltext Suche, das ist 

889
00:42:44,190 --> 00:42:47,670
alles verschiedene Anforderungen
an das gleiche Problem, ich will

890
00:42:47,670 --> 00:42:51,400
schnell irgendwas finden. 
Und da hat Postquest sehr geile 

891
00:42:51,400 --> 00:42:54,000
indexing Algorithmen und bietet 
das an. 

892
00:42:54,520 --> 00:42:58,520
Indexing heißt immer, ich habe 
etwas mehr Memory Verbrauch, das

893
00:42:58,520 --> 00:43:01,360
ist die Backside, aber ich bin 
schneller beim Suchen also 

894
00:43:01,360 --> 00:43:03,480
entweder bin ich langsam beim 
Suchen und habe fast keinen 

895
00:43:03,480 --> 00:43:06,720
Brauch kein extra Memory oder 
ich speichere mir quasi 

896
00:43:06,720 --> 00:43:09,040
zwischenstrukturen die mir das 
Suchen erleichtern damit ich 

897
00:43:09,040 --> 00:43:11,440
schneller habe ich schneller 
gesucht und habe etwas mehr 

898
00:43:11,440 --> 00:43:13,720
Memory gebraucht das erinnert. 
Mich gerade so ein bisschen an 

899
00:43:13,720 --> 00:43:16,880
irgendwelche. 
Suchmaschinen, zum Beispiel 

900
00:43:16,880 --> 00:43:18,720
Google, die fangen ja auch nicht
in dem Moment an, das Internet 

901
00:43:18,720 --> 00:43:21,480
zu durchsuchen, wo ich dann 
meine Suchanfrage tippe, sondern

902
00:43:21,480 --> 00:43:24,080
dass es vorher schon die ganze 
Zeit, ich sag mal, gescrapt oder

903
00:43:24,800 --> 00:43:27,640
eingelesen, und ich springe dann
an die richtige Stelle und und. 

904
00:43:28,310 --> 00:43:30,150
Ganz genau. 
Geh bitte das raus, das ist 

905
00:43:30,150 --> 00:43:32,710
irgendwo zwischengespeichert. 
Das ist Ultra hart indexiert bei

906
00:43:32,710 --> 00:43:35,070
Google, denn die mal die 
antizipieren ja schon, was du 

907
00:43:35,070 --> 00:43:37,870
noch nicht getippt hast und 
suchen damit schon auch los. 

908
00:43:37,870 --> 00:43:40,670
Ja, gleichzeitig mit mehrfach 
und so weiter und sofort ja das 

909
00:43:40,670 --> 00:43:42,390
ist Ultra krass. 
Ja genau. 

910
00:43:42,910 --> 00:43:44,390
OK so. 
Das muss natürlich parallel 

911
00:43:44,390 --> 00:43:46,990
passieren und so weiter und 
sofort ja, aber das verbirgt 

912
00:43:46,990 --> 00:43:50,830
sich hinter dem Auslesen, da ist
es also, das das was wichtigste 

913
00:43:50,830 --> 00:43:51,950
ist. 
Ist, da sind die indexing 

914
00:43:51,950 --> 00:43:55,430
Algorithmen ja, also auslesen 
ist immer das einfachere 

915
00:43:55,430 --> 00:43:58,230
Problem, das Informatischere ja 
weil wenn du liest manipulierst 

916
00:43:58,230 --> 00:44:00,870
du ja nicht die Datenquelle ja 
das kannst du immer auch sehr 

917
00:44:00,870 --> 00:44:03,470
schnell parallel machen, also da
passiert nichts, lesen halt alle

918
00:44:03,470 --> 00:44:06,070
gleichzeitig shit egal. 
Aber wenn alle gleichzeitig 

919
00:44:06,070 --> 00:44:08,590
schreiben hast du einen 
Riesenschmerzer schreiben ist ja

920
00:44:08,590 --> 00:44:11,920
so viel komplizierter als lesen.
Immer in der Informatik und bei 

921
00:44:11,920 --> 00:44:15,280
Datenbanken halt auch. 
Ja so und jetzt und da ist 

922
00:44:15,280 --> 00:44:19,680
glaube ich Post richtig richtig 
schnell ist und glaube 1 der 

923
00:44:19,680 --> 00:44:22,480
besten also meiner Meinung nach 
besten Datenbanken System ist 

924
00:44:22,480 --> 00:44:26,200
ist für das parallele 
ultraschnelle reinschreiben weil

925
00:44:26,200 --> 00:44:27,920
sich die Herren ich gehe da 
jetzt nicht in die Technik rein,

926
00:44:27,920 --> 00:44:30,160
aber die Herren haben sich Daten
haben sich sehr viele Gedanken 

927
00:44:30,160 --> 00:44:34,880
gemacht wie schaffe ich es wenn 
zig Anfragen zum Schreiben 

928
00:44:34,880 --> 00:44:38,640
gleichzeitig kommen. 
Und die schnell zu verarbeiten 

929
00:44:38,640 --> 00:44:41,280
und sogar vielleicht, also in 
der gleichen Datenbank. 

930
00:44:42,150 --> 00:44:43,270
Da gibt es ja verschiedene 
Tabellen. 

931
00:44:43,270 --> 00:44:45,550
Ja, vielleicht kommt eine 
Anfrage, die schreibt in Tabelle

932
00:44:45,550 --> 00:44:48,550
students was rein und die andere
Anfrage schreibt in die Tabelle 

933
00:44:49,350 --> 00:44:52,630
usernay Users rein oder Mentors 
oder oder oder courses oder 

934
00:44:52,630 --> 00:44:53,990
irgend sowas ja. 
Und die dann auch in 

935
00:44:53,990 --> 00:44:56,310
Abhängigkeit voneinander sind. 
Vielleicht sogar das oder auch 

936
00:44:56,310 --> 00:44:57,910
nicht. 
Ja, und jedenfalls sortiert und 

937
00:44:57,910 --> 00:44:59,110
du musst dich darum nicht 
kümmern. 

938
00:44:59,230 --> 00:45:02,110
Postgre sortiert das für dich 
aus und das was parallel 

939
00:45:02,110 --> 00:45:05,390
geschrieben werden kann, wird 
parallel gemacht, da wo ich kurz

940
00:45:05,390 --> 00:45:07,550
locken muss und aufpassen muss, 
dass ich da nichts ins Gefecht 

941
00:45:07,550 --> 00:45:09,670
kommt und ich irgendwie so eine 
Art Race condition habe oder 

942
00:45:09,670 --> 00:45:11,070
deadlocks ja, das kann auch 
passieren. 

943
00:45:11,880 --> 00:45:15,480
Das ist unglaublich kompliziert,
dass ich durch das eine Locken 

944
00:45:15,880 --> 00:45:18,760
der andere festsitzt, der gerade
eigentlich was machen muss. 

945
00:45:18,920 --> 00:45:22,000
Das entstehen Deadlocks und das 
ist alles gelöst. 

946
00:45:22,000 --> 00:45:24,160
Es gibt Deadlock, 
Auflösungsalgorithmen und und 

947
00:45:24,160 --> 00:45:26,560
und und und es ist alles 
furchtbar schnell und es wird 

948
00:45:26,560 --> 00:45:29,600
nur minimal quasi die Datenbank 
für den minimalen Zeitpunkt und 

949
00:45:29,600 --> 00:45:33,520
für den minimale Größe quasi 
gesperrt und gelockt, so dass 

950
00:45:33,520 --> 00:45:36,280
ich Max mit maximaler 
Geschwindigkeit Daten rein 

951
00:45:36,280 --> 00:45:37,840
Semmeln kann in meine Post 
Racer. 

952
00:45:39,000 --> 00:45:43,520
Da sie glaube ich besser als 
viele andere Systeme so, und sie

953
00:45:43,520 --> 00:45:49,110
nennen das selber mvcc. 
Multiversion concurrency Control

954
00:45:49,110 --> 00:45:53,110
glaub ich MVCC Multi Version 
bezieht sich dann quasi auf den 

955
00:45:53,110 --> 00:45:56,990
Status, auf den Status der 
Datenbank, ne diesen also diesen

956
00:45:56,990 --> 00:45:59,150
Zustand. 1. 
Jetzt kommt n ne ne Einfügung, 

957
00:45:59,150 --> 00:46:01,430
ja das ist dann quasi und danach
es gibt ne neue Version der 

958
00:46:01,430 --> 00:46:04,390
Datenbank, so sprechen die 
Datenbanken, also nicht Version 

959
00:46:04,390 --> 00:46:06,790
von Postcrest, sondern eine 
Version vom Inhalt quasi ja 

960
00:46:07,110 --> 00:46:09,830
Inhalt zur Version 10 und dann 
kommt ein Insert und dann ist 

961
00:46:09,830 --> 00:46:12,870
was anderes, dann ist quasi die 
Version 11 und Multi Version 

962
00:46:12,870 --> 00:46:16,110
concurrency control heißt halt 
quasi ich hab halt hier 

963
00:46:16,110 --> 00:46:18,150
parallele Inser. 
Dann entstehen parallele 

964
00:46:18,150 --> 00:46:19,470
Versionen und so weiter und 
alles wird wieder 

965
00:46:19,470 --> 00:46:21,870
zusammengeführt und zusammen zum
Schluss bleibt da ein homogenes,

966
00:46:21,870 --> 00:46:23,830
kohärentes Bild und die 
Datenbank korrumpiert nicht 

967
00:46:23,830 --> 00:46:26,630
innen drin. 
Ne, das haben Sie gut gelöst. 

968
00:46:26,990 --> 00:46:29,830
So Standard and open Source, da 
brauche ich glaube ich nicht 

969
00:46:29,830 --> 00:46:31,950
Auswahl. 
Also wer Open BSD ist die Open 

970
00:46:31,950 --> 00:46:35,030
Source Lizenz, also postgas ist 
Open Source kostet nichts, es 

971
00:46:35,030 --> 00:46:40,640
gibt unglaublich viele. 
Software drumherum weil es Open 

972
00:46:40,640 --> 00:46:42,000
Source ist. 
Wir haben Leute dazu 

973
00:46:42,000 --> 00:46:44,880
beigetragen. 
Du kannst es im Docker starten, 

974
00:46:44,880 --> 00:46:47,960
die Datenbank, es gibt Support 
dafür, du kannst sogenannte 

975
00:46:47,960 --> 00:46:50,640
Object Relational Models dran 
ziehen, es gibt 

976
00:46:50,640 --> 00:46:54,240
sprachunterstützung, es gibt 
Extrafunktionen, die später noch

977
00:46:54,240 --> 00:46:55,760
hinzu kamen. 
Ich habe ja immer schon gesagt, 

978
00:46:55,760 --> 00:46:59,520
dieses geographische suchen, 
Volltextsuche wurde später noch 

979
00:46:59,520 --> 00:47:02,160
in Drangestückt, es gibt Tools, 
die können dir quasi eine 

980
00:47:02,160 --> 00:47:05,800
gegebene Datenbank, das sind 
autoscantools, da wird dir quasi

981
00:47:05,800 --> 00:47:08,040
mitgeteilt, was ist da alles 
drin, welche Table, du kannst 

982
00:47:08,040 --> 00:47:11,110
direkt weitermachen. 
Es gibt die Tools zum Verwalten,

983
00:47:11,110 --> 00:47:13,150
zum UI, mäßigen angucken. 
Was ist. 

984
00:47:13,150 --> 00:47:15,910
In meiner Datenbank sieht es aus
PG Admin zum Beispiel ist ein 

985
00:47:15,910 --> 00:47:18,230
krasses Tool, PG Admin 4 glaube 
ich sehr aktuelle Version. 

986
00:47:19,350 --> 00:47:22,390
Das sind halt alles ja Vorteile,
die dadurch zustande kommen, 

987
00:47:22,390 --> 00:47:26,310
dass es erstens Open Source ist 
und nichts kostet, denn dann 

988
00:47:26,310 --> 00:47:28,510
muss, sonst müsste ja jeder 
Entwickler erstmal hier Gebühr 

989
00:47:28,510 --> 00:47:30,070
einzahlen, damit er was 
entwickeln kann. 

990
00:47:30,070 --> 00:47:33,190
Muss ja testen ja und zweitens 
weil es durch krasser Standard 

991
00:47:33,190 --> 00:47:35,830
ist. 
Ja es QL Standard nach Papier, 

992
00:47:35,830 --> 00:47:38,190
das heißt du kannst halt auch 
irgendwelche, du kannst halt 

993
00:47:38,190 --> 00:47:41,030
einfach Post Quest nutzen, wenn 
du auch nur einfach SQL 

994
00:47:41,030 --> 00:47:43,910
bedienst, kannst du sagen okay 
ist mir eigentlich egal was da 

995
00:47:43,910 --> 00:47:45,830
für eine Datenbank ist. 
Post funktioniert auf jeden 

996
00:47:45,830 --> 00:47:47,670
Fall, weil es halt auf jeden 
Fall den SQL Standard 

997
00:47:47,670 --> 00:47:50,760
implementiert. 
Mega Mega, Mega wichtiger Punkt.

998
00:47:50,760 --> 00:47:53,920
Ja, haben Sie sehr gut gelöst. 
Ja, das ist schon cool, das habe

999
00:47:54,520 --> 00:47:56,200
ich schon auch gar nicht 
bedacht, was da noch alles an 

1000
00:47:56,200 --> 00:47:59,320
Tools dann rundherum entsteht, 
die auch wieder aus der 

1001
00:47:59,320 --> 00:48:01,960
Community kommen und wieder für 
die Community freigegeben werden

1002
00:48:01,960 --> 00:48:03,680
etc. 
Und die können ja nur aus der 

1003
00:48:03,680 --> 00:48:07,000
Community kommen, wenn es vorher
quasi nichts gekostet hat, denn 

1004
00:48:07,000 --> 00:48:10,200
sonst kommen sie alle nur vom 
vom Enterprise Hersteller, der 

1005
00:48:10,200 --> 00:48:12,360
Datenbank von Oracle dann die 
haben natürlich auch ihre Tools,

1006
00:48:12,920 --> 00:48:15,560
aber die sind halt alle von 
Oracle, da entwickelt ja keiner 

1007
00:48:15,560 --> 00:48:18,240
nen Open Source 
datenbankmanagement Tool. 

1008
00:48:18,240 --> 00:48:21,150
Also gut vielleicht schon. 
Aber der, der, der müsste dann 

1009
00:48:21,150 --> 00:48:23,870
schon auch sehr 
leidenschaftsvoll sein, ne da 

1010
00:48:23,990 --> 00:48:26,430
dafür bezahlen Open Source Tools
dann zu ja gibt es. 

1011
00:48:26,430 --> 00:48:28,310
Alles weiß, da gibt es 
sicherlich auch Partnerschaften,

1012
00:48:28,310 --> 00:48:30,550
dann bestimmt und so. 
Gibt es, gibt es alles, gibt es 

1013
00:48:30,550 --> 00:48:32,310
gibt nichts, was nicht gibt, 
aber ich sag mal so, also wenn 

1014
00:48:32,310 --> 00:48:35,430
es halt von vornherein open 
Source war, ist er halt einfach 

1015
00:48:35,430 --> 00:48:39,150
der das Portfolio der Auswahl 
größer, also riesig. 

1016
00:48:39,350 --> 00:48:43,430
Ja, das ist schon okay, das ist 
ganz klar für uns der Weg, den 

1017
00:48:43,430 --> 00:48:46,880
wir gehen, ja. 
So und dann zu diesen Events und

1018
00:48:46,880 --> 00:48:49,200
zu diesen inneren Logiken und so
weiter da gibt es, das erzähle 

1019
00:48:49,200 --> 00:48:50,720
ich gar nicht so viel zu. 
Wir hatten ja auch gerade, 

1020
00:48:50,720 --> 00:48:52,840
glaube ich, ein Beispiel schon 
genannt, wo man es gebrauchen 

1021
00:48:52,840 --> 00:48:54,960
kann. 
Anderes Beispiel ist Token 

1022
00:48:54,960 --> 00:48:57,040
Exploration zum Beispiel, das 
kann jeder sich vorstellen, da 

1023
00:48:57,040 --> 00:48:59,000
ist zum Beispiel so ein Session 
Token logs sich quasi eine 

1024
00:48:59,000 --> 00:49:02,120
Webseite und dann sagt man ja 
immer okay, das läuft halt 

1025
00:49:02,120 --> 00:49:05,080
irgendwie eine halbe Stunde und 
dann ist das quasi abgelaufen 

1026
00:49:05,080 --> 00:49:07,960
expired und dieses Experimente, 
das Ganze ist auch ein 

1027
00:49:07,960 --> 00:49:10,120
klassisches Ding was direkten 
Datenbank verhaften kannst. 

1028
00:49:10,120 --> 00:49:13,280
Du kannst sagen okay wenn das 
Token insert wurde, dann setzt 

1029
00:49:13,280 --> 00:49:15,680
du gleich mal einen u date ja 30
Minuten. 

1030
00:49:15,910 --> 00:49:18,350
Zukunft muss das automatisch 
gelöscht werden? 

1031
00:49:18,350 --> 00:49:21,510
Ne dieses Token, ja das kannst 
du machen, ne und das kannst du 

1032
00:49:21,510 --> 00:49:23,950
machen mit einer 
Programmiersprache, die ist 

1033
00:49:23,950 --> 00:49:25,950
jetzt da gibt es mehrere, da 
gibt es Unterstützung glaub ich 

1034
00:49:25,950 --> 00:49:29,550
für für Pearl und was weiß ich 
aber es also es Postgress bietet

1035
00:49:29,550 --> 00:49:33,070
so ne kleine Makro. 
Business Programmiersprache, in 

1036
00:49:33,070 --> 00:49:35,430
der du das ausdrücken kannst. 
Ja, und damit kannst du diese 

1037
00:49:35,430 --> 00:49:38,350
ganzen wichtigen anderen Events,
Sachen, Triggers, kleine 

1038
00:49:38,350 --> 00:49:39,870
Businesslogiken und so weiter 
ausdrücken. 

1039
00:49:39,870 --> 00:49:42,790
Ja, also auch prima gelöst. 
Kann man gut verstehen, liest 

1040
00:49:42,790 --> 00:49:44,830
man immer ne Doku und dann hat 
man das gemacht, ja. 

1041
00:49:45,750 --> 00:49:47,310
Und dann? 
Delta Analytics, hatte ich 

1042
00:49:47,310 --> 00:49:51,120
gesagt, ideale Datenbank. 
Bietet da auch da Features und 

1043
00:49:51,120 --> 00:49:54,200
auch hier Postcredit bietet ein 
sogenanntes Windowing mit allen 

1044
00:49:54,200 --> 00:49:56,600
möglichen statistischen 
Funktionen vor. 

1045
00:49:56,600 --> 00:50:00,120
Hinterlegt, da kannst du einfach
benutzen und kriegst halt super 

1046
00:50:00,120 --> 00:50:03,560
cool statistisch reduzierte 
Datensätze aus deinen großen 

1047
00:50:03,560 --> 00:50:05,920
Tabellen in 
Wahnsinnsgeschwindigkeit auch 

1048
00:50:05,920 --> 00:50:09,040
fertig, auch cool, also da fehlt
auch an nichts, selbst wenn man 

1049
00:50:09,040 --> 00:50:10,760
jetzt, wenn der Anwendungsfall 
ist. 

1050
00:50:10,760 --> 00:50:12,920
Ich mache ein bisschen mehr 
Numerik, ein bisschen Data 

1051
00:50:12,920 --> 00:50:15,600
Science ist man bei Postwest 
jetzt auch nicht angeschmiert. 

1052
00:50:16,480 --> 00:50:17,640
Dann haben wir den Punkt auch 
schon durch. 

1053
00:50:17,640 --> 00:50:21,200
Ja, also die Sachen, die für 
Postcrash sprechen hast du mal 

1054
00:50:21,200 --> 00:50:24,950
aufgezählt. 
Und ja, ich glaub zuletzt 

1055
00:50:24,950 --> 00:50:27,470
hattest du noch gesagt, wolltest
du schon noch mal kurz n 

1056
00:50:27,470 --> 00:50:29,830
Überblick geben, was es dann 
eigentlich noch gibt da draußen?

1057
00:50:29,830 --> 00:50:33,070
Was sind die Alternativen im 
Bereich SQL oder Secret oder 

1058
00:50:33,070 --> 00:50:34,510
auch No secret? 
Ich weiß es Grad nicht. 

1059
00:50:34,590 --> 00:50:36,710
Was da noch war, also jetzt, die
alte hat bei den Alternativen 

1060
00:50:36,710 --> 00:50:39,030
würde ich mich jetzt beschränken
auf die auf die relationalen 

1061
00:50:39,030 --> 00:50:42,630
Kollegen, ansonsten gibt es 
einfach viel zu viele und es 

1062
00:50:42,630 --> 00:50:45,510
entstehen auch immer wieder neue
und auch sehr gute Projekte und 

1063
00:50:45,630 --> 00:50:49,040
und und alle. 
Es ist auch gerechtfertigt. 

1064
00:50:49,040 --> 00:50:51,040
Ja, es gibt zum Beispiel, ich 
sag's mal nur gerade aus Spaß, 

1065
00:50:51,040 --> 00:50:53,440
aber es gibt zum Beispiel diese 
Vector Datenbanken, dann stehe 

1066
00:50:53,440 --> 00:50:55,720
ich jetzt gerade ganz neue Sorte
von Datenbanken, die halt 

1067
00:50:55,720 --> 00:50:59,560
einfach nur hoch optimiert sind 
für diesen Use Case KI und 

1068
00:50:59,560 --> 00:51:02,400
einfach diese Gewichte zu 
speichern, das ist ja aber auch 

1069
00:51:02,400 --> 00:51:05,480
klar, also postcaz hat ja nicht 
den Anspruch nur eine KI 

1070
00:51:05,480 --> 00:51:08,680
Datenbank zu sein, sondern genau
den Anspruch was ich gesagt 

1071
00:51:08,680 --> 00:51:11,080
habe, eine ideale Datenbank mit 
all diesen. 

1072
00:51:11,320 --> 00:51:13,440
Features eigentlich schon oder? 
Also schon sehr. 

1073
00:51:13,680 --> 00:51:16,760
Purple ja breit, breit, aber 
trotzdem in der Tiefe. 

1074
00:51:17,840 --> 00:51:20,400
Jedes einzelne Feature sehr gut 
und effizient realisiert. 

1075
00:51:20,400 --> 00:51:23,720
Ja, das ist halt der Punkt. 
Aber natürlich wenn deine wenn 

1076
00:51:23,720 --> 00:51:25,310
deine Voraussetzungen. 
Was ich mache? 

1077
00:51:25,310 --> 00:51:29,070
Eine Datenbank, die nur KI 
Gewichte speichern kann, sonst 

1078
00:51:29,070 --> 00:51:31,430
nichts können muss. 
Na ja, dass die dann in der 

1079
00:51:31,430 --> 00:51:33,750
Performance gewinnt ist 
wahrscheinlich ist. 

1080
00:51:33,750 --> 00:51:35,310
Ist ja auch n unfairer 
vergleichbar ja, aber die hab 

1081
00:51:35,310 --> 00:51:37,910
ich jetzt mal kurz rausgelassen 
ne also wir wir vergleichen 

1082
00:51:37,910 --> 00:51:42,030
jetzt mal zu Datenbanken, also 
zu RDBMS wie man so schön sagt, 

1083
00:51:42,030 --> 00:51:46,990
Relational Database Management 
Systems, die also auch mal SQL 

1084
00:51:47,630 --> 00:51:50,230
Standard implementieren und so 
weiter also eine gewisse Breite 

1085
00:51:50,230 --> 00:51:52,910
auch darbieten wie jetzt Post 
Racer, denn sonst ist der 

1086
00:51:52,910 --> 00:51:55,200
Vergleich unfair. 
So und dann. 

1087
00:51:55,200 --> 00:51:58,320
Ich gehe kurz durch, also das 
sind auch nicht so viele, nur 

1088
00:51:58,320 --> 00:52:02,520
die wichtigsten, bekannteste, 
vielleicht die 2 bekanntesten. 

1089
00:52:02,520 --> 00:52:05,320
Ich fange mit dem einen an, ist 
my Sequel, das ist so auch die 

1090
00:52:05,320 --> 00:52:09,720
Zeit, sag mal die Zeit der 90er 
2000 er oder der Lambstack, also

1091
00:52:09,720 --> 00:52:14,080
ganz viele erste Webseiten haben
mit My Secret Datenbank Apache 

1092
00:52:14,520 --> 00:52:18,400
Server da da, da kommt dann mit 
My Secret arbeiten und so von 

1093
00:52:18,400 --> 00:52:20,800
Sun Micro Systems 2000 nee, nee,
gar nicht. 

1094
00:52:20,920 --> 00:52:25,800
Quatsch, was natürlich hier von 
95 von My Secret ab gestartet 

1095
00:52:25,800 --> 00:52:28,590
und dann von Sun. 
Übernommen und ganz jetzt gehört

1096
00:52:28,590 --> 00:52:32,190
es glaub ich zu Oracle seit 2010
ne Lizenz ist. 

1097
00:52:32,870 --> 00:52:37,070
Seitdem es zu Oracle gehört 
natürlich ne Commercial licence,

1098
00:52:37,070 --> 00:52:40,550
aber es ist Dual lizenziert. 
Du kannst es auch unter der GPL 

1099
00:52:40,550 --> 00:52:42,950
Open Source Lizenz nehmen, GPL 
allerdings. 

1100
00:52:44,430 --> 00:52:47,270
Zwingt dich dazu, deinen 
eigenen, deinen eigenen Code, 

1101
00:52:47,270 --> 00:52:49,350
den du drumherum schreibst, auch
zu öffnen. 

1102
00:52:49,710 --> 00:52:51,790
Das hab ich mir gerade gedacht. 
Ja, das werden die ja kaum dann 

1103
00:52:51,790 --> 00:52:54,510
als Open Source erlauben und 
dann Kloß du das daraus zu 

1104
00:52:54,510 --> 00:52:55,750
machen. 
Genau. 

1105
00:52:55,750 --> 00:52:57,710
Und jetzt mal kurz die 
Unterschiede. 

1106
00:52:57,710 --> 00:53:01,790
Also My Secret ist auch einfach 
ein super System heutzutage, 

1107
00:53:02,310 --> 00:53:05,030
performt auch super, ist 
vielleicht sogar etwas besser, 

1108
00:53:05,030 --> 00:53:08,070
wenn man jetzt nur lesen will, 
also man. 

1109
00:53:08,960 --> 00:53:11,920
Harrt viel, schnell parallel 
auslesen will, was immer die 

1110
00:53:11,920 --> 00:53:14,280
Anwendung ist. 
Wenn du der Anwendungsfall ist. 

1111
00:53:14,280 --> 00:53:16,400
Wenn du jetzt Webseiten 
bespielen willst mit Content 

1112
00:53:16,400 --> 00:53:18,640
einfach ganz viel rausspielen 
willst, ja und nicht so viel 

1113
00:53:18,640 --> 00:53:21,750
reinspielst ja. 
Genau dafür. 

1114
00:53:21,750 --> 00:53:24,630
Dafür gab es dann in im My 
Secret ganz am Anfang auch so 

1115
00:53:24,630 --> 00:53:26,990
Engines dahinter die eine 
Engine, die konnte gar keine 

1116
00:53:26,990 --> 00:53:29,550
Transaktionen verwalten, da 
musstest du heute aufpassen, 

1117
00:53:29,550 --> 00:53:31,350
dass du nicht durcheinander 
kamst, dass du quasi immer 

1118
00:53:31,350 --> 00:53:33,430
atomisch, quasi diese Inserts 
gemacht hast. 

1119
00:53:33,430 --> 00:53:37,870
Ja, also nix hier mit Multi. 
Die Virgin Cunca Cancy Control 

1120
00:53:38,230 --> 00:53:41,590
später kam noch n anderes ne 
andere Engine inno DB hieß die 

1121
00:53:41,590 --> 00:53:44,350
die konnte das dann, das war 
aber nie so richtig cool 

1122
00:53:44,350 --> 00:53:48,670
designed von vornherein wie wie 
jetzt bei Postquest da auch der 

1123
00:53:48,670 --> 00:53:51,270
der die die die 
Standardimplementierung ist ist 

1124
00:53:51,270 --> 00:53:55,310
kompletter bei Post Quest als 
bei my Sequel ich muss das alles

1125
00:53:55,310 --> 00:53:58,950
bitte mit Vorsicht, denn überall
geht die Entwicklung weiter und 

1126
00:53:58,950 --> 00:54:02,680
so weiter und wir sind jetzt ja.
Die Systeme sind alle schon 

1127
00:54:03,080 --> 00:54:05,480
lange, lange nach langen Jahren 
angefangen und die sind alle 

1128
00:54:05,480 --> 00:54:07,360
sehr, sehr reif und sehr weit. 
Ja, also. 

1129
00:54:07,400 --> 00:54:09,400
Du hast doch mal gesagt, meine 
ich und das hab ich auch schon 

1130
00:54:09,400 --> 00:54:11,560
häufiger mal aufgefasst. 
Das ist auch ähnlich wie bei 

1131
00:54:11,560 --> 00:54:13,600
Programmiersprachen. 
Hab ich jetzt mal. 

1132
00:54:13,600 --> 00:54:17,080
Wenn irgendwas gut kannst und 
das ist völlig aus der Welt 

1133
00:54:17,080 --> 00:54:19,280
gefallen, ist so aus der Zeit 
gefallen, dann bleibt dabei ja. 

1134
00:54:19,320 --> 00:54:21,600
Genau, ganz genau. 
Ja, ja, und man sieht auch, ich 

1135
00:54:21,600 --> 00:54:23,960
will auch und hier muss ich auch
kurz vorsichtig sein, ich hab 

1136
00:54:23,960 --> 00:54:27,920
das auch mit KI hier mir ran 
geholt die Informationen weil es

1137
00:54:27,920 --> 00:54:31,360
einfach wer nutzt das quasi also
ich wollte euch mal erzählen. 

1138
00:54:31,590 --> 00:54:33,030
My Secret ist halt auch 
verbreitet. 

1139
00:54:33,030 --> 00:54:36,230
Ja, und ich hab gefunden, dass 
Facebook My Secret genutzt hat, 

1140
00:54:36,230 --> 00:54:38,710
initialy Build muchoffice 
Infrastructure using My secret 

1141
00:54:38,710 --> 00:54:41,710
steht hier ja, also Air BNB und 
github. 

1142
00:54:41,710 --> 00:54:44,590
Ja, das sind jetzt auch keine 
kleinen Institutionen und so, 

1143
00:54:44,910 --> 00:54:47,910
die basieren auf auf auf My SGL 
kann man nehmen ja überhaupt gar

1144
00:54:47,910 --> 00:54:49,630
kein Problem. 
Das zweite große 

1145
00:54:49,630 --> 00:54:53,470
Buttonbanksystem ist natürlich 
Oracle, also ich würde sagen, du

1146
00:54:53,470 --> 00:54:56,070
hast selber gesagt, die haben 
auch glaube ich am allerersten 

1147
00:54:56,070 --> 00:54:58,630
gestartet, historisch gesehen 77
Larry. 

1148
00:54:58,760 --> 00:55:02,200
Allison hat das schon gestartet 
und ist einfach das.de facto. 

1149
00:55:02,200 --> 00:55:04,720
Das ist ein krasses 
Datenbanksystem, wenn du Geld 

1150
00:55:04,720 --> 00:55:07,320
hast. 
Wenn du Geld hast, weil Oracle 

1151
00:55:07,320 --> 00:55:09,320
nichts hier Open Source ist, 
halt musst. 

1152
00:55:09,320 --> 00:55:12,320
Du ist für Enterprise Business 
ist gedacht, da schmeißt du Geld

1153
00:55:12,320 --> 00:55:15,080
ein, hast du aber auch einen 
krassen Support und hast ein 

1154
00:55:15,080 --> 00:55:19,280
mega gutes Produkt da ist also 
performt überall genauso gut 

1155
00:55:19,280 --> 00:55:23,800
oder besser wie Postgress und 
kostet aber halt Geld, das ist 

1156
00:55:23,800 --> 00:55:26,360
ein großer Unterschied in meiner
Liste fällt es da draus, weil 

1157
00:55:26,360 --> 00:55:28,920
ich finde. 
Ja, also ich würde halt Oracle 

1158
00:55:28,920 --> 00:55:30,640
alleine aus diesem Grund nicht 
einsetzen. 

1159
00:55:31,080 --> 00:55:35,640
Amazon Nasa at also die 
amerikanische Telekom at t. 

1160
00:55:36,510 --> 00:55:38,710
Setzen auf Oracle da gibt es 
noch ganz viele andere als 

1161
00:55:38,710 --> 00:55:40,710
Beispiel. 
So, dann haben wir den Microsoft

1162
00:55:40,710 --> 00:55:44,350
SQL Server, den kennen auch 
viele, die jetzt sehr viel im 

1163
00:55:44,350 --> 00:55:47,750
Windows System in der Windows 
Welt unterwegs sind, hier haben 

1164
00:55:47,750 --> 00:55:50,590
wir aber auch keine Open Source 
Lizenz, ist auch ein Commercial.

1165
00:55:51,030 --> 00:55:54,430
Produkt ja, und für mich klarer 
Nachteil. 

1166
00:55:54,430 --> 00:55:57,310
Das ist halt Microsoft SQL, das 
heißt es ist halt irgendwie 

1167
00:55:57,630 --> 00:56:00,550
krass auf den Windows Stack auf 
die Microsoft Technologie 

1168
00:56:00,550 --> 00:56:02,750
verhaftet. 
Ja ich bin ja von Hause aus ein 

1169
00:56:02,750 --> 00:56:05,590
Linux Manager und wenn man das 
halt nicht ist. 

1170
00:56:05,790 --> 00:56:07,910
Auch Superprodukt. 
Ja, ich hab auch hier n paar 

1171
00:56:07,910 --> 00:56:11,950
Beispiele Stack Overflow als wir
mal dieses Nutzen go Daddy, JP 

1172
00:56:11,950 --> 00:56:15,590
Morgan und zig mehr ja noch mal 
so n paar rausgepickt. 

1173
00:56:16,350 --> 00:56:19,150
Und dann haben wir Maria DB, 
muss ich sagen, kenn ich auch. 

1174
00:56:19,150 --> 00:56:22,150
Vom Namen hab ich noch nie 
genutzt, ist irgendwie der 

1175
00:56:22,270 --> 00:56:24,910
quasi, wenn ich es richtig 
verstanden hab der Open Source 

1176
00:56:24,910 --> 00:56:28,110
Teil von My secret geworden, 
nachdem Oracle hatte ich ja 

1177
00:56:28,110 --> 00:56:31,390
gesagt My Secret übernommen hat.
Haben sich da Entwickler 

1178
00:56:31,390 --> 00:56:35,550
abgespalten und quasi den Open 
Source Gedanken von My Secret 

1179
00:56:35,550 --> 00:56:39,750
weitergetragen und getauft in 
Maria DB auch GPR Lizenz, also 

1180
00:56:39,750 --> 00:56:44,750
Open Source. 
Und hat auch die waren ja auch 

1181
00:56:44,750 --> 00:56:46,550
nicht faul und haben sich 
hingelegt, sondern haben auch 

1182
00:56:46,550 --> 00:56:49,390
weitergemacht und haben viel 
Performance für vor allen Dingen

1183
00:56:49,390 --> 00:56:51,950
für Datenanalyse noch 
hingeschrieben. 

1184
00:56:51,950 --> 00:56:54,630
Hier Features like Column Store 
und so weiter müsst ihr selber 

1185
00:56:54,630 --> 00:56:57,150
nachlesen, kann ich nur auch 
sagen, habe ich noch nicht 

1186
00:56:57,150 --> 00:57:00,430
benutzt, wie gesagt kann dann 
auch für solche Anwendungsfälle 

1187
00:57:00,430 --> 00:57:04,070
cool sein, Wikipedia habe ich 
gefunden, nutzt angeblich Maria 

1188
00:57:04,070 --> 00:57:08,110
DB im Hintergrund die Deutsche 
Bank angeblich auch wie gesagt 

1189
00:57:08,470 --> 00:57:10,320
ohne Gewähr. 
Diese. 

1190
00:57:10,560 --> 00:57:12,240
Aussagen, aber ich glaube der 
spannende Fakt ist ja hier 

1191
00:57:12,240 --> 00:57:14,640
tatsächlich, dass es aus Mexiko 
hervorgegangen ist. 

1192
00:57:14,640 --> 00:57:18,560
In dem Moment, wo das dann eben 
in Oracle aufgegangen ist. 

1193
00:57:18,760 --> 00:57:21,360
Insofern kann man auch relativ 
sicher sein, dass wenn man jetzt

1194
00:57:21,360 --> 00:57:23,680
Anwendungen hatte, wo eine My 
Sequel Datenbank hinterstand 

1195
00:57:23,680 --> 00:57:26,000
eine Webseite, dass man die 
wahrscheinlich relativ easy in 

1196
00:57:26,440 --> 00:57:29,720
den Maria DB System umgetauft 
bekommt, dann habe ich als 

1197
00:57:29,720 --> 00:57:32,280
letztes eine, die ist ganz 
anders als alle, also die ist 

1198
00:57:32,280 --> 00:57:34,080
eigentlich nicht nur richtig 
nicht richtig vergleichbar, 

1199
00:57:34,080 --> 00:57:37,440
Sequel Light, SQL light 
geschrieben ist. 

1200
00:57:37,680 --> 00:57:42,080
Eine Sequel Datenbank aber ganz 
anders irgendwie als alle 

1201
00:57:42,080 --> 00:57:45,990
anderen, weil weil sie. 
Alle ihre Daten, die Sie 

1202
00:57:45,990 --> 00:57:49,510
speichert, in ein einzelnes File
reinspeichert da also die. 

1203
00:57:49,510 --> 00:57:54,030
Diese Datenbank wurde quasi 
gemacht um auf sowas wie ganz 

1204
00:57:54,030 --> 00:57:58,470
Hardware schwachen Geräten wie 
Embedded Devices und so weiter 

1205
00:57:58,750 --> 00:58:01,750
trotzdem. 
Daten zu halten ja die n 

1206
00:58:01,750 --> 00:58:04,190
gewissen Anspruch an Komplexität
und Relationalität haben. 

1207
00:58:04,190 --> 00:58:06,350
Ja ist richtig cool, kann man 
mal wissen. 

1208
00:58:06,350 --> 00:58:09,350
Ja Sequelight ist auch schnell 
installiert ja das das läuft 

1209
00:58:09,350 --> 00:58:12,670
halt immer dann wenn du ja wenn 
und man kann auch viele 

1210
00:58:12,670 --> 00:58:15,630
Instanzen von Sequelite haben, 
ja weil die braucht halt in sich

1211
00:58:15,630 --> 00:58:17,910
kaum kaum Speicher, er ist total
schlank. 

1212
00:58:19,640 --> 00:58:21,600
Benutzt halt dieses eine File 
wie gesagt als ganze Datenbank, 

1213
00:58:21,600 --> 00:58:23,920
das ist sonst nicht der Fall, so
Post West. 

1214
00:58:23,920 --> 00:58:26,120
Datenbanken sind ja auch darauf 
aufgelegt irgendwie riesige 

1215
00:58:26,120 --> 00:58:29,360
Enterprise Systeme zu bedienen. 
Ist secret mit Absicht nicht 

1216
00:58:29,360 --> 00:58:33,800
leicht, leicht und klein 
gehalten und findet. 

1217
00:58:34,080 --> 00:58:38,000
Man findet man viel auf so Edge 
Devices, also und zum Beispiel 

1218
00:58:38,000 --> 00:58:40,920
im Google Chrome. 
Angeblich. 

1219
00:58:40,920 --> 00:58:44,040
Ich habe es auch nicht im Code 
nachgelesen, aber angeblich zum 

1220
00:58:44,040 --> 00:58:46,520
Beispiel diese Browser Story ist
und so weiter die jeder 

1221
00:58:46,520 --> 00:58:50,440
Entwickler der Frontend macht 
kennt basieren quasi auf 

1222
00:58:50,440 --> 00:58:54,040
Seculite würde auch Sinn machen.
Die User Preferences and Browser

1223
00:58:54,040 --> 00:58:57,000
history. 
Solche Dinge, genau da steht 

1224
00:58:57,000 --> 00:59:00,560
wohl ein bisschen secret hinter.
Ja, das waren jetzt mal die, die

1225
00:59:00,560 --> 00:59:03,640
diese 5, die ich noch mal nennen
wollte, also ich gehe sie noch 

1226
00:59:03,640 --> 00:59:05,880
mal durch, My secret, hatte ich 
gesagt, Oracle. 

1227
00:59:06,430 --> 00:59:10,990
Datenbanksystem Microsoft Secret
Server und Maria DB als 

1228
00:59:10,990 --> 00:59:13,030
Nachfolger von Mysqal und am 
Secret. 

1229
00:59:14,720 --> 00:59:16,480
Mal so 5 rausgepickt. 
Es gibt viele, viele, viele 

1230
00:59:16,480 --> 00:59:20,640
mehr, aber in dem im Vergleich 
zu diesen 5 steht sich über 

1231
00:59:20,640 --> 00:59:24,040
Postcrestian nichts nach. 
Ja und wie gesagt hat halt auch 

1232
00:59:24,040 --> 00:59:27,960
eine eine der schönsten Open 
Source Lizenzen und so Docker 

1233
00:59:27,960 --> 00:59:31,080
Support kann man also kann ich 
empfehlen wenn man wenn man 

1234
00:59:31,080 --> 00:59:33,440
jetzt einfach mal eine Datenbank
braucht muss man nicht unbedingt

1235
00:59:33,440 --> 00:59:35,680
ganz viel nachdenken, kann 
einfach zu Post West greifen, 

1236
00:59:35,680 --> 00:59:38,320
das wird schon funktionieren 
letzte Frage. 

1237
00:59:38,400 --> 00:59:40,360
Letzte Frage, wenn man zur Post 
greift, was heißt das? 

1238
00:59:40,440 --> 00:59:42,320
Das installiert man sich dann 
über. 

1239
00:59:42,600 --> 00:59:44,600
Als Entwickler weiß man das wie 
man das Macht oder? 

1240
00:59:44,960 --> 00:59:49,040
Ja, ich hoffe. 
Also ich finde, wenn man heute 

1241
00:59:49,040 --> 00:59:51,680
in der Datenbank zu einer 
Datenbank greift, wie du sagst 

1242
00:59:51,680 --> 00:59:56,400
Gerät, dann greift man, dann 
greift man ins Docker. 

1243
00:59:56,400 --> 01:00:00,520
Also man geht auf eine Docker 
Registry, es gibt official 

1244
01:00:00,520 --> 01:00:03,960
Images für die Official Images, 
die sind quasi geprüft, nicht 

1245
01:00:03,960 --> 01:00:06,510
von irgendjemandem. 
Von irgendeinem Entwickler 

1246
01:00:06,510 --> 01:00:09,710
opensource Beiträge alles was es
dann quasi geprüfte offizielle 

1247
01:00:09,910 --> 01:00:12,830
Images Stocker Images für die 
Datenbanken ja so auch für 

1248
01:00:12,830 --> 01:00:15,630
Postgress, dann kriegst du das 
im Container im Docker 

1249
01:00:15,630 --> 01:00:17,790
Container, da läuft die 
Datenbank drin sauber in 

1250
01:00:17,790 --> 01:00:20,270
Capsulated die Daten wenn du das
ordentlich machst. 

1251
01:00:20,750 --> 01:00:24,190
Speicherst du quasi persistierst
du über nen Volume Mount, so 

1252
01:00:24,190 --> 01:00:26,270
nennt man das Dockerfolge 
gehabt. 

1253
01:00:26,270 --> 01:00:30,670
Ja ist wunderbar und dann kannst
du ne businesslogik Anklemmen in

1254
01:00:31,070 --> 01:00:34,270
auch im besten Fall ist steht im
Dockercontainer in der Sprache, 

1255
01:00:34,270 --> 01:00:37,590
in der Technologie deiner Wahl. 
Denn die Verbindung zu der 

1256
01:00:37,590 --> 01:00:40,590
Datenbank funktioniert über Web 
Requests. 

1257
01:00:40,750 --> 01:00:44,230
Ja, ist alles gelöst. 
Da gibt es zig Bibliotheken, 

1258
01:00:44,230 --> 01:00:46,790
muss man sich, kann man einfach,
da hat man quasi nen Datenbank 

1259
01:00:46,790 --> 01:00:49,110
Klienten ne in der Technologie 
die du halt brauchst. 

1260
01:00:49,110 --> 01:00:51,470
Bei uns no JS. 
Ganz oft ja. 

1261
01:00:51,470 --> 01:00:55,110
Und dann gibt es zig Klienten in
Note TS, die mit Posts arbeiten 

1262
01:00:55,310 --> 01:00:57,110
und dann hab ich alle schön 
sauber verteilt, hab meine 

1263
01:00:57,110 --> 01:00:59,430
Datenbank da kann die updaten 
mit dem Container zur nächsten 

1264
01:00:59,430 --> 01:01:00,670
Version und so weiter und sofort
ja. 

1265
01:01:01,430 --> 01:01:03,910
Wenn man n bisschen Docker kann,
ist man in 10 Minuten soweit und

1266
01:01:03,910 --> 01:01:06,550
hat ne Datenbank fertig. 
Ja, kann loslegen. 

1267
01:01:06,550 --> 01:01:08,190
Irgendwann muss ich es auch noch
mal ausprobieren. 

1268
01:01:08,590 --> 01:01:09,510
Ja, kannst du mal machen. 
Ich zeig. 

1269
01:01:09,510 --> 01:01:11,990
Es dir Grad zu machen, n 
bisschen juckt sie mich ja, je 

1270
01:01:11,990 --> 01:01:13,870
mehr wir sprechen, desto mehr 
juckt es mich, auch mal 

1271
01:01:13,870 --> 01:01:17,390
irgendwas ausprobieren, ne. 
Ja, aber gut, ja, Zeit muss 

1272
01:01:17,390 --> 01:01:18,590
gefunden werden. 
Gut. 

1273
01:01:18,950 --> 01:01:20,950
Apropos Zeit, Ich würde sagen, 
passt. 

1274
01:01:20,950 --> 01:01:23,910
Wir haben über ne Stunde 
gemacht, war richtig cool und ja

1275
01:01:23,910 --> 01:01:27,750
wir hoffen das erfüllt jetzt 
auch die Hörerfragen und 

1276
01:01:27,750 --> 01:01:30,750
Kommentare die es da gab dafür 
auf jeden Fall danke für diese 

1277
01:01:30,750 --> 01:01:33,950
für diesen Input und für dieses 
Piksen ja bitte hier und dazu 

1278
01:01:33,950 --> 01:01:37,270
noch mal was machen, das freut 
uns immer wenn da so ein 

1279
01:01:37,270 --> 01:01:39,110
Feedback kommt, also gerne 
weiter so. 

1280
01:01:39,230 --> 01:01:41,950
Ansonsten vielen Dank Burkhard. 
Ja, gerne hat Spaß gemacht 

1281
01:01:41,950 --> 01:01:42,630
heute. 
Ja, fand ich. 

1282
01:01:42,630 --> 01:01:46,320
Auch fand ich auch genau. 
Bis in 2 Wochen bei einfach 

1283
01:01:46,320 --> 01:01:47,320
komplex. 
Ciao ciao. 

1284
01:01:47,480 --> 01:01:51,040
Tschüss aus Hamburg, einfach. 
Komplex wird präsentiert und 

1285
01:01:51,040 --> 01:01:53,480
produziert von heißem Ware. 
Wir freuen uns auf deine Fragen 

1286
01:01:53,480 --> 01:01:56,080
und 
deinfeedbackanpodcast@heiseweb.com

1287
01:01:56,280 --> 01:01:58,840
vielen Dank fürs Hören dieser 
Folge bis Dienstag in 2 Wochen 

1288
01:01:58,840 --> 01:01:59,800
und Tschüss aus Hamburg.
