-
Die
Erfindung betrifft ein Infotainmentsystem und ein Computerprogrammprodukt
zum Betreiben des Infotainmentsystems.
-
Infotainmentsysteme
sind beispielsweise in modernen Kraftfahrzeugen eingebaut und verknüpfen die
Vermittlung von Informationen, so z. B. Navigationsdaten, und von
Unterhaltungsdaten, so z. B. TV- oder Musikdaten. Die Speicherung
und Verwaltung dieser sogenannten Infotainmentdaten erfolgt vorzugsweise
mittels eines Datenbanksystems.
-
Ein
modernes Datenbanksystem umfasst regelmäßig eine Datenbank und ein
Datenbankverwaltungssystem. In der Datenbank sind die Daten gespeichert.
Das Datenbankverwaltungssystem ist vorgesehen zum Verwalten der
Daten in der Datenbank. Das Verwalten der Datenbank kann beispielsweise ein
Suchen, ein Lesen und/oder ein Schreiben von Daten in der Datenbank
umfassen. Insbesondere können
nicht mehr aktuelle Daten aktualisiert werden durch einen Aktualisierungsbefehl,
der eine Kombination aus Such-, Lese- und/oder Schreibbefehlen umfasst.
-
Aufgabe
der Erfindung ist es, ein Infotainmentsystem und ein Computerprogrammprodukt zum
Betreiben des Infotainmentsystems zu schaffen, das eine effiziente
Speicherung von Infotainmentdaten ermöglicht.
-
Die
Aufgabe der Erfindung wird gelöst
durch die Merkmale der unabhängigen
Ansprüche.
Vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen angegeben.
-
Die
Erfindung zeichnet sich bezüglich
eines ersten Aspekts aus durch ein Infotainmentsystem, das eine
relationale Datenbank, die auf einem Speichermedium gespeichert
ist, und ein Datenbankverwaltungssystem umfasst. Das Datenbankverwaltungssystem
ist ausgebildet, auf Infotainmentdaten zu zugreifen, die in der
relationalen Datenbank als Datensätze abgespeichert sind. Ein
Datensatz weist eine eindeutige Kennung des Datensatzes und zumindest
eine Tabelleneigenschaft auf. Zumindest die eindeutige Kennung des
jeweiligen Datensatzes ist in einer Eigenschaftswerttabelle in der
relationalen Datenbank gespeichert. Die Eigenschaftswerttabelle
repräsentiert
einen entsprechenden Wert der Tabelleneigenschaft des jeweiligen
Datensatzes. Dies ermöglicht
eine besonders effiziente Speicherung der Infotainmentdaten in der
relationalen Datenbank, insbesondere dadurch, dass die zumindest
eine Tabelleneigenschaft nicht in der jeweiligen Eigenschaftswerttabelle
gespeichert ist, sondern durch die jeweilige Eigenschaftswerttabelle
selbst repräsentiert
wird. Die relationale Datenbank und das Datenbankverwaltungssystem
können
beispielsweise als eine Funktionseinheit in dem Infotainmentsystem
integriert sein. Grundsätzlich
ist es aber auch möglich,
dass die relationale Datenbank und das Datenbankverwaltungssystem
als separate Funktionseinheiten dem Infotainmentsystem zugeordnet
sind. Vorzugsweise ist das Infotainmentsystem als Computersystem
ausgebildet. Die Daten der jeweiligen Eigenschaftswerttabelle sind
vorzugsweise bezüglich
ihrer räumlichen Anordnung
zusammenhängend
auf dem Speichermedium gespeichert.
-
In
einer vorteilhaften Ausgestaltung des ersten Aspekts weist der jeweilige
Datensatz die eindeutige Kennung des Datensatzes und die zumindest eine
Tabelleneigenschaft und zumindest eine weitere Eigenschaft auf.
Dabei sind die eindeutige Kennung und die zumindest eine weitere
Eigenschaft des jeweiligen Datensatzes in der Eigenschaftswerttabelle gespeichert.
Die zumindest eine weitere Eigenschaft kann beispielsweise als zumindest
ein Datenpaket, so z. B. ein BLOB (Binary Large Object), ausgebildet sein.
Vorzugsweise ist die zumindest eine weitere Eigenschaft als Datensatzattribut
ausgebildet.
-
In
einer weiteren vorteilhaften Ausgestaltung des ersten Aspekts sind
in der relationalen Datenbank Tabellendatensätze zumindest einer Metadatentabelle
gespeichert. Mittels der Metadatentabelle ist abhängig von
dem entsprechenden Wert der zumindest einen Tabelleneigenschaft
des jeweiligen Datensatzes die entsprechende Eigenschaftswerttabelle
referenzierbar. Die zumindest eine Metadatentabelle ist vorzugsweise
separat in der relationalen Datenbank abgespeichert. Abhängig von
der Metadatentabelle können
vorzugsweise alle in der relationalen Datenbank gespeicherten Eigenschaftswerttabellen
ermittelt werden. Grundsätzlich
ist es auch möglich
abhängig
von dem Wert der dem jeweiligen Datensatz zugeordneten Tabelleneigenschaft,
die zugeordnete Eigenschaftswerttabelle zu ermitteln, wobei der
Wert beispielsweise mittels einer Anweisung vorgegeben werden kann.
Abhängig
von derselben oder beispielsweise einer weiteren Anweisung kann
dann auf die zumindest eine weitere Eigenschaft und somit auf die
Infotainmentdaten lesend und/oder schreibend zugegriffen werden.
Dies ermöglicht
einen besonders schnellen Zugriff auf die Infotainmentdaten und ermöglicht gleichzeitig
eine besonders effiziente Speicherung der Infotainmentdaten.
-
In
einer weiteren vorteilhaften Ausgestaltung des ersten Aspekts ist
das Datenbankverwaltungssystem ausgebildet, abhängig von zumindest einer vorgegebenen
Anweisung auf die entsprechende Eigenschaftswerttabelle zu zugreifen
und den entsprechenden Datensatz mit der durch die Eigenschaftswerttabelle
repräsentierten
zumindest einen Tabelleneigenschaft zu rekonstruieren. Dabei ist
das Datenbankverwaltungssystem ferner ausgebildet, abhängig von
der zumindest einen vorgegebenen Anweisung auf die zumindest eine
Tabelleneigenschaft und/oder die zumindest eine weitere Eigenschaft
des rekonstruierten Datensatzes zu zugreifen. Mittels der Eigenschaftswerttabelle
kann besonders einfach der entsprechende Datensatz rekonstruiert
werden, insbesondere mittels der Verwendung von SQL als vorgegebene
Anweisung. Grundsätzlich
sind aber auch proprietäre
Anweisungen zur Rekonstruktion der Datensätze verwendbar.
-
In
einer weiteren vorteilhaften Ausgestaltung des ersten Aspekts ist
das Datenbankverwaltungssystem ausgebildet, abhängig von der zumindest einen
vorgegebenen Anweisung die zumindest eine Eigenschaftswerttabelle
mittels der Metadatentabelle zu ermitteln. Dies ermöglicht eine
besonders effiziente Speicherung der Infotainmentdaten, da nicht
für jeden
möglichen
Wert der zumindest einen Tabelleneigenschaft eine Eigenschaftswerttabelle
vorgesehen werden muss. Somit referenziert die Metadatentabelle
vorzugsweise nur die Eigenschaftswerttabellen, die die tatsächlich verwendeten
Werte der zumindest einen Tabelleneigenschaft repräsentieren.
-
In
einer weiteren vorteilhaften Ausgestaltung des ersten Aspekts repräsentiert
die Eigenschaftswerttabelle zumindest einen booleschen Wert und/oder
zumindest einen Wert einer vorgegebenen Wertemenge der zumindest
einen Tabelleneigenschaft. Die vorgegebene Wertemenge umfasst nur eine
vorgegebene Anzahl von unterschiedlichen Werten, die für die zumindest
eine Tabelleneigenschaft verwendbar sind. Besonders bei einer begrenzten
Anzahl unterschiedlicher möglicher
Werte der zumindest einen Tabelleneigenschaft gewährleistet
die Verwendung der Eigenschaftswerttabelle eine effiziente Speicherung
der Datensätze.
-
In
einer weiteren vorteilhaften Ausgestaltung des ersten Aspekts ist
die vorgegebene Anweisung als SQL-Anweisung ausgebildet. Dies ermöglicht einen
besonders schnellen Lese- und/oder
Schreibzugriff auf die Infotainmentdaten in der relationalen Datenbank.
-
Die
Erfindung zeichnet sich bezüglich
eines zweiten Aspekts aus durch ein Computerprogrammprodukt. Das
Computerprogrammprodukt umfasst ein computerlesbares Medium mit
Programmanweisungen. Die Programmanweisungen sind durch einen Computer
ausführbar.
Ferner sind die Programmanweisungen ausgebildet zum Betreiben des
Infotainmentsystems gemäß des ersten
Aspekts der Erfindung.
-
Die
Erfindung ist im Folgenden anhand von schematischen Zeichnungen
näher erläutert. Es
zeigen:
-
1 ein
Datenbanksystem,
-
2 eine
erste Tabelle,
-
3 mehrere
Eigenschaftswerttabellen für boolesche
Werte,
-
4 mehrere
Eigenschaftswerttabellen und eine Metadatentabelle,
-
5 mehrere
Eigenschaftswerttabellen für mehrere
boolesche Werte und eine Metadatentabelle,
-
6 eine
weitere Metadatentabelle.
-
Elemente
gleicher Konstruktion oder Funktion sind figurenübergreifend mit den gleichen
Bezugszeichen gekennzeichnet.
-
Ein
Infotainmentsystem (1) umfasst eine Infotainmentvorrichtung
INFO, ein Datenbankverwaltungssystem RDBMS und eine relationale
Datenbank RDB. Das Infotainmentsystem kann beispielsweise ein Navigationssystem
umfassen und dient somit dazu, eine vorgegebene Route zu finden und/oder
eine vorgegebene Strecke zu berechnen und/oder einen vorgegebenen
Ort zu finden und/oder weitere Informationen zu ermitteln. Das Infotainmentsystem
kann zusätzlich
oder alternativ aber auch ein Musiksystem umfassen und dazu ausgebildet
sein, beispielsweise vorgegebene Musikstücke zu finden und abzuspielen.
-
Die
Infotainmentvorrichtung INFO, die relationale Datenbank RDB und
das Datenbankverwaltungssystem RDBMS können beispielsweise in einem
technischen Gerät
integriert sein, das beispielsweise in einem Kraftfahrzeug angeordnet
ist. Alternativ können
die Infotainmentvorrichtung INFO, die relationale Datenbank RDB
und das Datenbankverwaltungssystem RDBMS auch Softwarefunktionseinheiten
sein, die von dem technischen Gerät verwendet werden. Das technische
Gerät kann
beispielsweise ein Bordcomputer eines Kraftfahrzeugs und/oder ein Computer
sein, beispielsweise ein tragbarer Computer, so z. B. ein Laptop
sein. Das technische Gerät weist
vorzugsweise neben zumindest einer Ausgabeeinheit zumindest eine
Eingabeeinheit auf, die dazu dient, Informationen, beispielsweise
einer Route und/oder einem Musikstück, die ermittelt werden sollen,
und/oder Informationen, aufgrund derer Infotainmentdaten geändert, insbesondere
aktualisiert werden, einzugeben.
-
Die
Infotainmentvorrichtung INFO kommuniziert mit dem Datenbankverwaltungssystem
RDBMS. Das Datenbankverwaltungssystem RDBMS umfasst eine Anweisungsschnittstelle
SQL_IF, einen Anweisungsbefehlsprozessor SQL_CMD_PRO, einen Pager
PAGER, ein Verzeichnis ID_LIB von Indexstrukturen und eine Betriebssystemschnittstelle
OS_IF.
-
Das
Datenbankverwaltungssystem RDBMS kommuniziert mit der relationalen
Datenbank RDB. In der relationalen Datenbank RDB sind die Infotainmentdaten,
so z. B. Navigationsdaten und/oder Musikdaten, gespeichert.
-
Die
Infotainmentvorrichtung INFO kommuniziert mit dem Datenbankverwaltungssystem
RDBMS vorzugsweise derart, dass die Infotainmentvorrichtung INFO
eine Anweisung SQL_CMD an das Datenbankverwaltungssystem RDBMS sendet.
Alternativ kann die Anweisung SQL_CMD auch durch geeignete Signale
repräsentiert
werden, die dann in dem Datenbankverwaltungssystem RDBMS in die
entsprechende Anweisung SQL_CMD übersetzt
werden. Vorzugsweise ist die Anweisung SQL_CMD als SQL-Anweisung
ausgebildet.
-
Die
Anweisungsschnittstelle SQL_IF dient dazu, zu überprüfen, ob die Anweisung SQL_CMD syntaktisch
richtig ist. Falls die Anweisung SQL_CMD syntaktisch richtig ist,
wird sie von der Anweisungsschnittstelle SQL_IF an den Anweisungsbefehlsprozessor
SQL_CMD_PRO übergegeben.
-
Der
Anweisungsbefehlsprozessor SQL_CMD_PRO ermittelt abhängig von
der Anweisung SQL_CMD und vorzugsweise abhängig von mindestens einer verfügbaren Indexstruktur,
die in dem Verzeichnis ID_LIB der Indexstrukturen hinterlegt ist,
vorzugsweise einen Software-Ausführungsplan.
Der Software-Ausführungsplan
ist ein Programmabschnitt, der dazu dient, den Zugriff auf die Infotainmentdaten
möglichst
effizient zu gestalten.
-
Der
Software-Ausführungsplan
wird von dem Anweisungsbefehlsprozessor SQL_CMD_PRO an den Pager
PAGER übergeben.
Der Pager PAGER dient dazu, abhängig
von dem Software-Ausführungsplan
vorzugsweise einen Hardware-Ausführungsplan
zu ermitteln. Der Hardware-Ausführungsplan
ist repräsentativ
dafür,
wie eine Hardware, beispielsweise ein CD-ROM-Laufwerk und/oder eine Festplatte
und/oder weitere Datenträger,
die die relationale Datenbank RDB umfassen können, angesteuert werden müssen, um
den Software-Ausführungsplan
abzuarbeiten.
-
Der
Hardware-Ausführungsplan
wird an die Betriebssystemschnittstelle OS_IF übergeben, welche den Hardware-Ausführungsplan
in entsprechende Stellsignale für
das technische Gerät übersetzt, auf
dem die Infotainmentdaten gespeichert sind, und/oder das das Speichermedium
umfasst, auf dem die Infotainmentdaten gespeichert sind.
-
Die
Infotainmentdaten sind in der relationalen Datenbank RDB als Datensätze in Tabellen
abgespeichert. In 2 ist eine ursprüngliche
Tabelle R dargestellt, die einen ersten, zweiten, dritten und vierten
Datensatz aufweist. Jedem Datensatz ist eine eindeutige Kennung
PK und jeweils eine erste, eine zweite und eine dritte Eigenschaften
A, B, C zugeordnet. Die jeweilige eindeutige Kennung PK repräsentiert
den jeweiligen Datensatz. Beispielsweise weist der vierte Datensatz
mit der eindeutigen Kennung PK 4 die erste Eigenschaft a4, die zweite
Eigenschaft b4 und die dritte Eigenschaft c4 auf. Vorzugsweise sind die
Eigenschaften des jeweiligen Datensatzes als Datensatzattribute
ausgebildet.
-
In 3 sind
die Werte der ersten Eigenschaft A des jeweiligen Datensatzes als
boolesche Werte ausgebildet. So ist dem ersten, zweiten und dritten
Datensatz jeweils ein boolescher Wert TRUE und dem vierten Datensatz
ein boolescher Wert FALSE als erste Eigenschaft A zugeordnet. Die
erste Eigenschaft A kann auch als Tabelleneigenschaft des jeweiligen
Datensatzes bezeichnet werden.
-
In 3 sind
eine erste und eine zweite Eigenschaftswerttabelle R_A_TRUE, R_A_FALSE
dargestellt. Die erste Eigenschaftswerttabelle R_A_TRUE repräsentiert
den booleschen Wert TRUE der ersten Eigenschaft A. Die zweite Eigenschaftswerttabelle
R_A_FALSE repräsentiert
den booleschen Wert FALSE der ersten Eigenschaft A. Dabei sind die
eindeutige Kennung PK, die zweite und dritte Eigenschaft B, C aller
Datensätze
der ursprünglichen
Tabelle R, die als erste Eigenschaft A den booleschen Wert TRUE
aufweisen der ersten Eigenschaftswerttabelle R_A_TRUE zugeordnet
und die eindeutige Kennung PK, die zweite und dritte Eigenschaft
B, C aller Datensätze
der ursprünglichen Tabelle
R, die als erste Eigenschaft A den booleschen Wert FALSE aufweisen
der zweiten Eigenschaftswerttabelle R_A_FALSE zugeordnet. Da der vierte
Datensatz der ursprünglichen
Tabelle R als einziger den Wert FALSE als erste Eigenschaft A aufweist,
sind nur dessen eindeutige Kennung PK und Eigenschaften B, C der
zweiten Eigenschaftswerttabelle R_A_FALSE zugeordnet. Die eindeutige
Kennung PK und die Eigenschaften B, C der übrigen Datensätze der
ursprünglichen
Tabelle R sind der ersten Eigenschaftswerttabelle R_A_TRUE zugeordnet. Der
Wert der jeweiligen ersten Eigenschaft A wird durch die zugeordnete
Eigenschaftswerttabelle R_A_TRUE, R_A_FALSE repräsentiert. Grundsätzlich ist
es auch möglich,
dass nur die jeweiligen eindeutigen Kennungen PK den jeweiligen
Eigenschaftswerttabellen R_A_TRUE, R_A_FALSE zugeordnet sind.
-
Typischerweise
werden neben der Speicherung der eigentlichen Werte der jeweiligen
Eigenschaften vorzugsweise noch zusätzliche Metadaten je Eigenschaft,
so z. B. ein oder zwei Byte Metadaten, in der relationalen Datenbank
RDB reserviert. So weist beispielsweise der jeweils boolesche Wert
der ersten Eigenschaft A nicht nur ein Bit auf, was für einen
Wert TRUE oder FALSE ausreichend wäre, sondern noch zusätzliche
Bytes für
die zusätzlichen
Metadaten. Ferner sind häufig
Indizes von Eigenschaften der Datensätze in dem Verzeichnis ID_LIB
der Indexstrukturen in dem Datenbankverwaltungssystem RDBMS abgelegt,
die vorzugsweise einen direkten und somit besonders schnellen Zugriff
auf die jeweiligen Eigenschaften ermöglichen. Durch die Verwendung
der Eigenschaftswerttabellen R_A_TRUE, R_A_FALSE kann dieser zusätzliche
Speicherbedarf für
die zusätzlichen
Metadaten der zumindest einen Tabelleneigenschaft auf dem Speichermedium
DC und für
die jeweiligen Indizes der zumindest einen Tabelleneigenschaft in
dem Verzeichnis ID_LIB der Indexstrukturen eingespart werden, was
insbesondere bei einer hohen Anzahl von Datensätzen, so z. B. eine Million
und mehr, einen besonders reduzierten Speicherbedarf in der relationalen
Datenbank RDB und des Datenbankverwaltungssystems RDBMS ermöglicht.
Ferner wird durch den geringen Speicherbedarf auch die Zugriffszeit
des Datenbankverwaltungssystems RDBMS auf die relationale Datenbank RDB
reduziert und somit ein besonders schneller Zugriff auf die Infotainmentdaten
gewährleistet.
-
Mit
Hilfe der ersten und zweiten Eigenschaftswerttabelle R_A_TRUE, R_A_FALSE
kann besonders einfach die ursprüngliche
Tabelle R (2) rekonstruiert werden. So
kann beispielsweise mittels der Anweisung SQL_CMD
create view
R as
select PK, TRUE, B, C FROM R_A_TRUE union
select
PK, FALSE, B, C FROM R_A_FALSE
die ursprüngliche Tabelle R (2)
rekonstruiert werden. Dabei stellen die Werte TRUE und FALSE in
der ersten und zweiten select-Unteranweisung jeweils konstante Werte
dar, die als Werte der jeweils ersten Eigenschaft A für die Rekonstruktion
der ursprünglichen
Tabelle R vorgegeben werden.
-
In 4 nimmt
die jeweils erste Eigenschaft A einen Wert einer vorgegebenen Wertemenge
an, die beispielsweise die unterschiedlichen Werte e1, e2, e3, e4
oder e5 umfasst. Beispielsweise weist die erste Eigenschaften A
des ersten und vierten Datensatzes den Wert e2 auf. Die erste Eigenschaft
A des dritten Datensatzes weist den Wert e1 auf und die des zweiten
Datensatzes den Wert e5. Die Werte e3 und e4 sind unbenutzt. Die
eindeutige Kennung PK und die zweite und dritte Eigenschaft B, C
der vier Datensätze
der ursprünglichen
Tabelle R sind in einer ersten, zweiten und dritten Eigenschaftswerttabelle R_A_e1,
R_A_e2, R_A_e5 in der relationalen Datenbank RDB gespeichert. So
sind die eindeutige Kennung PK und die Eigenschaften B, C des ersten
und vierten Datensatzes der ursprünglichen Tabelle R der zweiten
Eigenschaftswerttabelle R_A_e2 zugeordnet, während die eindeutige Kennung
PK und die Eigenschaften B, C des dritten Datensatzes der ursprünglichen
Tabelle R der ersten Eigenschaftswerttabelle R_A_e1 und die eindeutige
Kennung PK und die Eigenschaften B, C des zweiten Datensatzes der dritten
Eigenschaftstabelle R_A_e5 zugeordnet sind. Zusätzlich ist eine Metadatentabelle
R_A_MD dargestellt, die neben den Eigenschaftswerttabellen R_A_e1,
R_A_e2, R_A_e5 in der relationalen Datenbank RDB abgespeichert ist.
Mittels der Metadatentabelle R_A_MD ist es möglich, abhängig von dem vorgegebenen Wert
der ersten Eigenschaft A direkt die jeweilige Eigenschaftswerttabelle
zu referenzieren. Wird beispielsweise während eines Lesezugriffs mittels
der Anweisung SQL_CMD ein Wert e2 als Tabelleneigenschaft A vorgegeben,
kann direkt die Eigenschaftswerttabelle R_A_e2 unter zur Hilfenahme der
Metadatentabelle R_A_MD referenziert werden und danach auf die jeweils
zweite und dritte Eigenschaft B, C zugegriffen werden, beispielsweise
mittels einer weiteren Anweisung SQL_CMD. Dies hat den Vorteil,
dass für
die nicht verwendeten Werte e3, e4 der vorgegebenen Wertemenge keine
jeweilige Eigenschaftswerttabelle abgespeichert werden muss. Auch
das führt
zu einem reduzierten Speicherbedarf, da auch jeder leeren, in der
relationalen Datenbank RDB gespeicherten, Tabelle Metadaten zugeordnet
sind, die durch die Verwendung der Metadatentabelle eingespart werden
können.
-
Insbesondere
bei Infotainmentdaten, die als Navigationsdaten ausgebildet sind,
kommt es häufig vor,
dass diese aktualisiert oder geändert
werden müssen,
so z. B. aufgrund geänderter
Straßenführungen.
Es kann durchaus vorkommen, dass auch die zumindest eine Tabelleneigenschaft
des jeweiligen Datensatzes geändert
wird. Dabei ist das Datenbankverwaltungssystem RDBMS ausgebildet,
abhängig
von der zumindest einen vorgegebenen Anweisung SQL_CMD die weiteren
Eigenschaften des entsprechenden Datensatzes in eine andere Eigenschaftswerttabelle
umzukopieren oder zunächst
eine neue zugeordnete Eigenschaftswerttabelle zu erstellen und danach
die weiteren Eigenschaften des entsprechenden Datensatzes umzukopieren
und danach die entsprechende Metadatentabelle anzupassen.
-
In 5 wird
die erste Eigenschaft A als erste Tabelleneigenschaft A und die
zweite Eigenschaft B als zweite Tabelleneigenschaft B verwendet.
Die erste wie auch die zweite Tabelleneigenschaft A, B nehmen jeweils
boolesche Wert an. Daraus ergeben sich vier mögliche Kombinationen der ersten
und zweiten Tabelleneigenschaft A, B. Ist beispielweise dem zweiten
Datensatz der ursprünglichen
Tabelle R als erste Eigenschaft A ein Wert TRUE und als zweite Eigenschaft
B ein Wert FALSE zugeordnet, so ist nur noch die eindeutige Kennung
PK und die dritte Eigenschaft C des zweiten Datensatzes der Eigenschaftswerttabelle
R_A_TRUE_B_FALSE zugeordnet, die repräsentativ ist für den Wert
der ersten und zweiten Eigenschaft A, B des zweiten Datensatzes.
Ferner ist eine weitere Metadatentabelle R_A_B_MD in der relationalen
Datenbank RDB gespeichert, die abhängig von den Werten der ersten
und zweiten Eigenschaft A, B die jeweilige Eigenschaftswerttabelle
referenziert. Aufgrund der Verwendung der weiteren Metadatentabelle
R_A_B_MD ist eine weitere Eigenschaftswerttabelle, die den nicht
verwendeten Wert FALSE der ersten Eigenschaft A und den Wert FALSE
der zweiten Eigenschaft B repräsentiert,
nicht erforderlich. Mittels Verwendung der weiteren Metadatentabelle
R_A_B_MD können
somit zunächst
alle gespeicherten Eigenschaftswerttabellen mittels beispielsweise
einer ersten Anweisung
select VALUEA, VALUEB, RN from R_A_B_MD
ermittelt
werden. Danach kann abhängig
von dem Ergebnis der Ermittlung der ersten Anweisung mittels einer
weiteren Anweisung
create view R as
select PK, TRUE, TRUE,
C from R_A_TRUE_B_TRUE union
select PK, TRUE, FALSE, C from R_A_TRUE_B_FALSE
union
select PK, FALSE, TRUE, C from R_A_FALSE_B_TRUE
die
ursprüngliche
Tabelle R (2) rekonstruiert werden.
-
In 6 ist
eine Ortsmetadatentabelle R_URBAN_SPEEPLIMIT_MD dargestellt, wie
sie beispielsweise in Verbindung mit dem Navigationssystem des Infotainmentsystems
verwendbar ist. Dabei wird abhängig
von einer ersten Ortstabelleneigenschaft URBAN und einer zweiten
Ortstabelleneigenschaft SPEEDLIMIT eine jeweilige Ortseigenschaftswerttabelle
R_UR_TRUE_SL_NULL, R_UR_FALSE_SL_60, R_UR_TRUE_SL_30, R_UR_FALSE_SL_30
referenziert, die nicht dargestellt ist. Dabei weist die erste Ortstabelleneigenschaft
URBAN boolesche Wert auf und repräsentiert somit, ob eine mittels
des Navigationssystems ermittelte aktuelle Position des Kraftfahrzeugs
in einem Stadtgebiet liegt oder nicht. Die zweite Ortstabelleneigenschaft
SPEEDLIMIT kann dabei vorzugsweise unterschiedliche ganzzahlige
Werte und den Wert NULL annehmen und repräsentiert somit eine der ermittelten
aktuellen Position des Kraftfahrzeugs zugeordnete Geschwindigkeitsbegrenzung.
Der Wert NULL der zweiten Ortstabelleneigenschaft SPEEDLIMIT repräsentiert
eine Nicht-Geschwindigkeitsbegrenzung
an der ermittelten Position des Kraftfahrzeugs. Vorzugsweise nimmt
die zweite Ortstabelleneigenschaft SPEEDLIMIT nur vorgegebene ganzzahlige
Werte an, so z. B. 30, 50, 60, 70, 80, 90, 100, 120, so dass nur
eine begrenzte Anzahl von Kombinationen der ersten und zweiten Ortstabelleneigenschaft
URBAN, SPEEDLIMIT als mögliche
Kombinationen verwendet werden. Somit werden nur für verwendete
ganzzahlige Werte der zweiten Ortstabelleneigenschaft SPEEDLIMIT
jeweils Ortseigenschaftswerttabellen angelegt. Ferner ist zu berücksichtigen, dass
einige Eigenschaften vorzugsweise nicht kombinierbar sind, so z.
B. eine Geschwindigkeitsbegrenzung von 120 km/h in dem Stadtgebiet.
Beispielsweise wird der ermittelten aktuellen Position des Kraftfahrzeugs
mittels eines Wertes TRUE der ersten Ortstabelleneigenschaft URBAN
eine aktuelle Position in dem Stadtgebiet zugeordnet. Dieser ersten
Ortstabelleneigenschaft URBAN ist beispielsweise mittels eines Wertes
60 der zweiten Ortstabelleneigenschaft SPEEDLIMIT eine zulässige Höchstgeschwindigkeit von
60 km/h für
die aktuelle Position des Kraftfahrzeugs zuordnet. Dieser ersten
und zweiten Ortstabelleneigenschaft URBAN, SPEEDLIMIT ist eine Ortseigenschaftswerttabelle
R_UR_TRUE_SL_60 zugeordnet, in der weitere Eigenschaften gespeichert sind.
-
Die
Daten der jeweiligen Eigenschaftswerttabellen und die der jeweiligen
Metadatentabellen sind vorzugsweise bezüglich ihrer Anordnung auf dem Speichermedium
DC der relationalen Datenbank RDB zusammenhängend gespeichert. Dabei können die
Daten der jeweiligen Eigenschaftswerttabellen und die der jeweiligen
Metadatentabellen in unterschiedlichen Speicherbereichen auf dem
Speichermedium DC zusammenhängend
abgespeichert sein.
-
Grundsätzlich können auch
mehr als zwei Eigenschaften einer Tabelle als Tabelleneigenschaften verwendet
werden, wobei der Werte jeder Tabelleneigenschaft als boolescher
Wert oder als ganzzahliger Wert oder als Wert der vorgegebenen Wertemenge oder
als ein anderer Wert eines möglichen
Datentyps ausgebildet sein kann. Auch ist bei der Verwendung mehrerer
Tabelleneigenschaften eine beliebige Kombinationen unterschiedlicher
Datentypen der Werte der jeweiligen Tabelleneigenschaften möglich. Auch können mehrere
Metadatentabellen in der relationalen Datenbank RDB gespeichert
sein und mehrere unterschiedliche Eigenschaftswerttabellen referenzieren.
-
- A,
B, C
- Eigenschaften
- ID_LIB
- Verzeichnis
Indexstrukturen
- INFO
- Infotainmentvorrichtung
- OS_IF
- Betriebssystemschnittstelle
- PAGER
- Pager
- PK
- Kennung
- R
- ursprüngliche
Tabelle
- R_A_MD,
R_A_B_MD
- Metadatentabelle
- R_A_TRUE, R_A_FALSE,
R_A_e1, R_A_e2, R_A_e5, R_A_TRUE_B_TRUE, R_A_TRUE_B_FALSE, R_A_FALSE_B_TRUE
- Eigenschaftswerttabelle
- R_URBAN_SPEEDLIMIT_MD
- Ortsmetadatentabelle
- R_URBAN_TRUE_SPEEDLIMIT_NULL, R_URBAN_FALSE_SPEEDLIMIT_NULL, R_URBAN_TRUE_SPEEDLIMIT_30, R_URBAN_FALSE_SPEEDLIMIT_30
- Ortseigenschaftswerttabelle