Auch zu finden unter: http://raa.ruby-lang.org/project/odba/
a.
------------------------ --------------- | swissmedic-importer | | ch.oddb.org | ------------------------ --------------- | ändert A zeigt | Ruby/ODBA-Objekt | Änderung V | an ------------------------ kommuniziert: --------------- | odba |-------------------> | odba | ------------------------ Ruby/ODBA-Objekt --------------- | schreibt hat geändert A lädt | Änderung | Änderung V in die DB | aus der DB ----------------------------------------------------------- | postgresql | -----------------------------------------------------------
b.
------------------------ --------------- | swissmedic-importer | | ch.oddb.org | ------------------------ --------------- | ändert A zeigt | Ruby/ODBA-Objekt | Änderung V | an ------------------------ sendet: --------------- | odba |-------------------> | odba | ------------------------ geändertes --------------- | schreibt Ruby/ODBA-Objekt | schreibt | Änderung | Änderung V in die DB V in die DB ------------------------ --------------- | postgresql | | postgresql | ------------------------ ---------------
c. ODBA Objekte sind keine Hashes.
Ein Objekt ist eine Memory-Struktur, die durch Ruby definiert wird. Sie kann verschiedene externe Representationen haben, z.B. wie du sagst eine Reihenfolge von Zahlen (ist aber _kein_ Hash). Dazu gehören aber noch weitere Informationen:
odba_id | content | name | prefetchable | extent ---------+---------------------+------+--------------+-------- 348642 | 0408495[...]5727330 | | t | Array Und informationen aus einer separaten Tabelle: odba_id | key | value --------+----------+------------------------------------------ 348642 | 04086906 | 04086f3a0f4f4442413a3a53747562083a14[...] 348642 | 0408690b | 04086f3a0f4f4442413a3a53747562083a14[...] 348642 | 04086909 | 04086f3a0f4f4442413a3a53747562083a14[...] 348642 | 04086907 | 04086f3a0f4f4442413a3a53747562083a14[...] 348642 | 0408690c | 04086f3a0f4f4442413a3a53747562083a14[...] 348642 | 04086908 | 04086f3a0f4f4442413a3a53747562083a14[...] 348642 | 0408690d | 04086f3a0f4f4442413a3a53747562083a14[...] 348642 | 04086900 | 04086f3a0f4f4442413a3a53747562083a14[...] 348642 | 0408690a | 04086f3a0f4f4442413a3a53747562083a14[...]