Client software Distributed Databases in practice (Oracle and more ) • Overview • Naming • Database links • Transparency hs / FUB dbsII-03-12DDBOra1-4 Overview Function distribution Networking software (Net 8, since Oracle 8i) Q Q Q client server server-server homogenous server-server heterogenous Gobal or local naming Conversion of character sets, representation, data types All kinds of networking tasks Basic communication abstraction: database link, unidirectional "pointer" to server Proprietary protocol hs / FUB dbsII-03-12DDBOra1-2 Client server hs / FUB dbsII-03-12DDBOra1-5 Net 8 network layer Protocol stack Networking layer -Naming -Routing -Session Mgment - Transport ( as usual ) Different network protocols supported figures adapted from Oracle slides hs / FUB dbsII-03-12DDBOra1-3 hs / FUB dbsII-03-12DDBOra1-6 1 Naming Location Transparency … more or less Every database has a global database name, Oracle term: service name. The global database name uniquely identifies each database in the global network. A global database: database name (DB_NAME) and a hierarchical domain name (DB_DOMAIN) Unique <schema>.<relation> names create public synonym sunStadt for stadt@"sunseths.inf.fu-berlin.de"; select * from sunStadt ; Distributed join: select s.name, s1.einwohner from mystaedte s, sunStadt s1 where s.name = s1.name hs / FUB dbsII-03-12DDBOra1-7 hs / FUB dbsII-03-12DDBOra1-10 Name resolution Distributed Ingres Central name server - or Ingres: forerunner of Postgres (Stonebraker, UCB) local files ("tsnames.ora") Every Client or Server must have defined the address of its partner -> Tsnames.ora file on each system with client or server software SUNSETHS.INF.FU-BERLIN.DE = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = sunset.inf.fu-berlin.de)(PORT = 1521)) ) (CONNECT_DATA = (SID = SUNSETHS) (SERVER = DEDICATED) ) ) hs / FUB dbsII-03-12DDBOra1-8 Database link Ingres Star distribution subsystem on top of Ingres still in use Architecture • Star schema defined by export of schema information from local databases • Application access through global ("Star") schema hs / FUB dbsII-03-12DDBOra1-11 Ingres / Star "Pointer to instance or schema CREATE PUBLIC DATABASE LINK "SUNSETHS1.INF.FU-BERLIN.DE" CONNECT TO "SCHWEPPE" // fixed schema "schweppe" IDENTIFIED BY "***" USING 'SUNSETHS' • Global Schema managed at one site Ö central component of DDBS • Schema level registration register table table2 as link with node = node_c, database = dbloc_c1; select * from stadt@"sunseths.inf.fu-berlin.de"; hs / FUB dbsII-03-12DDBOra1-9 hs / FUB dbsII-03-12DDBOra1-12 2