Sedna (databas)

Sedna XML DBMS
Förvar
Skrivet i C , C++
Operativ system Cross-plattform
Typ Inbyggd XML-databas
Licens Apache-licens 2.0
Hemsida sedna .org  Edit this on Wikidata

Sedna är ett databashanteringssystem med öppen källkod som tillhandahåller inbyggd lagring för XML -data. De distinkta designbesluten som används i Sedna är (i) schemabaserad klusterlagringsstrategi för XML-data och (ii) minneshantering baserad på skiktat adressutrymme .

Dataorganisation

Dataorganisation i Sedna är designad med målet att ge en balans i prestanda mellan XML-frågor och uppdateringsexekvering. De två primära designbesluten inom dataorganisation i Sedna är:

  1. Direktpekare används för att representera XML-nodrelationer som förälder, barn och syskon . Till skillnad från relationsbaserade tillvägagångssätt som kräver att kopplingar utförs för att korsa ett XML-dokument, utförs genomkörning i Sedna genom att helt enkelt följa en direkt pekare.
  2. En i ett XML-dokument enligt deras deskriptiv schemadriven lagringsstrategi utvecklas som består av klustring av noder positioner i dokumentets beskrivande schema. Till skillnad från ett föreskrivande schema som är känt i förväg och vanligtvis specificeras i DTD eller XML Schema , genereras det beskrivande schemat från data dynamiskt (och underhålls inkrementellt ) och representerar en kortfattad och korrekt struktursammanfattning för data. Att använda det beskrivande schemat istället för det föreskrivande gör lagringsstrategin tillämpbar på alla XML-dokument, även ett som inte kommer med något föreskrivande schema.

Följande figur illustrerar de övergripande principerna för dataorganisation i Sedna. Det beskrivande schemat representerat som ett träd av schemanoder är den centrala komponenten i dataorganisationen. Varje schemanod är märkt med en XML-nodtyp (t.ex. element , attribut , text , etc.) och har en pekare till datablock som lagrar XML- noder som motsvarar den givna schemanoden. Beroende på deras nodtyp är vissa schemanoder också märkta med namn (t.ex. elementnoder, attributnoder). Datablock relaterade till en gemensam schemanod länkas via pekare till en dubbelriktad lista . Noddeskriptorer i en lista med block är delvis ordnade enligt dokumentordning.


  
    
    
    
    
  
  
    
    
    
      
      
    
  
    
    
  
 <library>  <bok>  <title>  Grunderna för databaser  </title>  <författare>  Abiteboul  </author>  <författare>  Hull  </author>  <författare>  Vianu  </author>  </book>  <bok>  <titel>  En introduktion till databassystem  </title>  <author>  Date  </author>  <issue>  <publisher>  Addison-Wesley  </publisher>  <year>  2004  </year>  </issue>  </book>  ...  < paper>  <title>  En relationsmodell för stora delade databanker  </title>  <author>  Codd  </author>  </paper>  </library> 
Ett exempel på XML-dokument (nederst) och dess interna representation i Sedna (överst)

Citat

externa länkar