Database Management Sys2

Embed Size (px)

Citation preview

  • 8/14/2019 Database Management Sys2

    1/13

    L o r e : A D a t a b a s e M a n a g e m e n t S y s t e m f o r S e m i s t r u c t u r e d D a t a

    J a s o n M c H u g h , S e r g e A b i t e b o u l , R o y G o l d m a n , D a l l a n Q u a s s , J e n n i f e r W i d o m

    S t a n f o r d U n i v e r s i t y

    f m c h u g h j , a b i t e b o u , r o y g , q u a s s , w i d o m g @ d b . s t a n f o r d . e d u

    h t t p : / / w w w - d b . s t a n f o r d . e d u / l o r e

    A b s t r a c t

    L o r e ( f o r L i g h t w e i g h t O b j e c t R e p o s i t o r y ) i s a D B M S d e -

    s i g n e d s p e c i c a l l y f o r m a n a g i n g s e m i s t r u c t u r e d i n f o r m a t i o n .

    I m p l e m e n t i n g L o r e h a s r e q u i r e d r e t h i n k i n g a l l a s p e c t s o f a

    D B M S , i n c l u d i n g s t o r a g e m a n a g e m e n t , i n d e x i n g , q u e r y p r o -

    c e s s i n g a n d o p t i m i z a t i o n , a n d u s e r i n t e r f a c e s . T h i s p a p e r

    p r o v i d e s a n o v e r v i e w o f t h e s e a s p e c t s o f t h e L o r e s y s t e m , a s

    w e l l a s o t h e r n o v e l f e a t u r e s s u c h a s d y n a m i c s t r u c t u r a l s u m -

    m a r i e s a n d s e a m l e s s a c c e s s t o d a t a f r o m e x t e r n a l s o u r c e s .

    1 I n t r o d u c t i o n

    T r a d i t i o n a l d a t a b a s e s y s t e m s f o r c e a l l d a t a t o a d h e r e t o a n

    e x p l i c i t l y s p e c i e d , r i g i d s c h e m a . F o r m a n y n e w d a t a b a s e

    a p p l i c a t i o n s t h e r e c a n b e t w o s i g n i c a n t d r a w b a c k s t o t h i s

    a p p r o a c h :

    T h e d a t a m a y b e i r r e g u l a r a n d t h u s n o t c o n f o r m t o a

    r i g i d s c h e m a . I n r e l a t i o n a l s y s t e m s , n u l l v a l u e s t y p -

    i c a l l y a r e u s e d w h e n d a t a i s i r r e g u l a r , a w e l l - k n o w n

    h e a d a c h e . W h i l e c o m p l e x t y p e s a n d i n h e r i t a n c e i n

    o b j e c t - o r i e n t e d d a t a b a s e s c l e a r l y e n a b l e m o r e e x i b i l -

    i t y , i t c a n s t i l l b e d i c u l t t o d e s i g n a n a p p r o p r i a t e

    o b j e c t - o r i e n t e d s c h e m a t o a c c o m m o d a t e i r r e g u l a r d a t a .

    I t m a y b e d i c u l t t o d e c i d e i n a d v a n c e o n a s i n g l e ,

    c o r r e c t s c h e m a . T h e s t r u c t u r e o f t h e d a t a m a y e v o l v e

    r a p i d l y , d a t a e l e m e n t s m a y c h a n g e t y p e s , o r d a t a n o t

    c o n f o r m i n g t o t h e p r e v i o u s s t r u c t u r e m a y b e a d d e d .

    T h e s e c h a r a c t e r i s t i c s r e s u l t i n f r e q u e n t s c h e m a m o d i -

    c a t i o n s , a n o t h e r w e l l - k n o w n h e a d a c h e i n t r a d i t i o n a l

    d a t a b a s e s y s t e m s .

    B e c a u s e o f t h e s e l i m i t a t i o n s , m a n y a p p l i c a t i o n s i n v o l v i n g

    s e m i s t r u c t u r e d d a t a A b i 9 7 ] a r e f o r g o i n g t h e u s e o f a d a t a -

    b a s e m a n a g e m e n t s y s t e m , d e s p i t e t h e f a c t t h a t m a n y

    s t r e n g t h s o f a D B M S ( a d - h o c q u e r i e s , e c i e n t a c c e s s , c o n -

    c u r r e n c y c o n t r o l , c r a s h r e c o v e r y , s e c u r i t y , e t c . ) w o u l d b e

    v e r y u s e f u l t o t h o s e a p p l i c a t i o n s .

    A s a p o p u l a r r s t e x a m p l e , c o n s i d e r d a t a s t o r e d o n t h e

    W o r l d - W i d e W e b . A t a t y p i c a l W e b s i t e , d a t a i s v a r i e d

    a n d i r r e g u l a r , a n d t h e o v e r a l l s t r u c t u r e o f t h e s i t e c h a n g e s

    o f t e n . T o d a y , v e r y f e w W e b s i t e s s t o r e a l l o f t h e i r a v a i l -

    a b l e i n f o r m a t i o n i n a d a t a b a s e s y s t e m . I t i s c l e a r , h o w e v e r ,

    t h a t W e b u s e r s c o u l d t a k e a d v a n t a g e o f d a t a b a s e s u p p o r t ,

    e . g . , b y h a v i n g t h e a b i l i t y t o p o s e q u e r i e s i n v o l v i n g d a t a

    r e l a t i o n s h i p s ( w h i c h u s u a l l y a r e k n o w n b y t h e s i t e ' s c r e -

    a t o r s b u t n o t m a d e e x p l i c i t ) . A s a s e c o n d e x a m p l e , c o n -

    s i d e r i n f o r m a t i o n i n t e g r a t e d f r o m m u l t i p l e , h e t e r o g e n e o u s

    d a t a s o u r c e s C o m 9 1 , L M R 9 0 , S L 9 0 ] . C o n s i d e r a b l e e o r t i s

    t y p i c a l l y s p e n t t o e n s u r e t h a t t h e i n t e g r a t e d d a t a i s w e l l -

    s t r u c t u r e d a n d c o n f o r m s t o a s i n g l e , u n i f o r m s c h e m a . A d -

    d i t i o n a l e o r t i s r e q u i r e d i f o n e o r m o r e o f t h e i n f o r m a t i o n

    T h i s w o r k w a s s u p p o r t e d b y t h e A i r F o r c e R o m e L a b o r a t o r i e s

    a n d D A R P A u n d e r C o n t r a c t s F 3 0 6 0 2 - 9 5 - C - 0 1 1 9 a n d F 3 0 6 0 2 - 9 6 - 1 -

    0 3 1 , a n d b y e q u i p m e n t g r a n t s f r o m I B M a n d D i g i t a l E q u i p m e n t

    C o r p o r a t i o n s .

    s o u r c e s c h a n g e s , o r w h e n n e w s o u r c e s a r e a d d e d . C l e a r l y ,

    a d a t a b a s e s y s t e m t h a t e a s i l y a c c o m m o d a t e s i r r e g u l a r d a t a

    a n d c h a n g e s i n s t r u c t u r e w o u l d g r e a t l y f a c i l i t a t e t h e r a p i d

    i n t e g r a t i o n o f h e t e r o g e n e o u s d a t a b a s e s .

    T h i s p a p e r d e s c r i b e s t h e i m p l e m e n t a t i o n o f t h e L o r e s y s -

    t e m a t S t a n f o r d U n i v e r s i t y , d e s i g n e d s p e c i c a l l y f o r m a n a g -

    i n g s e m i s t r u c t u r e d d a t a . T h e d a t a m a n a g e d b y L o r e i s n o t

    c o n n e d t o a s c h e m a , a n d i t m a y b e i r r e g u l a r o r i n c o m p l e t e .

    I n g e n e r a l , L o r e a t t e m p t s t o t a k e a d v a n t a g e o f s t r u c t u r e

    w h e r e i t e x i s t s , b u t a l s o h a n d l e s i r r e g u l a r d a t a a s g r a c e f u l l y

    a s p o s s i b l e . L o r e ( f o r L i g h t w e i g h t O b j e c t R e p o s i t o r y

    1

    ) i s f u l l y

    f u n c t i o n a l a n d a v a i l a b l e t o t h e p u b l i c .

    L o r e ' s d a t a m o d e l i s a v e r y s i m p l e , s e l f - d e s c r i b i n g , n e s t e d

    o b j e c t m o d e l c a l l e d O E M ( f o r O b j e c t E x c h a n g e M o d e l ) , i n -

    t r o d u c e d o r i g i n a l l y i n t h e T s i m m i s p r o j e c t a t S t a n f o r d

    P G M W 9 5 ] . O n e o f o u r r s t c h a l l e n g e s w a s t o d e s i g n a

    q u e r y l a n g u a g e f o r L o r e t h a t a l l o w s u s e r s t o e a s i l y r e t r i e v e

    a n d u p d a t e d a t a w i t h n o x e d , k n o w n s t r u c t u r e . L o r e l , f o r

    L o r e L a n g u a g e , i s a n e x t e n s i o n o f O Q L C a t 9 4 , B D K 9 2 ] t h a t

    i n t r o d u c e s e x t e n s i v e t y p e c o e r c i o n a n d p o w e r f u l p a t h e x -

    p r e s s i o n s f o r e e c t i v e l y q u e r y i n g s e m i s t r u c t u r e d d a t a . O E M

    a n d L o r e l a r e r e v i e w e d b r i e y i n t h i s p a p e r ; f o r d e t a i l s

    s e e A Q M

    +

    9 6 ] .

    B u i l d i n g a d a t a b a s e s y s t e m t h a t a c c o m m o d a t e s s e m i -

    s t r u c t u r e d d a t a h a s r e q u i r e d u s t o r e t h i n k n e a r l y e v e r y a s -

    p e c t o f d a t a b a s e m a n a g e m e n t . W h i l e t h e o v e r a l l a r c h i t e c -

    t u r e o f t h e s y s t e m i s r e l a t i v e l y t r a d i t i o n a l , t h i s p a p e r h i g h -

    l i g h t s a n u m b e r o f c o m p o n e n t s t h a t w e f e e l a r e p a r t i c u l a r l y

    i n t e r e s t i n g a n d u n i q u e .

    F i r s t , q u e r y p r o c e s s i n g i n t r o d u c e s a n u m b e r o f c h a l l e n g e s .

    O n e o b v i o u s d i c u l t y i s t h e a b s e n c e o f a s c h e m a t o g u i d e

    t h e q u e r y p r o c e s s o r . I n a d d i t i o n , L o r e l i n c l u d e s a p o w e r f u l

    f o r m o f n a v i g a t i o n b a s e d o n p a t h e x p r e s s i o n s , w h i c h r e q u i r e s

    t h e u s e o f a u t o m a t a a n d g r a p h t r a v e r s a l t e c h n i q u e s i n s i d e

    t h e d a t a b a s e e n g i n e . T h e i n d e x i n g o f s e m i s t r u c t u r e d d a t a

    a n d i t s u s e i n q u e r y o p t i m i z a t i o n i s a n i n t e r e s t i n g i s s u e ,

    p a r t i c u l a r l y i n t h e c o n t e x t o f t h e a u t o m a t i c t y p e c o e r c i o n

    p r o v i d e d b y L o r e l . A s w i l l b e s e e n , d e s p i t e t h e s e c h a l l e n g e s

    w e a r e a b l e t o e x e c u t e q u e r i e s u s i n g q u e r y p l a n s b a s e d p r i -

    m a r i l y o n f a m i l i a r d a t a b a s e o p e r a t o r s . T o a c c o m m o d a t e

    s e m i s t r u c t u r e d d a t a a t t h e p h y s i c a l l e v e l ( a s w e l l a s s u p p o r t

    f o r m u l t i m e d i a d a t a s u c h a s v i d e o , p o s t s c r i p t , g i f , e t c . ) w e

    i m p o s e n o c o n s t r a i n t s o n t h e s i z e o r s t r u c t u r e o f a t o m i c o r

    c o m p l e x o b j e c t s . M e a n w h i l e , h o w e v e r , t h e l a y o u t o f o b j e c t s

    o n d i s k i s t a i l o r e d t o f a c i l i t a t e b r o w s i n g a n d t h e p r o c e s s i n g

    o f p a t h e x p r e s s i o n s .

    P e r h a p s t h e m o s t n o v e l a s p e c t s o f L o r e a r e t h e u s e o f

    D a t a G u i d e s i n p l a c e o f a s t a n d a r d s c h e m a , a n d L o r e ' s e x t e r -

    n a l d a t a m a n a g e r . A D a t a G u i d e i s a \ s t r u c t u r a l s u m m a r y "

    o f t h e c u r r e n t d a t a b a s e t h a t i s m a i n t a i n e d d y n a m i c a l l y a n d

    s e r v e s s e v e r a l f u n c t i o n s n o r m a l l y s e r v e d b y a s c h e m a . F o r

    e x a m p l e , D a t a G u i d e s a r e e s s e n t i a l f o r u s e r s t o e x p l o r e t h e

    s t r u c t u r e o f t h e d a t a b a s e a n d f o r m u l a t e q u e r i e s . T h e y a l s o

    a r e i m p o r t a n t f o r t h e s y s t e m , e . g . , t o s t o r e s t a t i s t i c s a n d

    1

    O r i g i n a l l y , \ l i g h t w e i g h t " r e f e r r e d b o t h t o t h e s i m p l e o b j e c t m o d e l

    u s e d b y L o r e a n d t o t h e f a c t t h a t L o r e w a s a l i g h t w e i g h t s y s t e m s u p -

    p o r t i n g s i n g l e - u s e r , r e a d - o n l y a c c e s s . A s w i l l b e s e e n , L o r e i s e v o l v i n g

    t o w a r d s a m o r e t r a d i t i o n a l \ h e a v y w e i g h t " D B M S i n i t s f u n c t i o n a l i t y .

  • 8/14/2019 Database Management Sys2

    2/13

    g u i d e q u e r y o p t i m i z a t i o n . F i n a l l y , b e c a u s e o n e o f t h e m o t i -

    v a t i o n s f o r u s i n g a D B M S d e s i g n e d f o r s e m i s t r u c t u r e d d a t a

    i s t o e a s i l y i n t e g r a t e d a t a f r o m h e t e r o g e n e o u s i n f o r m a t i o n

    s o u r c e s ( i n c l u d i n g t h e W o r l d - W i d e W e b ) , L o r e i n c l u d e s a n

    e x t e r n a l d a t a m a n a g e r . T h i s c o m p o n e n t e n a b l e s L o r e t o

    b r i n g i n d a t a f r o m e x t e r n a l s o u r c e s d y n a m i c a l l y a s n e e d e d

    d u r i n g q u e r y e x e c u t i o n , w i t h o u t t h e u s e r b e i n g a w a r e o f t h e

    d i s t i n c t i o n b e t w e e n l o c a l a n d e x t e r n a l d a t a .

    W e h a v e c h o s e n t o i m p l e m e n t L o r e f r o m s c r a t c h , r a t h e r

    t h a n b u i l d i n g a n e x t e n s i o n t o a n e x i s t i n g D B M S t o h a n d l e

    s e m i s t r u c t u r e d d a t a . B u i l d i n g o u r o w n c o m p l e t e D B M S a l -

    l o w s u s f u l l c o n t r o l o v e r a l l c o m p o n e n t s o f t h e s y s t e m , s o

    t h a t w e c a n e x p e r i m e n t e a s i l y w i t h i n t e r n a l s y s t e m a s p e c t s

    s u c h a s q u e r y o p t i m i z a t i o n a n d o b j e c t l a y o u t . I n p a r a l -

    l e l , h o w e v e r , w e a r e i m p l e m e n t i n g o u r s e m i s t r u c t u r e d d a t a

    m o d e l a n d q u e r y l a n g u a g e o n t o p o f t h e O

    2

    o b j e c t o r i e n t e d

    s y s t e m B D K 9 2 ] , i n o r d e r t o c o m p a r e t h e i m p l e m e n t a t i o n

    e o r t a n d p e r f o r m a n c e a g a i n s t L o r e . T h i s p a p e r f o c u s e s o n

    L o r e , a l t h o u g h t h e O

    2

    i m p l e m e n t a t i o n i s d i s c u s s e d b r i e y .

    1 . 1 R e l a t e d W o r k

    A p r e l i m i n a r y v e r s i o n o f t h e l a n g u a g e L o r e l w a s i n t r o d u c e d

    i n Q R S

    +

    9 5 ] . D e t a i l s o f t h e s y n t a x a n d s e m a n t i c s o f t h e

    c u r r e n t v e r s i o n o f L o r e l c a n b e f o u n d i n A Q M

    +

    9 6 ] . A c o m -

    p a r i s o n o f L o r e l a g a i n s t m o r e c o n v e n t i o n a l l a n g u a g e s s u c h

    a s O Q L C a t 9 4 ] , X S Q L K K S 9 2 ] , a n d S Q L M S 9 3 ] a p p e a r s

    i n Q R S

    +

    9 5 ] . A l t h o u g h t h e L o r e s y s t e m h a s b e e n d e m o n -

    s t r a t e d Q W G

    +

    9 6 ] , t h i s i s t h e r s t p a p e r t o d e s c r i b e i m p l e -

    m e n t a t i o n a s p e c t s o f L o r e .

    T h e c l o s e s t c u r r e n t s y s t e m t o L o r e i s U n Q L B D S 9 5 ,

    B D H S 9 6 ] , w h i c h a l s o i s d e s i g n e d f o r m a n a g i n g s e m i s t r u c -

    t u r e d d a t a a n d u s e s a d a t a m o d e l s i m i l a r t o O E M . W h i l e

    t h e U n Q L q u e r y l a n g u a g e i s m o r e e x p r e s s i v e t h a n L o r e l , w e

    b e l i e v e i t i s l e s s u s e r - f r i e n d l y . F u r t h e r m o r e , U n Q L w o r k h a s

    f o c u s e d p r i m a r i l y o n a s p e c t s o f t h e q u e r y l a n g u a g e a n d i t s

    o p t i m i z a t i o n s a n d , s o f a r , l e s s o n s y s t e m i m p l e m e n t a t i o n . A

    m u c h e a r l i e r s y s t e m , M o d e l 2 0 4 O ' N 8 7 ] , w a s b a s e d o n s e l f -

    d e s c r i b i n g r e c o r d s t r u c t u r e s . A s w i l l b e s e e n , t h e d a t a m o d e l

    u s e d i n L o r e i s m o r e p o w e r f u l i n t h a t i t i n c l u d e s a r b i t r a r y

    o b j e c t n e s t i n g , a n d L o r e ' s q u e r y l a n g u a g e i s r i c h e r t h a n t h e

    l a n g u a g e o f M o d e l 2 0 4 . T h u s , q u e r y p r o c e s s i n g i n L o r e i s

    s i g n i c a n t l y d i e r e n t t h a n i n M o d e l 2 0 4 , w h i c h c o n c e n t r a t e d

    o n c l e v e r b i t - m a p p e d i n d e x i n g s t r u c t u r e s . F u r t h e r m o r e , t o

    t h e b e s t o f o u r k n o w l e d g e , M o d e l 2 0 4 d i d n o t i n c l u d e c o n -

    c e p t s a n a l o g o u s t o o u r D a t a G u i d e s o r e x t e r n a l d a t a .

    T h e r e h a v e b e e n a n u m b e r o f o t h e r p r o p o s a l s t h a t i n -

    v e n t o r e x t e n d q u e r y l a n g u a g e s r o u g h l y a l o n g t h e l i n e s o f

    L o r e l , o r t h a t i n t e g r a t e t r a d i t i o n a l d a t a b a s e s w i t h s e m i s t r u c -

    t u r e d t e x t d a t a . M o s t o f t h i s w o r k o p e r a t e s o n s t r o n g l y -

    t y p e d d a t a , o r i n s o m e c a s e s i s d e s i g n e d s p e c i c a l l y f o r

    t h e W o r l d - W i d e W e b . E x a m p l e s i n c l u d e B K 9 4 , B C K

    +

    9 4

    C A C S 9 4 , C C M 9 6 , C M 8 9 , K S 9 5 , L S S 9 6 , M M M 9 6 , M W 9 5 ,

    M W 9 3 , Y A 9 4 ] . F o r a m o r e i n - d e p t h c o m p a r i s o n o f t h e s e

    l a n g u a g e s a n d s y s t e m s a g a i n s t L o r e , s e e A Q M

    +

    9 6 ] .

    1 . 2 O u t l i n e o f P a p e r

    S e c t i o n 2 r e v i e w s t h e d a t a m o d e l a n d q u e r y l a n g u a g e u s e d

    b y L o r e . S e c t i o n 3 i n t r o d u c e s t h e o v e r a l l a r c h i t e c t u r e a n d

    t h e i n d i v i d u a l c o m p o n e n t s o f t h e L o r e s y s t e m . Q u e r y a n d

    u p d a t e p r o c e s s i n g , o p t i m i z a t i o n , a n d i n d e x i n g a r e c o n s i d -

    e r e d i n S e c t i o n 4 . S e c t i o n 5 c o v e r s L o r e ' s e x t e r n a l d a t a

    m a n a g e r a n d D a t a G u i d e s . S e c t i o n 6 d e s c r i b e s t h e v a r i o u s

    i n t e r f a c e s t o L o r e f o r d e v e l o p e r s , u s e r s , a n d a p p l i c a t i o n p r o -

    g r a m s . F i n a l l y , S e c t i o n 7 c o v e r s s y s t e m s t a t u s , d e s c r i b e s

    h o w t o o b t a i n t h e L o r e s y s t e m , a n d d i s c u s s e s c u r r e n t a n d

    f u t u r e w o r k .

    2 R e p r e s e n t i n g a n d Q u e r y i n g S e m i s t r u c t u r e d D a t a

    T o s e t t h e s t a g e f o r o u r d i s c u s s i o n o f t h e L o r e s y s t e m , w e

    r s t i n t r o d u c e i t s d a t a m o d e l a n d q u e r y l a n g u a g e . F o r m o -

    t i v a t i o n a n d f u r t h e r d e t a i l s s e e A Q M

    +

    9 6 ] .

    2 . 1 T h e O b j e c t E x c h a n g e M o d e l

    T h e O b j e c t E x c h a n g e M o d e l ( O E M ) P G M W 9 5 ] i s d e s i g n e d

    f o r s e m i s t r u c t u r e d d a t a . D a t a i n t h i s m o d e l c a n b e t h o u g h t

    o f a s a l a b e l e d d i r e c t e d g r a p h . F o r e x a m p l e , t h e v e r y s m a l l

    O E M d a t a b a s e s h o w n i n F i g u r e 1 c o n t a i n s ( c t i t i o u s ) i n f o r -

    m a t i o n a b o u t t h e S t a n f o r d D a t a b a s e G r o u p . T h e v e r t i c e s

    i n t h e g r a p h a r e o b j e c t s ; e a c h o b j e c t h a s a u n i q u e o b j e c t

    i d e n t i e r ( o i d ) , s u c h a s & 5 . A t o m i c o b j e c t s h a v e n o o u t g o -

    i n g e d g e s a n d c o n t a i n a v a l u e f r o m o n e o f t h e b a s i c a t o m i c

    t y p e s s u c h a s i n t e g e r r e a l s t r i n g g i f j a v a a u d i o , e t c .

    A l l o t h e r o b j e c t s m a y h a v e o u t g o i n g e d g e s a n d a r e c a l l e d

    c o m p l e x o b j e c t s . O b j e c t & 3 i s c o m p l e x a n d i t s s u b o b j e c t s

    a r e & 8 , & 9 , & 1 0 , a n d & 1 1 . O b j e c t & 7 i s a t o m i c a n d h a s

    v a l u e \ C l a r k " . N a m e s a r e s p e c i a l l a b e l s t h a t s e r v e a s a l i a s e s

    f o r o b j e c t s a n d a s e n t r y p o i n t s i n t o t h e d a t a b a s e . I n F i g -

    u r e 1 , D B G r o u p i s a n a m e t h a t d e n o t e s o b j e c t & 1 . A n y

    o b j e c t t h a t c a n n o t b e a c c e s s e d b y a p a t h f r o m s o m e n a m e

    i s c o n s i d e r e d t o b e d e l e t e d .

    I n a n O E M d a t a b a s e , t h e r e i s n o n o t i o n o f x e d s c h e m a .

    A l l t h e s c h e m a t i c i n f o r m a t i o n i s i n c l u d e d i n t h e l a b e l s , w h i c h

    m a y c h a n g e d y n a m i c a l l y . T h u s , a n O E M d a t a b a s e i s s e l f -

    d e s c r i b i n g , a n d t h e r e i s n o r e g u l a r i t y i m p o s e d o n t h e d a t a .

    T h e m o d e l i s d e s i g n e d t o h a n d l e i n c o m p l e t e n e s s o f d a t a , a s

    w e l l a s s t r u c t u r e a n d t y p e h e t e r o g e n e i t y a s e x h i b i t e d i n t h e

    e x a m p l e d a t a b a s e . O b s e r v e i n F i g u r e 1 t h a t , f o r e x a m p l e :

    ( i ) m e m b e r s h a v e z e r o , o n e , o r m o r e o c e s ; ( i i ) a n o c e i s

    s o m e t i m e s a s t r i n g a n d s o m e t i m e s a c o m p l e x o b j e c t ; ( i i i ) a

    r o o m m a y b e a s t r i n g o r a n i n t e g e r .

    F o r a n O E M o b j e c t X a n d a l a b e l l , t h e e x p r e s s i o n X l

    d e n o t e s t h e s e t o f a l l l - l a b e l e d s u b o b j e c t s o f X I f X i s a n

    a t o m i c o b j e c t , o r i f l i s n o t a n o u t g o i n g l a b e l f r o m X , t h e n

    X l i s t h e e m p t y s e t . S u c h \ d o t e x p r e s s i o n s " a r e u s e d i n t h e

    q u e r y l a n g u a g e , d e s c r i b e d n e x t .

    2 . 2 T h e L o r e l Q u e r y L a n g u a g e

    I n t h i s s u b s e c t i o n w e i n t r o d u c e t h e L o r e l q u e r y l a n g u a g e ,

    p r i m a r i l y t h r o u g h e x a m p l e s . L o r e l i s a n e x t e n s i o n o f O Q L

    a n d a f u l l s p e c i c a t i o n c a n b e f o u n d i n A Q M

    +

    9 6 ] . H e r e w e

    h i g h l i g h t t h o s e f e a t u r e s o f t h e l a n g u a g e t h a t h a v e a n i m p a c t

    o n t h e n o v e l a s p e c t s o f t h e s y s t e m | f e a t u r e s d e s i g n e d s p e c i f -

    i c a l l y f o r h a n d l i n g s e m i s t r u c t u r e d d a t a . M a n y o t h e r u s e f u l

    f e a t u r e s o f L o r e l ( s o m e i n h e r i t e d f r o m O Q L a n d o t h e r s n o t )

    t h a t a r e m o r e s t a n d a r d w i l l n o t b e c o v e r e d .

    O u r r s t e x a m p l e q u e r y i n t r o d u c e s t h e b a s i c b u i l d i n g

    b l o c k o f L o r e l : t h e s i m p l e p a t h e x p r e s s i o n , w h i c h i s a n a m e

    f o l l o w e d b y a s e q u e n c e o f l a b e l s . F o r e x a m p l e , D B G r o u p .

    M e m b e r . O f f i c e i s a s i m p l e p a t h e x p r e s s i o n . I t s s e m a n t i c s

    c o n s i s t s o f t h e s e t o f o b j e c t s t h a t c a n b e r e a c h e d s t a r t i n g

    w i t h t h e D B G r o u p o b j e c t , f o l l o w i n g a n e d g e l a b e l e d M e m b e r

    t h e n f o l l o w i n g a n e d g e l a b e l e d O f f i c e . R a n g e v a r i a b l e s c a n

    b e a s s i g n e d t o p a t h e x p r e s s i o n s , e . g . , \ D B G r o u p . M e m b e r .

    O f f i c e X " s p e c i e s t h a t X r a n g e s o v e r t h e s e t o f o c e s .

    P a t h e x p r e s s i o n s a l s o c a n b e u s e d d i r e c t l y , i n a n S Q L s t y l e ,

    a s i n t h e e x a m p l e .

    T h e e x a m p l e q u e r y r e t r i e v e s t h e o c e s o f t h e o l d e r m e m -

    b e r s o f t h e g r o u p . T h e q u e r y , a l o n g w i t h i t s a n s w e r f o r o u r

    s a m p l e d a t a b a s e i n F i g u r e 1 , f o l l o w . N o t e t h a t i n t h e q u e r y

    r e s u l t , i n d e n t a t i o n i s u s e d t o r e p r e s e n t g r a p h s t r u c t u r e .

    Q U E R Y

    s e l e c t D B G r o u p . M e m b e r . O f f i c e

    w h e r e D B G r o u p . M e m b e r . A g e > 3 0

  • 8/14/2019 Database Management Sys2

    3/13

    Member

    Name

    Age

    Project

    Office TitleOffice

    Office

    "Smith" "Gates 252" "Jones" 28 "Lore"

    Member

    Project

    Building Room

    "Gates" 252

    &8 &10 &12 &13 &15

    &19 &20

    &6

    Title

    "Tsimmis"

    &16

    ProjectMember

    Building Room

    "CIS" "411"

    &17 &18

    Age

    46

    &9

    &2

    Name

    "Clark"

    &7

    ProjectName

    &3 &4

    &11 &14

    &5

    DBGroup

    Member

    &1

    F i g u r e 1 : A n O E M d a t a b a s e

    R E S U L T

    O f f i c e " G a t e s 2 5 2 "

    O f f i c e

    B u i l d i n g " C I S "

    R o o m " 4 1 1 "

    T h e d a t a b a s e o v e r w h i c h t h e q u e r y i s e v a l u a t e d p r e s e n t s

    a n u m b e r o f i r r e g u l a r i t i e s , a s d i s c u s s e d e a r l i e r . A g u i d i n g

    p r i n c i p l e i n L o r e l i s t h a t , t o w r i t e a q u e r y , o n e s h o u l d n o t

    h a v e t o w o r r y a b o u t s u c h i r r e g u l a r i t i e s o r k n o w t h e p r e c i s e

    s t r u c t u r e o f o b j e c t s ( e . g . , t h e s t r u c t u r e o f o c e s ) , n o r s h o u l d

    o n e h a v e t o b o t h e r w i t h p r e c i s e t y p e s ( e . g . , t h e t y p e o f A g e s

    i n t e g e r ) . T h i s q u e r y w i l l n o t y i e l d a r u n - t i m e e r r o r i f a n A g e

    o b j e c t h a s a s t r i n g v a l u e o r i s c o m p l e x , o r i f A g e s o r O c e s

    a r e s i n g l e - v a l u e d , s e t - v a l u e d , o r e v e n a b s e n t f o r s o m e g r o u p

    m e m b e r s . I n d e e d , t h e a b o v e q u e r y w i l l s u c c e e d n o m a t t e r

    w h a t t h e a c t u a l s t r u c t u r e o f t h e d a t a b a s e i s , a n d w i l l r e t u r n

    a n a p p r o p r i a t e a n s w e r .

    T h e L o r e q u e r y p r o c e s s o r r e w r i t e s q u e r i e s i n t o a m o r e

    e l a b o r a t e O Q L s t y l e . F o r e x a m p l e , t h e p r e v i o u s q u e r y i s

    r e w r i t t e n b y L o r e t o :

    s e l e c t O

    f r o m D B G r o u p . M e m b e r M , M . O f f i c e O

    w h e r e e x i s t s A i n M . A g e : A > 3 0

    T h e L o r e s y s t e m t h e n e x e c u t e s t h i s O Q L - s t y l e q u e r y , i n c o r -

    p o r a t i n g c e r t a i n f e a t u r e s s u c h a s s p e c i a l c o e r c i o n r u l e s ( s e e

    S e c t i o n 4 . 3 ) f o r t h e c o m p a r i s o n A > 3 0

    2

    N o t e t h a t a f r o m c l a u s e h a s b e e n i n t r o d u c e d i n t h e r e w r i t -

    t e n v e r s i o n o f t h e q u e r y . ( O m i t t i n g t h e f r o m c l a u s e i s a m i -

    n o r s y n t a c t i c c o n v e n i e n c e i n L o r e l ; a s i m i l a r s h o r t h a n d w a s

    a l l o w e d i n P o s t q u e l S K 9 1 ] . ) A l s o n o t e t h a t t h e c o m p a r i s o n

    o n A g e h a s b e e n t r a n s f o r m e d i n t o a n e x i s t e n t i a l c o n d i t i o n .

    T h i s t r a n s f o r m a t i o n o c c u r s b e c a u s e a l l p r o p e r t i e s a r e s e t -

    v a l u e d i n O E M . T h u s , t h e u s e r c a n w r i t e D B G r o u p . M e m b e r .

    A g e > 3 0 r e g a r d l e s s o f w h e t h e r A g e i s k n o w n t o b e s i n g l e -

    v a l u e d , k n o w n t o b e s e t - v a l u e d , o r u n k n o w n . W e w i l l s e e i n

    S e c t i o n 4 t h a t a n i m p o r t a n t r s t s t e p o f q u e r y p r o c e s s i n g i n

    L o r e l i s r e w r i t i n g t h e q u e r y i n t o a n O Q L - s t y l e a s a b o v e .

    2

    W e a l s o a r e i m p l e m e n t i n g L o r e l o n t o p o f t h e O

    2

    s y s t e m b a s e d

    o n t h i s t r a n s l a t i o n t o O Q L ; s e e S e c t i o n 7 f o r a b r i e f d i s c u s s i o n .

    L o r e l o e r s a r i c h e r f o r m o f \ d e c l a r a t i v e n a v i g a t i o n " i n

    O E M d a t a b a s e s t h a n s i m p l e p a t h e x p r e s s i o n s , n a m e l y g e n -

    e r a l p a t h e x p r e s s i o n s . I n t u i t i v e l y , t h e u s e r l o o s e l y s p e c i e s

    a d e s i r e d p a t t e r n o f l a b e l s i n t h e d a t a b a s e : o n e c a n s p e c i f y

    p a t t e r n s f o r p a t h s ( t o m a t c h s e q u e n c e s o f l a b e l s ) , p a t t e r n s

    f o r l a b e l s ( t o m a t c h s e q u e n c e s o f c h a r a c t e r s ) , a n d p a t t e r n s

    f o r a t o m i c v a l u e s . A c o m b i n a t i o n o f t h e s e t h r e e f o r m s o f

    p a t t e r n m a t c h i n g i s i l l u s t r a t e d i n t h e f o l l o w i n g e x a m p l e :

    Q U E R Y

    s e l e c t D B G r o u p . M e m b e r . N a m e

    w h e r e D B G r o u p . M e m b e r . O f f i c e ( . R o o m % | . C u b i c l e ) ?

    l i k e " % 2 5 2 "

    R E S U L T

    N a m e " J o n e s "

    N a m e " S m i t h "

    H e r e t h e e x p r e s s i o n R o o m % i s a l a b e l p a t t e r n t h a t m a t c h e s

    a l l l a b e l s s t a r t i n g w i t h t h e s t r i n g R o o m , e . g . , R o o m R o o m s

    o r R o o m 6 8 . F o r p a t h p a t t e r n s , t h e s y m b o l \ " i n d i c a t e s d i s -

    j u n c t i o n b e t w e e n t w o l a b e l s , a n d t h e s y m b o l \ ? " i n d i c a t e s

    t h a t t h e l a b e l p a t t e r n i s o p t i o n a l . T h e c o m p l e t e s y n t a x i s

    b a s e d o n r e g u l a r e x p r e s s i o n s , a l o n g w i t h s y n t a c t i c w i l d c a r d s

    s u c h a s \ # " , w h i c h m a t c h e s a n y p a t h o f l e n g t h 0 o r m o r e .

    F i n a l l y , \ l i k e % 2 5 2 " s p e c i e s t h a t t h e d a t a v a l u e s h o u l d

    e n d w i t h t h e s t r i n g \ 2 5 2 " . T h e l i k e o p e r a t o r i s b a s e d

    l o o s e l y o n S Q L . W e a l s o s u p p o r t g r e p ( s i m i l a r t o U n i x ) a n d

    s o u n d e x f o r p h o n e t i c m a t c h i n g .

    D u r i n g p r e p r o c e s s i n g , s i m p l e p a t h e x p r e s s i o n s a r e e l i m i -

    n a t e d b y r e w r i t i n g t h e q u e r y t o u s e v a r i a b l e s , a s i n o u r r s t

    e x a m p l e . I t i s n o t p o s s i b l e t o d o s o w i t h g e n e r a l p a t h e x -

    p r e s s i o n s , w h i c h r e q u i r e a r u n - t i m e m e c h a n i s m ( d e s c r i b e d

    i n S e c t i o n 4 . 2 ) . I n d e e d , n o t e t h a t i f t h e d a t a b a s e c o n t a i n s

    c y c l e s , t h e n a g e n e r a l p a t h e x p r e s s i o n m a y m a t c h a n i n -

    n i t e n u m b e r o f p a t h s i n t h e d a t a . W h e n t r y i n g t o m a t c h

    a g e n e r a l p a t h e x p r e s s i o n a g a i n s t t h e d a t a b a s e , w e m a t c h

    t h r o u g h a c y c l e a t m o s t o n c e , w h i c h a p p e a r s t o b e a r e a s o n -

    a b l e s i m p l i c a t i o n i n p r a c t i c e .

    W e c o n c l u d e w i t h t w o m o r e e x a m p l e s t h a t i l l u s t r a t e a d -

    v a n c e d f e a t u r e s o f t h e l a n g u a g e . T h e f o l l o w i n g q u e r y i l l u s -

    t r a t e s s u b q u e r i e s a n d c o n s t r u c t e d r e s u l t s . I t r e t r i e v e s t h e

    n a m e s o f a l l m e m b e r s o f t h e L o r e p r o j e c t , t o g e t h e r w i t h

    t i t l e s o f p r o j e c t s t h e y w o r k o n o t h e r t h a n L o r e .

  • 8/14/2019 Database Management Sys2

    4/13

  • 8/14/2019 Database Management Sys2

    5/13

  • 8/14/2019 Database Management Sys2

    6/13

    Select(OA4= TRUE)

    Aggr(Exists, OA3, OA4)

    Scan(OA0,"Member",OA1)

    Scan(OA1,"Office",OA2)

    Select(OA3 > 30)

    Scan(OA1,"Age",OA3)

    Project(OA2)

    Scan(Root,"DBGroup",OA0)

    Join

    Join

    Join

    F i g u r e 3 : E x a m p l e L o r e q u e r y p l a n

    O A 0 O A 1 O A 2 O A 3 O A 4

    ( D B G r o u p ) ( O A 0 . M e m b e r ) ( O A 1 . O c e ) ( O A 1 . A g e ) ( t r u e / f a l s e )

    F i g u r e 4 : E x a m p l e o b j e c t a s s i g n m e n t

    I n s t e a d o f u s i n g a n O A s l o t a s t h e r s t a r g u m e n t , t h e v a l u e

    R o o t , w h i c h i s a s y s t e m - k n o w n o b j e c t f r o m w h i c h a l l n a m e s

    ( s u c h a s D B G r o u p ) c a n b e r e a c h e d , i s u s e d .

    T h e J o i n P r o j e c t , a n d S e l e c t n o d e s a r e n e a r l y i d e n t i c a l

    t o t h e i r c o r r e s p o n d i n g r e l a t i o n a l o p e r a t o r s . L i k e a r e l a t i o n a l

    n e s t e d - l o o p j o i n , t h e J o i n n o d e c o o r d i n a t e s i t s l e f t a n d r i g h t

    c h i l d r e n . F o r e a c h p a r t i a l l y c o m p l e t e d O A t h a t t h e l e f t c h i l d

    r e t u r n s , t h e r i g h t c h i l d i s c a l l e d e x h a u s t i v e l y u n t i l n o m o r e

    n e w O A s a r e p o s s i b l e . T h e n t h e l e f t c h i l d i s i n s t r u c t e d t o

    r e t r i e v e i t s n e x t ( p a r t i a l ) O A . T h e i t e r a t i o n c o n t i n u e s u n t i l

    t h e l e f t s i d e p r o d u c e s n o m o r e O A s . T h e P r o j e c t n o d e i s u s e d

    t o l i m i t w h i c h o b j e c t s s h o u l d b e r e t u r n e d b y s p e c i f y i n g a s e t

    o f O A s l o t s , w h i l e t h e S e l e c t n o d e a p p l i e s a p r e d i c a t e t o t h e

    o b j e c t i d e n t i e d b y t h e o i d i n t h e O A s l o t s p e c i e d .

    T h e A g g r e g a t i o n n o d e ( s h o w n i n F i g u r e 3 o n t h e r i g h t

    s i d e o f t h e q u e r y p l a n a s A g g r ) i s u s e d i n a s o m e w h a t n o v e l

    w a y , s i n c e i t i m p l e m e n t s q u a n t i c a t i o n a s w e l l a s a g g r e g a -

    t i o n . A t a h i g h l e v e l , t h e a g g r e g a t i o n n o d e c a l l s i t s c h i l d

    e x h a u s t i v e l y , s t o r i n g t h e r e s u l t s t e m p o r a r i l y o r c o m p u t i n g

    t h e a g g r e g a t e i n c r e m e n t a l l y . W h e n t h e c h i l d c a n p r o d u c e

    n o m o r e v a l i d O A s , a n e w o b j e c t i s c r e a t e d w h o s e v a l u e i s

    t h e n a l a g g r e g a t i o n ; t h i s n e w o b j e c t i s i d e n t i e d w i t h i n t h e

    t a r g e t O A s l o t . I n t h e e x a m p l e s h o w n , t h e a g g r e g a t i o n n o d e

    a d d s t o t h e t a r g e t s l o t ( O A 4 ) t h e r e s u l t o f t h e a g g r e g a t i o n ,

    w h i c h h e r e i s t h e v a l u e t r u e i f t h e e x i s t e n t i a l q u a n t i c a t i o n

    i s s a t i s e d ( a n o b j e c t e x i s t s i n O A 3 ) a n d f a l s e o t h e r w i s e .

    F i l t e r i n g o f O A s w h o s e q u a n t i c a t i o n i s t r u e o c c u r s i n t h e

    S e l e c t n o d e i m m e d i a t e l y a b o v e t h e a g g r e g a t i o n n o d e . N o t e

    t h a t t h e e x i s t s a g g r e g a t i o n o p e r a t o r \ s h o r t c i r c u i t s " w h e n i t

    n d s t h e r s t s a t i s f y i n g O A , w h i l e o t h e r a g g r e g a t i o n o p e r a -

    t o r s m a y n e e d t o l o o k a t a l l O A s .

    T h e r e a r e f o u r o t h e r p r i m a r y q u e r y o p e r a t o r s i n L o r e ,

    i n a d d i t i o n t o o p e r a t o r s f o r p l a n s t h a t u s e i n d e x e s ( s e e S e c -

    t i o n 4 . 3 ) : S e t O p A r i t h O p C r e a t e S e t , a n d G r o u p b y S e t O p

    h a n d l e s t h e L o r e l s e t o p e r a t i o n s U n i o n I n t e r s e c t , a n d E x -

    c e p t . L i k e w i s e , A r i t h O p h a n d l e s a r i t h m e t i c o p e r a t i o n s s u c h

    a s a d d i t i o n , m u l t i p l i c a t i o n , e t c . C r e a t e S e t i s u s e d t o p a c k -

    a g e t h e r e s u l t s o f a n a r b i t r a r y s u b q u e r y b e f o r e p r o c e e d i n g ;

    i t c a l l s i t s c h i l d e x h a u s t i v e l y , s t o r i n g e a c h o i d r e t u r n e d a s

    p a r t o f a n e w l y c r e a t e d c o m p l e x o b j e c t . A f t e r t h e c h i l d h a s

    p r o d u c e d a l l p o s s i b l e O A s , t h e C r e a t e S e t o p e r a t o r s t o r e s t h e

    o i d f o r t h e n e w s e t o f o b j e c t s w i t h i n t h e t a r g e t s l o t i n t h e

    O A . F i n a l l y , t h e G r o u p b y o p e r a t o r h a n d l e s ( s u b ) q u e r i e s t h a t

    i n c l u d e a g r o u p b y e x p r e s s i o n .

    T o g i v e a m o r e i n - d e p t h a v o r o f q u e r y p l a n c o n s t r u c t i o n ,

    w e c o n s i d e r a s e c o n d q u e r y . T h i s q u e r y a s k s f o r t h e n a m e s

    a n d t h e n u m b e r o f p u b l i c a t i o n s f o r e a c h d a t a b a s e g r o u p

    m e m b e r w h o i s i n t h e C o m p u t e r S c i e n c e ( \ C S " ) d e p a r t m e n t .

    3

    s e l e c t M . N a m e , c o u n t ( M . P u b l i c a t i o n )

    f r o m D B G r o u p . M e m b e r M

    w h e r e M . D e p t = " C S "

    I t i s i m p o r t a n t t o n o t e t h a t b o t h M . N a m e a n d M . P u b l i c a t i o n

    a p p e a r i n g i n t h e s e l e c t c l a u s e a r e s e t s o f o b j e c t s , a n d i n

    t h e g e n e r a l c a s e a r e r e p r e s e n t e d b y s u b q u e r i e s . T h u s , t h e

    O Q L - l i k e t r a n s l a t i o n o f t h i s q u e r y i s :

    s e l e c t ( s e l e c t N f r o m M . N a m e N ) ,

    c o u n t ( s e l e c t P

    f r o m M . P u b l i c a t i o n P )

    f r o m D B G r o u p . M e m b e r M

    w h e r e e x i s t s D i n M . D e p t : D = " C S "

    T o s e e t h e c o n s t r u c t i o n o f t h e q u e r y p l a n , r e f e r t o F i g u r e 5 .

    T h e s u b t r e e f o r t h e f r o m c l a u s e i s c o n s t r u c t e d r s t . E a c h

    s i m p l e p a t h e x p r e s s i o n ( o r r a n g e v a r i a b l e ) a p p e a r i n g w i t h i n

    t h e f r o m b e c o m e s a S c a n n o d e . I f s e v e r a l o f t h e s e e x i s t ,

    t h e n a l e f t - d e e p t r e e o f S c a n n o d e s w i t h J o i n n o d e s c o n -

    n e c t i n g t h e m i s c o n s t r u c t e d . A t t h e t o p o f t h e f r o m s u b t r e e

    a J o i n n o d e c o n n e c t s t h e f r o m c l a u s e w i t h t h e s u b t r e e f o r

    t h e w h e r e c l a u s e . F o r w h e r e , e a c h e x i s t s b e c o m e s a S e l e c t

    A g g r , a n d S c a n n o d e , a n d e a c h p r e d i c a t e b e c o m e s a S e l e c t

    n o d e . F i n a l l y , f o r t h e s e l e c t c l a u s e , a n o t h e r J o i n n o d e i s

    a d d e d t o t h e t o p o f t h e t r e e , a n d t h e q u e r y p l a n s u b t r e e f o r

    t h e s e l e c t c l a u s e b e c o m e s t h e r i g h t c h i l d .

    L e t u s f u r t h e r c o n s i d e r t h e s u b t r e e f o r t h e s e l e c t c l a u s e .

    T h e p l a n s f o r t h e t w o e x p r e s s i o n s c o n s t i t u t i n g t h e s e l e c t

    c l a u s e a r e c o m b i n e d v i a u n i o n ( u s i n g t h e S e t O p o p e r a t o r ) .

    3

    S e v e r a l o f o u r g r o u p m e m b e r s a r e i n t h e E l e c t r i c a l E n g i n e e r i n g

    d e p a r t m e n t .

  • 8/14/2019 Database Management Sys2

    7/13

    Select(OA3= TRUE)

    Aggr(Exists, OA2, OA3)

    Select(OA2 = "CS")

    Scan(OA1,"Dept",OA2)

    Join

    Scan(OA0,"Member",OA1)

    Scan(Root,"DBGroup",OA0)

    Join

    Join

    Scan(OA0,"Member",OA1)

    Scan(Root,"DBGroup",OA0)

    Join

    From clause

    From and Where clauses

    Final Query Plan

    Scan(OA0,"Member",OA1)

    Scan(Root,"DBGroup",OA0)

    Join

    Join

    Project(OA7)

    Aggr(Count, OA6, OA7)

    Scan(OA1,"Publications",

    OA6)

    CreateSet(OA4, OA5)

    Scan(OA1,"Name",OA4)

    SetOp(Union,OA5,OA6, OA7)

    Select(OA3= TRUE)

    Aggr(Exists, OA2, OA3)

    Select(OA2 = "CS")

    Scan(OA1,"Dept",OA2)

    F i g u r e 5 : S t e p s i n c o n s t r u c t i n g a q u e r y p l a n

    T h u s , e a c h ( c o m p l e x ) o b j e c t i n t h e r e s u l t c o n t a i n s t h e s e t

    o f a l l N a m e s u b o b j e c t s o f a M e m b e r ( t h e l e f t s u b t r e e o f t h e

    U n i o n ) , t o g e t h e r w i t h t h e c o u n t o f a l l p u b l i c a t i o n s f o r t h a t

    m e m b e r . ( I n L o r e l , a s e l e c t l i s t i n d i c a t e s u n i o n , w h i l e o r -

    d e r e d p a i r s w o u l d b e a c h i e v e d u s i n g a t u p l e c o n s t r u c t o r o p -

    e r a t o r A Q M

    +

    9 6 ] . ) T h e C r e a t e S e t o p e r a t o r , d e s c r i b e d e a r -

    l i e r , i s n e e d e d t o o b t a i n a l l N a m e c h i l d r e n o f a g i v e n m e m b e r

    b e f o r e r e t u r n i n g i t s o b j e c t a s s i g n m e n t u p t h e q u e r y t r e e . A

    C r e a t e S e t o p e r a t o r i s n o t u s e d i n t h e r i g h t s u b t r e e , h o w e v e r ,

    s i n c e t h e A g g r e g a t i o n o p e r a t o r b y d e n i t i o n a l r e a d y c a l l s i t s

    s u b q u e r y t o e x h a u s t i o n ( a n d t h e n a p p l i e s t h e a g g r e g a t i o n

    o p e r a t o r , i n t h i s c a s e c o u n t ) b e f o r e c o n t i n u i n g .

    4 . 3 Q u e r y O p t i m i z a t i o n a n d I n d e x i n g

    T h e L o r e q u e r y p r o c e s s o r c u r r e n t l y i m p l e m e n t s o n l y a f e w

    s i m p l e h e u r i s t i c q u e r y o p t i m i z a t i o n t e c h n i q u e s . F o r e x a m -

    p l e , w e d o p u s h s e l e c t i o n o p e r a t o r s d o w n t h e q u e r y t r e e , a n d

    i n s o m e c a s e s w e e l i m i n a t e o r c o m b i n e r e d u n d a n t o p e r a t o r s .

    I n t h e f u t u r e , w e p l a n t o c o n s i d e r a d d i t i o n a l h e u r i s t i c o p -

    t i m i z a t i o n s , a s w e l l a s t h e p o s s i b i l i t y o f t r u l y e x p l o r i n g t h e

    s e a r c h s p a c e o f f e a s i b l e p l a n s .

    D e s p i t e t h e l a c k o f s o p h i s t i c a t e d q u e r y o p t i m i z a t i o n , L o r e

    d o e s e x p l o r e q u e r y p l a n s t h a t u s e i n d e x e s w h e n f e a s i b l e . I n

    a t r a d i t i o n a l r e l a t i o n a l D B M S , a n i n d e x i s c r e a t e d o n a n

    a t t r i b u t e i n o r d e r t o l o c a t e t u p l e s w i t h p a r t i c u l a r a t t r i b u t e

    v a l u e s q u i c k l y . I n L o r e , s u c h a v a l u e i n d e x a l o n e i s n o t s u f -

    c i e n t , s i n c e t h e p a t h t o a n o b j e c t i s a s i m p o r t a n t a s t h e

    v a l u e o f t h e o b j e c t . T h u s , w e h a v e t w o k i n d s o f i n d e x e s i n

    L o r e : a l i n k ( e d g e ) i n d e x , o r L i n d e x , a n d a v a l u e i n d e x , o r

    V i n d e x . A L i n d e x t a k e s a n o i d a n d a l a b e l , a n d r e t u r n s t h e

    o i d s o f a l l p a r e n t s v i a t h e s p e c i e d l a b e l . ( I f t h e l a b e l i s

    o m i t t e d a l l p a r e n t s a r e r e t u r n e d . ) T h e L i n d e x e s s e n t i a l l y

    p r o v i d e s \ p a r e n t p o i n t e r s , " s i n c e t h e y a r e n o t s u p p o r t e d b y

    L o r e ' s o b j e c t m a n a g e r . A V i n d e x t a k e s a l a b e l , o p e r a t o r ,

    a n d v a l u e . I t r e t u r n s a l l a t o m i c o b j e c t s h a v i n g a n i n c o m -

    i n g e d g e w i t h t h e s p e c i e d l a b e l a n d a v a l u e s a t i s f y i n g t h e

    s p e c i e d o p e r a t o r a n d v a l u e ( e . g . ,

  • 8/14/2019 Database Management Sys2

    8/13

    Lindex

    (OA2,"Age",OA1)

    Named_Obj("DBGroup", OA0)

    Project(OA3)

    Vindex("Age", >, 30, OA2)

    Join

    Once(OA1)

    Join

    Join

    Lindex

    (OA1,"Member",OA0)

    Scan

    (OA1,"Office",OA3)

    F i g u r e 6 : A q u e r y p l a n u s i n g i n d e x e s

    3 A S t r i n g - c o e r c e d - t o - r e a l V i n d e x , w h i c h c o n t a i n s a l l s t r i n g

    v a l u e s t h a t c a n b e c o e r c e d i n t o a n i n t e g e r o r r e a l ( s t o r e d

    a s r e a l s i n t h e i n d e x ) .

    F o r e a c h l a b e l o v e r w h i c h a V i n d e x i s c r e a t e d , t h r e e s e p a r a t e

    B + - t r e e s , o n e f o r e a c h t y p e , a r e c o n s t r u c t e d .

    W h e n u s i n g a V i n d e x f o r a c o m p a r i s o n ( e . g . , n d a l l A g e

    o b j e c t s > 3 0 ) , t h e r e a r e t w o c a s e s t o c o n s i d e r , b a s e d u p o n

    t h e t y p e o f c o m p a r i s o n v a l u e :

    1 . I f t h e v a l u e i s o f t y p e s t r i n g , t h e n : ( i ) d o a l o o k u p i n

    t h e S t r i n g V i n d e x ; ( i i ) i f t h e v a l u e c a n b e c o e r c e d t o

    a r e a l , t h e n a l s o d o a l o o k u p f o r t h e c o e r c e d v a l u e i n

    t h e R e a l V i n d e x .

    2 . I f t h e v a l u e i s o f t y p e r e a l ( o r i n t e g e r ) , t h e n : ( i ) d o a

    l o o k u p i n t h e R e a l V i n d e x ; ( i i ) a l s o d o a l o o k u p i n t h e

    S t r i n g - c o e r c e d - t o - r e a l V i n d e x .

    4 . 3 . 2 I n d e x Q u e r y P l a n s

    I f t h e u s e r ' s q u e r y c o n t a i n s a c o m p a r i s o n b e t w e e n a p a t h

    e x p r e s s i o n a n d a n i n t e g e r , r e a l , o r s t r i n g ( e . g . , \ D B G r o u p .

    M e m b e r . A g e > 3 0 " ) , a n d t h e a p p r o p r i a t e V i n d e x e s a n d L i n -

    d e x e s e x i s t , t h e n a q u e r y p l a n t h a t u s e s i n d e x e s w i l l b e g e n -

    e r a t e d . F o r s i m p l i c i t y , l e t u s c o n s i d e r o n l y q u e r i e s i n w h i c h

    t h e w h e r e c l a u s e c o n s i s t s o f o n e s u c h c o m p a r i s o n .

    Q u e r y p l a n s u s i n g i n d e x e s a r e d i e r e n t i n s h a p e f r o m

    t h o s e b a s e d o n S c a n o p e r a t o r s . I n t u i t i v e l y , i n d e x p l a n s t r a -

    v e r s e t h e d a t a b a s e b o t t o m - u p , w h i l e s c a n - b a s e d p l a n s p e r -

    f o r m a t o p - d o w n t r a v e r s a l . A n i n d e x q u e r y p l a n r s t l o c a t e s

    a l l o b j e c t s w i t h d e s i r e d v a l u e s a n d a p p r o p r i a t e l y l a b e l e d i n -

    c o m i n g e d g e s v i a t h e V i n d e x . A s e q u e n c e o f L i n d e x o p e r -

    a t i o n s t h e n t r a v e r s e s u p f r o m t h e s e o b j e c t s a t t e m p t i n g t o

    m a t c h t h e f u l l p a t h e x p r e s s i o n i n t h e c o m p a r i s o n .

    4

    N o t e

    t h a t o n c e w e h a v e a n O A t h a t s a t i s e s t h e w h e r e c l a u s e ,

    i t m a y b e n e c e s s a r y t o u s e o n e o r m o r e S c a n o p e r a t i o n s t o

    n d t h o s e c o m p o n e n t s o f t h e s e l e c t e x p r e s s i o n t h a t d o n o t

    a p p e a r i n t h e w h e r e c l a u s e .

    L e t u s c o n s i d e r t h e f o l l o w i n g q u e r y ( i n i t s O Q L - l i k e f o r m ) ,

    r s t i n t r o d u c e d i n S e c t i o n 2 :

    4

    A n o b v i o u s a l t e r n a t i v e i s t o u s e f u l l p a t h i n d e x e s i n p l a c e o f t h e

    L i n d e x . P a t h i n d e x e s w o u l d b e ( m u c h ) m o r e e x p e n s i v e t o m a i n t a i n

    b u t ( m u c h ) f a s t e r a t q u e r y t i m e . P a t h i n d e x e s a r e d i s c u s s e d i n m o r e

    d e t a i l i n G W 9 7 ] .

    s e l e c t O

    f r o m D B G r o u p . M e m b e r M , M . O f f i c e O

    w h e r e e x i s t s A i n M . A g e : A > 3 0

    A q u e r y p l a n u s i n g i n d e x e s i s s h o w n i n F i g u r e 6 . T h i s p l a n

    i n t r o d u c e s f o u r n e w q u e r y o p e r a t o r s : V i n d e x L i n d e x O n c e

    a n d N a m e d O b j . T h e V i n d e x o p e r a t o r , w h i c h a p p e a r s a s

    t h e l e f t c h i l d o f t h e s e c o n d J o i n o p e r a t o r , i t e r a t i v e l y n d s

    a l l a t o m i c o b j e c t s w i t h v a l u e l e s s t h a n 3 0 a n d a n i n c o m i n g

    e d g e l a b e l e d A g e , p l a c i n g t h e i r o i d s i n s l o t O A 2 . T h e L i n d e x

    o p e r a t o r t h a t a p p e a r s b e l o w t h e O n c e o p e r a t o r i t e r a t i v e l y

    p l a c e s i n t o O A 1 a l l p a r e n t s o f t h e o b j e c t i n O A 2 v i a a n A g e

    e d g e . ( S i n c e O E M d a t a m a y h a v e a r b i t r a r y g r a p h s t r u c t u r e ,

    t h e o b j e c t c o u l d p o t e n t i a l l y h a v e s e v e r a l p a r e n t s v i a A g e a s

    w e l l a s p a r e n t s v i a o t h e r l a b e l s . ) S i n c e A g e i s e x i s t e n t i a l l y

    q u a n t i e d i n t h e q u e r y , w e o n l y w a n t t o c o n s i d e r e a c h p a r -

    e n t o n c e , e v e n i f i t h a s s e v e r a l A g e s u b o b j e c t s ; t h i s i s t h e

    p u r p o s e o f t h e O n c e q u e r y o p e r a t o r . T h e s e c o n d L i n d e x

    o p e r a t o r n d s a l l p a r e n t s o f t h e O A 1 o b j e c t v i a a M e m b e r

    e d g e , p l a c i n g t h e m i n O A 0 . S i n c e w e w a n t t h e o b j e c t i n

    O A 0 t o b e t h e n a m e d o b j e c t D B G r o u p , t h e N a m e d O b j o p -

    e r a t o r c h e c k s w h e t h e r t h i s i s s o . O n c e w e h a v e t r a v e r s e d

    u p t h e d a t a b a s e u s i n g i n d e x c a l l s a n d c o n s t r u c t e d a v a l i d

    O A , w e n a l l y u s e a S c a n o p e r a t o r t o n d a l l O f f i c e s u b -

    o b j e c t s , w h i c h a r e r e t u r n e d a s t h e r e s u l t v i a t h e t o p m o s t

    P r o j e c t o p e r a t o r .

    C u r r e n t l y , f o r p r o c e s s i n g w h e r e c l a u s e s , L o r e o n l y c o n s i d -

    e r s s u b p l a n s t h a t a r e c o m p l e t e l y i n d e x - b a s e d ( i . e . , b o t t o m -

    u p ) , s u c h a s t h e o n e d i s c u s s e d h e r e , o r s u b p l a n s t h a t a r e

    c o m p l e t e l y S c a n - b a s e d ( i . e . , t o p - d o w n ) , s u c h a s t h e o n e i n

    F i g u r e 3 . A n i n t e r e s t i n g r e s e a r c h t o p i c t h a t w e h a v e j u s t b e -

    g u n t o a d d r e s s i s h o w t o c o m b i n e b o t h b o t t o m - u p ( i n d e x )

    a n d t o p - d o w n ( S c a n ) t r a v e r s a l s . W h e n t h e t w o t r a v e r s a l s

    r e a c h a p r e d e n e d \ m e e t i n g p o i n t " , t h e i n t e r s e c t i o n o f t h e

    o b j e c t s d i s c o v e r e d b y t h e i n d e x c a l l s a n d t h e S c a n o p e r a t o r s

    i d e n t i f y p a t h s t h a t s a t i s f y t h e w h e r e c l a u s e . T h e a p p r o p r i -

    a t e m e e t i n g p o i n t d e p e n d s o n t h e \ f a n - i n " a n d \ f a n - o u t " o f

    t h e v e r t i c e s a n d l a b e l s i n t h e d a t a b a s e , a n d r e q u i r e s t h e u s e

    o f s t a t i s t i c a l i n f o r m a t i o n .

    4 . 4 U p d a t e Q u e r y P l a n s

    T h a n k s t o q u e r y p l a n m o d u l a r i t y , w e w e r e a b l e t o h a n d l e

    a r b i t r a r y L o r e l u p d a t e s t a t e m e n t s b y a d d i n g a s i n g l e o p e r a -

    t o r , U p d a t e , t o t h e q u e r y e x e c u t i o n e n g i n e . W e i l l u s t r a t e t h e

    a p p r o a c h w i t h o u r e x a m p l e u p d a t e q u e r y f r o m S e c t i o n 2 . 2 :

  • 8/14/2019 Database Management Sys2

    9/13

  • 8/14/2019 Database Management Sys2

    10/13

    Subgraph

    containing

    all of Jim's

    Publications

    Fetched

    "Jim"

    120

    "Data

    Defined"

    Physical ViewLogical View

    FetchedData

    "Pub_Fetch.o"

    "Query

    Defined""Keyword"

    Name Publications

    Member

    "Jim"

    NamePublications

    Member

    Quantum

    Wrapper

    Arg1

    Type

    Value

    Arg2

    Type Query Label

    F i g u r e 8 : T h e l o g i c a l a n d p h y s i c a l v i e w s o f t h e d a t a

    n a l o b j e c t ( h a r d - c o d e d ) . E x a m p l e d a t a - d e n e d a n d q u e r y -

    d e n e d a r g u m e n t s c a n b e s e e n i n F i g u r e 8 a s A r g 1 a n d

    A r g 2 r e s p e c t i v e l y . T h e v a l u e o f t h e a t o m i c o b j e c t p o i n t e d

    t o b y t h e V a l u e e d g e f r o m A r g 1 i s s e n t t o t h e d a t a s o u r c e

    a s o n e a r g u m e n t . I n t h e q u e r y - d e n e d a r g u m e n t s p e c i c a -

    t i o n , t h e Q u e r y L a b e l o b j e c t w i t h v a l u e \ K e y w o r d " s p e c i -

    e s t h a t i f t h e q u e r y b e i n g p r o c e s s e d h a s a p r e d i c a t e o f t h e

    f o r m \ M e m b e r . P u b l i c a t i o n s . K e y w o r d = X " , t h e n X i s s e n t

    t o t h e e x t e r n a l d a t a s o u r c e a s a n o t h e r a r g u m e n t .

    M a n y c a l l s t o a n e x t e r n a l s o u r c e c a n q u i c k l y d o m i n a t e

    q u e r y p r o c e s s i n g t i m e . W e b r i e y m e n t i o n t w o o f t h e w a y s

    o u r e x t e r n a l d a t a m a n a g e r a t t e m p t s t o l i m i t t h e n u m b e r o f

    c a l l s . F i r s t , i f a s i n g l e q u e r y w i l l r e s u l t i n m u l t i p l e c a l l s

    t o a n e x t e r n a l s o u r c e ( d u e t o m u l t i p l e b i n d i n g s f o r d a t a -

    d e n e d a n d / o r q u e r y - d e n e d a r g u m e n t s ) , t h e n w e h a v e a

    m e c h a n i s m f o r r e c o g n i z i n g w h e n a c a l l t o a n e x t e r n a l s o u r c e

    w i l l s u b s u m e a n o t h e r s c h e d u l e d c a l l w i t h a d i e r e n t a r g u -

    m e n t s e t , a n d w e e l i m i n a t e t h e s e c o n d c a l l . S e c o n d , w e t r a c k

    t h e a r g u m e n t s e t s u s e d b y p r e v i o u s q u e r i e s a n d d e t e r m i n e

    w h e n p r e v i o u s l y f e t c h e d ( n o n - s t a l e ) i n f o r m a t i o n p a r t i a l l y o r

    e n t i r e l y s u b s u m e s i n f o r m a t i o n r e q u i r e d b y t h e c u r r e n t a r g u -

    m e n t s e t . A m o r e d e t a i l e d d e s c r i p t i o n o f a r g u m e n t s e t s a n d

    o p t i m i z a t i o n s a p p e a r s i n M W 9 7 ] .

    5 . 2 D a t a G u i d e s

    S i n c e a L o r e d a t a b a s e d o e s n o t h a v e a n e x p l i c i t s c h e m a ,

    q u e r y f o r m u l a t i o n a n d q u e r y o p t i m i z a t i o n a r e p a r t i c u l a r l y

    c h a l l e n g i n g . W i t h o u t s o m e k n o w l e d g e o f t h e s t r u c t u r e o f t h e

    u n d e r l y i n g d a t a b a s e , w r i t i n g a m e a n i n g f u l L o r e l q u e r y m a y

    b e d i c u l t , e v e n w h e n u s i n g g e n e r a l p a t h e x p r e s s i o n s . O n e

    m a y m a n u a l l y b r o w s e a d a t a b a s e t o l e a r n m o r e a b o u t i t s

    s t r u c t u r e , b u t t h i s a p p r o a c h i s u n r e a s o n a b l e f o r v e r y l a r g e

    d a t a b a s e s . F u r t h e r , w i t h o u t i n f o r m a t i o n a b o u t t h e s t r u c -

    t u r e o f t h e d a t a b a s e , t h e q u e r y p r o c e s s o r m a y b e f o r c e d t o

    p e r f o r m m o r e w o r k t h a n n e c e s s a r y . F o r e x a m p l e , c o n s i d e r

    t h e q u e r y p l a n d i s c u s s e d i n S e c t i o n 4 , w h i c h n d s t h e o c e s

    o f a l l g r o u p m e m b e r s o l d e r t h a n 3 0 . E v e n i f n o m e m b e r s

    h a v e a n o c e , t h e q u e r y p l a n w o u l d n e e d l e s s l y e x a m i n e e v -

    e r y m e m b e r i n t h e d a t a b a s e .

    A D a t a G u i d e i s a c o n c i s e a n d a c c u r a t e s u m m a r y o f t h e

    Age

    Project

    Office

    Project

    Member

    Building Room

    Title

    DBGroup

    Member

    Name

    F i g u r e 9 : A D a t a G u i d e f o r F i g u r e 1

    s t r u c t u r e o f a n O E M d a t a b a s e , s t o r e d i t s e l f a s a n O E M o b -

    j e c t . E a c h p o s s i b l e p a t h e x p r e s s i o n o f a d a t a b a s e i s e n c o d e d

    e x a c t l y o n c e i n t h e D a t a G u i d e , a n d t h e D a t a G u i d e h a s n o

    p a t h e x p r e s s i o n s t h a t d o n o t e x i s t i n t h e d a t a b a s e . I n t y p -

    i c a l s i t u a t i o n s , t h e D a t a G u i d e i s s i g n i c a n t l y s m a l l e r t h a n

    t h e o r i g i n a l d a t a b a s e . F i g u r e 9 s h o w s a D a t a G u i d e f o r t h e

    s a m p l e O E M d a t a b a s e f r o m F i g u r e 1 . I n L o r e , a D a t a G u i d e

    p l a y s a r o l e s i m i l a r t o m e t a d a t a i n t r a d i t i o n a l d a t a b a s e s y s -

    t e m s . T h e D a t a G u i d e m a y b e q u e r i e d o r b r o w s e d , e n a b l i n g

    u s e r i n t e r f a c e s o r c l i e n t a p p l i c a t i o n s t o e x a m i n e t h e s t r u c -

    t u r e o f t h e d a t a b a s e . A s w i l l b e s e e n i n t h e n e x t s e c t i o n , a n

    i n t e r a c t i v e D a t a G u i d e i s a n i m p o r t a n t p a r t o f L o r e ' s W e b

    i n t e r f a c e . A s s u m i n g t h e r o l e o f t h e m i s s i n g s c h e m a , t h e

    D a t a G u i d e c a n a l s o g u i d e t h e q u e r y p r o c e s s o r . O f c o u r s e ,

  • 8/14/2019 Database Management Sys2

    11/13

    i n r e l a t i o n a l o r o b j e c t - o r i e n t e d s y s t e m s t h e s c h e m a i s e x p l i c -

    i t l y c r e a t e d b e f o r e a n y d a t a i s l o a d e d ; i n L o r e , D a t a G u i d e s

    a r e d y n a m i c a l l y g e n e r a t e d a n d m a i n t a i n e d o v e r a l l o r p a r t

    o f a n e x i s t i n g d a t a b a s e .

    F o r a g i v e n O E M d a t a b a s e , t h e r e a r e m a n y D a t a G u i d e s

    t h a t s a t i s f y t h e d e s i r e d p r o p e r t i e s s p e c i e d a b o v e ( a c c u r a c y

    a n d c o n c i s e n e s s ) . F o r e x a m p l e , i n F i g u r e 9 w e c o u l d f u s e

    a l l l e a f o b j e c t s i n t o a s i n g l e o b j e c t w i t h o u t c h a n g i n g t h e

    f a c t t h a t e v e r y p a t h e x p r e s s i o n i s e n c o d e d e x a c t l y o n c e ( a n d

    w i t h o u t a d d i n g s u p e r u o u s p a t h s ) . I t t u r n s o u t t h a t c e r t a i n

    D a t a G u i d e s a r e m u c h e a s i e r t o k e e p c o n s i s t e n t i n r e s p o n s e

    t o u p d a t e s t o t h e u n d e r l y i n g d a t a b a s e . I n a d d i t i o n , s o m e

    D a t a G u i d e s s u p p o r t s t o r a g e o f a n n o t a t i o n s w i t h i n o b j e c t s :

    p r o p e r t i e s o f t h e s e t o f o b j e c t s r e a c h a b l e b y a p a t h e x p r e s -

    s i o n i n t h e o r i g i n a l d a t a b a s e . W e s t o r e a n a n n o t a t i o n f o r

    a g i v e n p a t h e x p r e s s i o n b y a s s i g n i n g i t t o t h e s i n g l e o b j e c t

    i n t h e D a t a G u i d e r e a c h a b l e b y t h a t p a t h e x p r e s s i o n . A n -

    n o t a t i o n s a r e u s e f u l , e . g . , f o r s t o r i n g s a m p l e a t o m i c v a l u e s

    r e a c h a b l e v i a a g i v e n p a t h e x p r e s s i o n , o r f o r s p e c i f y i n g t h e

    s t a t i s t i c a l c h a n c e s o f n d i n g a n o u t g o i n g e d g e w i t h a c e r t a i n

    l a b e l .

    I n G W 9 7 ] , f o r m a l d e n i t i o n s f o r D a t a G u i d e s a r e p r o -

    v i d e d a s w e l l a s a l g o r i t h m s t o b u i l d a n d i n c r e m e n t a l l y m a i n -

    t a i n D a t a G u i d e s t h a t s u p p o r t a n n o t a t i o n s . A l s o g i v e n i s a

    d i s c u s s i o n o f h o w D a t a G u i d e s a i d q u e r y f o r m u l a t i o n i n p r a c -

    t i c e a n d t h e i r u s e f o r q u e r y o p t i m i z a t i o n .

    6 I n t e r f a c e s t o L o r e

    A s s h o w n i n F i g u r e 2 , t h e L o r e A p p l i c a t i o n P r o g r a m m i n g

    I n t e r f a c e ( A P I ) p r o v i d e s a g a t e w a y b e t w e e n L o r e a n d a n y

    u s e r i n t e r f a c e o r c l i e n t a p p l i c a t i o n . I t i s u s e d , f o r i n s t a n c e ,

    b y t h e s y s t e m ' s t e x t u a l i n t e r f a c e , w h i c h p a s s e s u s e r c o m -

    m a n d s t o L o r e a n d p r e s e n t s q u e r y r e s u l t s i n a h i e r a r c h i c a l

    d i s p l a y . A f t e r s u m m a r i z i n g t h e A P I , w e d e s c r i b e a J a v a -

    b a s e d W e b i n t e r f a c e t h a t m a k e s L o r e s i m p l e t o u s e i n a n

    i n t e r a c t i v e f a s h i o n .

    6 . 1 A p p l i c a t i o n P r o g r a m m i n g I n t e r f a c e

    T h e L o r e A P I i s c o m p o s e d o f a s m a l l c o l l e c t i o n o f C + +

    c l a s s e s . F o r a n y c l i e n t , L o r e i s s i m p l y v i e w e d a s a s i n g l e

    l i b r a r y , a c c e s s i b l e t h r o u g h t h e A P I c l a s s e s a n d m e t h o d s d e -

    c l a r e d i n a s i n g l e h e a d e r l e . ( E v e n t u a l l y w e h o p e t o m o v e

    L o r e t o w a r d a t r a d i t i o n a l c l i e n t - s e r v e r m o d e l . ) A t t h e h i g h -

    e s t l e v e l , t h e A P I a l l o w s a c l i e n t p r o g r a m t o c o n n e c t t o a

    L o r e d a t a b a s e , s u b m i t q u e r i e s a n d c o m m a n d s , a n d p r o c e s s

    q u e r y r e s u l t s .

    A n y s e s s i o n w i t h a L o r e d a t a b a s e i s e n c a p s u l a t e d i n a n

    i n s t a n c e o f t h e L o r e C o n n e c t i o n c l a s s . A c l i e n t w i l l r s t

    C o n n e c t t o a s p e c i c d a t a b a s e ( a n d e v e n t u a l l y D i s c o n n e c t

    w h e n n i s h e d ) . C l i e n t s s u b m i t L o r e l q u e r i e s u s i n g t h e

    S u b m i t f u n c t i o n . S u b m i t i s a l s o u s e d f o r o t h e r L o r e s y s -

    t e m c o m m a n d s , s u c h a s i n d e x c r e a t i o n a n d u p d a t e s . W h e n

    c a l l e d w i t h a L o r e l q u e r y , S u b m i t r e t u r n s t h e q u e r y r e s u l t a s

    a L o r e O e m o b j e c t . A L o r e O e m i n s t a n c e i n i t i a l l y c o n t a i n s o n l y

    a n o i d ; t h e a c t u a l v a l u e i s f e t c h e d f r o m t h e d a t a b a s e o n d e -

    m a n d . F o r a t o m i c o b j e c t s , a c l i e n t m a y r e q u e s t t h e T y p e a n d

    V a l u e o f t h e o b j e c t . T o t r a v e r s e t h e s u b o b j e c t s o f a c o m p l e x

    o b j e c t , a c l i e n t i n s t a n t i a t e s a L o r e I t e r a t o r . E a c h s u c c e s -

    s i v e c a l l t o t h e i t e r a t o r ' s N e x t m e t h o d r e t u r n s a d i e r e n t

    L o r e O e m s u b o b j e c t a n d i t s L a b e l . B y n e s t i n g L o r e I t e r a t o r

    i n s t a n c e s , a c l i e n t m a y p e r f o r m a r b i t r a r y t r a v e r s a l s o f O E M

    o b j e c t s .

    6 . 2 W e b I n t e r f a c e

    A u s e r c o n n e c t s t o o u r g r a p h i c a l W e b i n t e r f a c e b y v i s i t -

    i n g a s p e c i c U R L a n d c h o o s i n g a d a t a b a s e . T h e u s e r i s

    F i g u r e 1 0 : A D a t a G u i d e i n J a v a

    t h e n p r e s e n t e d w i t h a J a v a p r o g r a m f e a t u r i n g a D a t a G u i d e ,

    a s d e s c r i b e d i n S e c t i o n 5 . 2 . U s e r s c a n q u i c k l y a n d e a s i l y

    b r o w s e t h e D a t a G u i d e t o e x p l o r e t h e s t r u c t u r e o f t h e u n d e r -

    l y i n g d a t a b a s e . T h r o u g h t h e W e b i n t e r f a c e , t h e u s e r m a y

    s u b m i t a t e x t u a l L o r e l q u e r y o r s e l e c t a s a m p l e p r e w r i t -

    t e n q u e r y . F u r t h e r m o r e , i n a s t y l e s i m i l a r t o Q u e r y - B y -

    E x a m p l e Z l o 7 7 ] , q u e r i e s m a y b e f o r m u l a t e d a n d s u b m i t t e d

    w i t h o u t a n y k n o w l e d g e o f L o r e l b y u s i n g t h e D a t a G u i d e

    t o s e l e c t p a t h e x p r e s s i o n s a n d s p e c i f y s e l e c t i o n c o n d i t i o n s .

    C u r r e n t l y , D a t a G u i d e q u e r i e s c a n e x p r e s s L o r e l q u e r i e s w i t h

    s i m p l e p a t h e x p r e s s i o n s a n d a w h e r e c l a u s e t h a t i s c o n j u n c -

    t i v e w i t h r e s p e c t t o u n i q u e p a t h e x p r e s s i o n s .

    A s a n e x a m p l e , F i g u r e 1 0 i s a s c r e e n s n a p s h o t o f t h e

    J a v a p r e s e n t a t i o n o f a D a t a G u i d e . T h i s D a t a G u i d e s u m m a -

    r i z e s a n e x i s t i n g d a t a b a s e f o r S t a n f o r d ' s D a t a b a s e G r o u p ,

    s i m i l a r i n s t r u c t u r e t o ( b u t m u c h l a r g e r t h a n ) t h e s a m p l e

    d a t a b a s e u s e d t h r o u g h o u t t h i s p a p e r . A r r o w s a c c o m p a n y

    c o m p l e x o b j e c t s a n d a r e u s e d t o e x p a n d o r c o l l a p s e s u b -

    o b j e c t s . A l s o , a d i a m o n d i s a s s o c i a t e d w i t h e a c h d i s p l a y e d

    l a b e l , c o r r e s p o n d i n g t o a u n i q u e p a t h e x p r e s s i o n f r o m t h e

    r o o t . W h e n t h e u s e r c l i c k s o n a d i a m o n d , a d i a l o g b o x

    p o p s u p , f r o m w h i c h t h e u s e r m a y v i e w s a m p l e v a l u e s , s e -

    l e c t t h e p a t h e x p r e s s i o n f o r t h e q u e r y r e s u l t , o r a d d l t e r i n g

    c o n d i t i o n s . W h e n t h e u s e r s e l e c t s a p a t h e x p r e s s i o n , t h e

    c o r r e s p o n d i n g d i a m o n d i s r e n d e r e d i n a d i e r e n t c o l o r . F i l -

    t e r i n g c o n d i t i o n s a r e d i s p l a y e d n e x t t o t h e c o r r e s p o n d i n g l a -

    b e l . T h e D a t a G u i d e s h o w n i n F i g u r e 1 0 r e p r e s e n t s a q u e r y

    t o s e l e c t a l l g r o u p m e m b e r s t h a t a r e P h D s t u d e n t s , h a v e a

    r e s e a r c h i n t e r e s t i n s e m i s t r u c t u r e d d a t a , a n d h a v e b e e n a t

    S t a n f o r d m o r e t h a n o n e y e a r b u t l e s s t h a n s i x . W h e n t h e

    u s e r c l i c k s G o , t h e J a v a p r o g r a m a u t o m a t i c a l l y g e n e r a t e s a n

    e q u i v a l e n t L o r e l q u e r y a n d s e n d s i t t o L o r e t o b e p r o c e s s e d .

  • 8/14/2019 Database Management Sys2

    12/13

    R e g a r d l e s s o f h o w a q u e r y i s s u b m i t t e d , t h e i n t e r f a c e d i s -

    p l a y s q u e r y r e s u l t s i n H T M L , i n a h i e r a r c h i c a l f o r m a t t h a t

    i s e a s y t o r e a d a n d n a v i g a t e . B y f o r m a t t i n g O E M o b j e c t s i n

    H T M L , w e c a n l e v e r a g e W e b b r o w s e r s u p p o r t f o r o u r m u l t i -

    m e d i a d a t a ( s u c h a s g i f l e s , a u d i o , o r v i d e o ) . T o m a k e t h e

    h i e r a r c h i c a l d i s p l a y o f O E M m o r e r e a d a b l e , w e p e r f o r m t w o

    s m a l l p r e s e n t a t i o n t r a n s f o r m a t i o n s . F i r s t , i f s e v e r a l o b j e c t s

    s h a r e t h e s a m e l a b e l , w e d i s p l a y t h e l a b e l o n l y o n c e a n d

    s h o w t h e v a l u e s o f t h e o b j e c t s u n d e r n e a t h i t . F o r e x a m p l e ,

    i f a q u e r y r e s u l t c o n t a i n s t e n o b j e c t s , e a c h w i t h t h e s a m e

    l a b e l P r o j e c t , w e c r e a t e a n H T M L p a g e t h a t b e g i n s w i t h

    a s i n g l e h e a d e r P r o j e c t s , f o l l o w e d b y t h e v a l u e s f o r a l l t e n

    p r o j e c t s . S e c o n d , w e p r e s e n t c o m p l e x O E M o b j e c t s a s a c -

    t i v e h y p e r l i n k s . C l i c k i n g o n t h e l i n k b r i n g s u p a n e w H T M L

    p a g e s h o w i n g t h e s u b o b j e c t s o f t h a t c o m p l e x o b j e c t .

    7 S y s t e m S t a t u s a n d F u t u r e W o r k

    A s o f J u n e 1 9 9 7 , t h e L o r e s y s t e m i s f u n c t i o n a l a n d r o b u s t f o r

    a l a r g e s u b s e t o f t h e L o r e l l a n g u a g e . I t c o n s i s t s o f a p p r o x i -

    m a t e l y 6 0 , 0 0 0 l i n e s o f C + + c o d e . S o m e l a n g u a g e f e a t u r e s ,

    s u c h a s e x t e r n a l p r e d i c a t e s a n d f u n c t i o n s , a r e s t i l l u n d e r

    i m p l e m e n t a t i o n . A l s o , g e n e r a l p a t h e x p r e s s i o n s a r e n o t y e t

    i m p l e m e n t e d i n t h e i r f u l l g e n e r a l i t y , a l t h o u g h a s u b s t a n t i a l

    a n d v e r y u s e f u l s u b s e t i s .

    A L o r e s e r v e r w i t h s a m p l e d a t a b a s e s i s a v a i l a b l e f o r p u b -

    l i c u s e . U s e r s c a n s u b m i t q u e r i e s a n d c a n e x p e r i m e n t w i t h

    f e a t u r e s s u c h a s D a t a G u i d e s a n d r e s u l t b r o w s i n g . T o v i s i t

    o u r o n - l i n e d e m o , s e e h t t p : / / w w w - d b . s t a n f o r d . e d u / l o r e

    I n a d d i t i o n , L o r e s y s t e m b i n a r i e s f o r s e v e r a l p l a t f o r m s a r e

    a v a i l a b l e t h r o u g h t h e W e b p a g e .

    W e a r e c o n s i d e r i n g m a n y p o s s i b l e e n h a n c e m e n t s a n d e x -

    t e n s i o n s t o L o r e , a s f o l l o w s .

    7 . 1 C o m p a t i b i l i t y a n d I n t e r o p e r a b i l i t y

    A s m e n t i o n e d i n S e c t i o n 2 a n d c o v e r e d i n d e t a i l i n A Q M

    +

    9 6 ] ,

    O E M a n d L o r e l c a n b e t r a n s l a t e d t o O D M G a n d O Q L

    C a t 9 4 ] . I n t h e t r a n s l a t i o n , O E M o b j e c t s a r e r e p r e s e n t e d

    b y O D M G o b j e c t s , w h i l e L o r e l q u e r i e s a r e t r a n s f o r m e d i n t o

    p u r e O Q L q u e r i e s t h a t u s e m e t h o d c a l l s t o h a n d l e L o r e l

    f e a t u r e s s u c h a s t y p e c o e r c i o n a n d g e n e r a l p a t h e x p r e s s i o n s .

    A s a p r o o f - o f - c o n c e p t f o r t h e t r a n s l a t i o n , w e h a v e i m p l e -

    m e n t i n g L o r e l o n t o p o f t h e O

    2

    o b j e c t - o r i e n t e d d a t a b a s e

    m a n a g e m e n t s y s t e m B D K 9 2 ] . N o t e t h a t t h i s i m p l e m e n -

    t a t i o n e n a b l e s t h e s t o r a g e o f s e m i s t r u c t u r e d ( O E M ) a n d

    s t r u c t u r e d ( O D M G ) d a t a i n a s i n g l e r e p o s i t o r y , p r o v i d i n g

    a u s e f u l s e t t i n g i n w h i c h w e a r e s t u d y i n g i n t e g r a t i o n o f t h e

    t w o d a t a m o d e l s . W e a l s o p l a n t o e x p l o r e h o w L o r e l c o u l d

    b e t r a n s l a t e d t o S Q L 3 a n d t h u s i m p l e m e n t e d o n t o p o f a n

    o b j e c t - r e l a t i o n a l d a t a b a s e m a n a g e m e n t s y s t e m .

    7 . 2 P e r f o r m a n c e I s s u e s

    T o d a t e w e h a v e d o n e l i t t l e p e r f o r m a n c e a n a l y s i s o f L o r e .

    T h e r e a r e a n u m b e r o f p e r f o r m a n c e a s p e c t s w e w a n t t o c o n -

    s i d e r , s u c h a s o v e r a l l p e r f o r m a n c e a n d b o t t l e n e c k s i n t h e s y s -

    t e m , s c a l a b i l i t y o f t h e s y s t e m t o e x t r e m e l y l a r g e d a t a b a s e s ,

    a n d c o m p a r i n g t h e p e r f o r m a n c e o f L o r e a g a i n s t o u r i m p l e -

    m e n t a t i o n o f L o r e l o n t o p o f O

    2

    ( s e e S e c t i o n 7 . 1 ) .

    T h e r e i s s i g n i c a n t a d d i t i o n a l r e s e a r c h t o d o i n q u e r y

    o p t i m i z a t i o n , i n c l u d i n g q u e r y r e w r i t i n g , o p e r a t i o n o r d e r i n g ,

    s e l e c t i n g t h e b e s t u s e o f i n d e x e s i n q u e r y p l a n s , a n d e x p l o i t -

    i n g i n f o r m a t i o n s t o r e d i n t h e D a t a G u i d e .

    A s d e s c r i b e d i n S e c t i o n 4 . 3 , w e c a n b u i l d i n L o r e a l i n k

    i n d e x ( L i n d e x ) i n o r d e r t o q u i c k l y n d a l l p a r e n t s o f a g i v e n

    o b j e c t r e a c h a b l e v i a a g i v e n l a b e l . A l t e r n a t i v e l y , w e c o u l d

    i n s t e a d a u g m e n t o u r s t o r a g e m a n a g e r t o s t o r e w i t h o b j e c t s

    t h e i r i n v e r s e ( p a r e n t ) p o i n t e r s i n a d d i t i o n t o t h e i r s u b o b j e c t

    ( c h i l d ) p o i n t e r s . W e p l a n t o c o m p a r e t h e p e r f o r m a n c e o f a

    s t o r a g e m a n a g e r w i t h i n v e r s e p o i n t e r s t o t h a t o f o u r c u r r e n t

    a p p r o a c h b a s e d o n L i n d e x e s . W e a l s o p l a n t o c o n s i d e r u s -

    n g p a t h i n d e x e s i n p l a c e o f t h e L i n d e x . I n t e r e s t i n g l y , t h e

    f u n c t i o n a l i t y o f p a t h i n d e x e s i s i n c o r p o r a t e d e a s i l y i n t o t h e

    D a t a G u i d e , a s d i s c u s s e d i n G W 9 7 ] .

    C u r r e n t l y a l l \ e x p a n s i o n s " o f p a t h e x p r e s s i o n s i n q u e r y

    p a t h s a r e d o n e a t r u n - t i m e . H o w e v e r , f o r s o m e c l a s s e s o f

    p a t h e x p r e s s i o n s , i t i s p o s s i b l e t o u s e i n f o r m a t i o n i n t h e

    D a t a G u i d e t o e x p a n d t h e r e g u l a r e x p r e s s i o n s t o a l l p o s -

    s i b l e c o m p l e t i o n s a t q u e r y c o m p i l a t i o n t i m e . W e p l a n t o

    e x p l o r e t h e c o m p i l e - t i m e a p p r o a c h a n d c o m p a r e i t s p e r f o r -

    m a n c e a g a i n s t t h e r u n - t i m e a p p r o a c h w e n o w t a k e .

    7 3 N e w F u n c t i o n a l i t y

    W e a r e i n t h e p r o c e s s o f i m p l e m e n t i n g t r a n s a c t i o n s u p p o r t

    f o r c o n c u r r e n c y c o n t r o l a n d r e c o v e r y . A s w i t h o t h e r a s p e c t s

    o f L o r e , t h e s e m i s t r u c t u r e d n a t u r e o f L o r e ' s d a t a i s r e q u i r i n g

    u s t o r e t h i n k s o m e a s p e c t s o f t r a d i t i o n a l s o l u t i o n s .

    I n t h e u s e r i n t e r f a c e a r e a , w e p l a n t o i n c r e a s e t h e e x p r e s -

    s i v e n e s s o f D a t a G u i d e q u e r i e s t o w a r d t h e f u l l p o w e r o f L o r e l .

    I n a d d i t i o n , t o f o l l o w t h e r e c e n t t r e n d o f e n a b l i n g d a t a b a s e

    s y s t e m s t o d y n a m i c a l l y g e n e r a t e c u s t o m i z e d H T M L d i s p l a y s

    o f q u e r y r e s u l t s G a f 9 7 , B D K 9 2 ] , w e p l a n t o i n v e s t i g a t e m o r e

    s o p h i s t i c a t e d t e c h n i q u e s f o r c u s t o m i z i n g t h e p r e s e n t a t i o n o f

    O E M o b j e c t s i n a W e b e n v i r o n m e n t .

    I n a c o m p a n i o n p r o j e c t , w e h a v e e x t e n d e d O E M a n d

    L o r e l i n o r d e r t o t r e a t c h a n g e s t o t h e d a t a a s a r s t - c l a s s

    c o n c e p t C A W 9 7 ] , s i m i l a r t o t h e H e r a c l i t u s s y s t e m t h a t o p -

    e r a t e s o n s t r u c t u r e d d a t a G H J 9 6 ] . C u r r e n t l y w e a r e i m p l e -

    m e n t i n g t h i s m o d e l a n d l a n g u a g e o n t o p o f t h e L o r e s y s t e m .

    I n i t i a l w o r k i s u n d e r w a y t o d e n e b o t h v i e w a n d t r i g g e r

    m e c h a n i s m s a p p r o p r i a t e f o r s e m i s t r u c t u r e d d a t a , a n d t o i m -

    p l e m e n t t h e m i n L o r e . ( S e e A G M

    +

    9 7 ] f o r a d i s c u s s i o n o f

    v i e w s i n t h e c o n t e x t o f O E M a n d L o r e l . ) F i n a l l y , b e c a u s e

    m a n y a p p l i c a t i o n s a p p r o p r i a t e f o r a s e m i s t r u c t u r e d D B M S

    s u c h a s L o r e i n c l u d e a s i g n i c a n t a m o u n t o f t e x t d a t a , w e

    p l a n t o i n c o r p o r a t e a s p e c i a l t e x t t y p e a l o n g w i t h a f u l l - t e x t

    i n d e x i n g s y s t e m i n t o L o r e .

    A c k n o w l e d g m e n t s

    F o r t h e i r m a n y c o n t r i b u t i o n s t o t h e L o r e p r o j e c t a n d s y s t e m

    i m p l e m e n t a t i o n w e a r e g r a t e f u l t o ( a l p h a b e t i c a l l y ) K e v i n

    H a a s , M a t t J a c o b s e n , T i r t h a n k a r L a h i r i , Q i n g s h a n L u o ,

    S v e t l o z a r N e s t o r o v , A n a n d R a j a r a m a n , H u g o R i v e r o ,

    M i c h a e l R y s , a n d T a k e s h i Y o k o k a w a . W e a l s o t h a n k m a n y

    o t h e r m e m b e r s o f t h e S t a n f o r d D a t a b a s e G r o u p f o r f r u i t f u l

    d i s c u s s i o n s a b o u t L o r e a n d L o r e l , i n c l u d i n g ( a l p h a b e t i c a l l y )

    S u d a r s h a n C h a w a t h e , J o a c h i m H a m m e r , S h u k y S a g i v , J e

    U l l m a n , J a n e t W i e n e r , a n d J u n Y a n g . F i n a l l y , w e a r e g r a t e -

    f u l t o a n a n o n y m o u s r e f e r e e f o r a c a r e f u l r e a d i n g a n d h e l p f u l

    c o m m e n t s .

    R e f e r e n c e s

    A b i 9 7 ] S . A b i t e b o u l . Q u e r y i n g s e m i s t r u c t u r e d d a t a . I n

    P r o c e e d i n g s o f t h e I n t e r n a t i o n a l C o n f e r e n c e o n

    D a t a b a s e T h e o r y , D e l p h i , G r e e c e , J a n u a r y 1 9 9 7 .

    A G M

    +

    9 7 ] S . A b i t e b o u l , R . G o l d m a n , J . M c H u g h , V . V a s s a -

    l o s , a n d Y . Z h u g e . V i e w s f o r s e m i s t r u c t u r e d d a t a .

    I n P r o c e e d i n g s o f t h e W o r k s h o p o n M a n a g e m e n t

    o f S e m i s t r u c t u r e d D a t a , p a g e s 8 3 { 9 0 , T u c s o n , A r i -

    z o n a , M a y 1 9 9 7 .

    A Q M

    +

    9 6 ] S . A b i t e b o u l , D . Q u a s s , J . M c H u g h , J . W i d o m ,

    a n d J . W i e n e r . T h e L o r e l q u e r y l a n g u a g e f o r s e m i -

    s t r u c t u r e d d a t a . J o u r n a l o f D i g i t a l L i b r a r i e s , 1 ( 1 ) ,

    N o v e m b e r 1 9 9 6 .

  • 8/14/2019 Database Management Sys2

    13/13

    B C K

    +

    9 4 ] G . B l a k e , M . C o n s e n s , P . K i l p e l a i n e n , P . L a r s o n ,

    T . S n i d e r , a n d F . T o m p a . T e x t / r e l a t i o n a l d a t a -

    b a s e m a n a g e m e n t s y s t e m s : H a r m o n i z i n g S Q L a n d

    S G M L . I n P r o c e e d i n g s o f t h e F i r s t I n t e r n a t i o n a l

    C o n f e r e n c e o n A p p l i c a t i o n s o f D a t a b a s e s , p a g e s

    2 6 7 { 2 8 0 , V a d s t e n a , S w e d e n , 1 9 9 4 .

    B D H S 9 6 ] P . B u n e m a n , S . D a v i d s o n , G . H i l l e b r a n d , a n d

    D . S u c i u . A q u e r y l a n g u a g e a n d o p t i m i z a t i o n t e c h -

    n i e q u e s f o r u n s t r u c t u r e d d a t a . I n P r o c e e d i n g s o f

    t h e A C M S I G M O D I n t e r n a t i o n a l C o n f e r e n c e o n

    M a n a g e m e n t o f D a t a , p a g e s 5 0 5 { 5 1 6 , M o n t r e a l ,

    C a n a d a , J u n e 1 9 9 6 .

    B D K 9 2 ] F . B a n c i l h o n , C . D e l o b e l , a n d P . K a n e l l a k i s , e d i -

    t o r s . B u i l d i n g a n O b j e c t - O r i e n t e d D a t a b a s e S y s -

    t e m : T h e S t o r y o f O

    2

    . M o r g a n K a u f m a n n , S a n

    F r a n c i s c o , C a l i f o r n i a , 1 9 9 2 .

    B D S 9 5 ] P . B u n e m a n , S . D a v i d s o n , a n d D . S u c i u . P r o g r a m -

    m i n g c o n s t r u c t s f o r u n s t r u c t u r e d d a t a . I n P r o c e e d -

    i n g s o f t h e 1 9 9 5 I n t e r n a t i o n a l W o r k s h o p o n D a t a -

    b a s e P r o g r a m m i n g L a n g u a g e s ( D B P L ) , 1 9 9 5 .

    B K 9 4 ] C . B e e r i a n d Y . K o r n a t s k i . A l o g i c a l q u e r y l a n g u a g e

    f o r h y p e r m e d i a s y s t e m s . I n f o r m a t i o n S c i e n c e s , 7 7 ,

    1 9 9 4 .

    C A C S 9 4 ] V . C h r i s t o p h i d e s , S . A b i t e b o u l , S . C l u e t , a n d

    M . S c h o l l . F r o m s t r u c t u r e d d o c u m e n t s t o n o v e l

    q u e r y f a c i l i t i e s . I n P r o c e e d i n g s o f t h e A C M S I G -

    M O D I n t e r n a t i o n a l C o n f e r e n c e o n M a n a g e m e n t o f

    D a t a , p a g e s 3 1 3 { 3 2 4 , M i n n e a p o l i s , M i n n e s o t a , M a y

    1 9 9 4 .

    C a t 9 4 ] R . G . G . C a t t e l l . T h e O b j e c t D a t a b a s e S t a n d a r d :

    O D M G - 9 3 . M o r g a n K a u f m a n n , S a n F r a n c i s c o , C a l -

    i f o r n i a , 1 9 9 4 .

    C A W 9 7 ] S . C h a w a t h e , S . A b i t e b o u l , a n d J . W i d o m . R e p -

    r e s e n t i n g a n d q u e r y i n g c h a n g e s i n s e m i s t r u c t u r e d

    d a t a . T e c h n i c a l r e p o r t , S t a n f o r d U n i v e r s i t y D a t a -

    b a s e G r o u p , F e b r u a r y 1 9 9 7 .

    C C M 9 6 ] V . C h r i s t o p h i d e s , S . C l u e t , a n d G . M o e r k o t t e . E v a l -

    u a t i n g q u e r i e s w i t h g e n e r a l i z e d p a t h e x p r e s s i o n s .

    I n P r o c e e d i n g s o f t h e A C M S I G M O D I n t e r n a t i o n a l

    C o n f e r e n c e o n M a n a g e m e n t o f D a t a , p a g e s 4 1 3 {

    4 2 2 , M o n t r e a l , C a n a d a , J u n e 1 9 9 6 .

    C M 8 9 ] M . P . C o n s e n s a n d A . O . M e n d e l z o n . E x p r e s s i n g

    s t r u c t u r a l h y p e r t e x t q u e r i e s i n G r a p h L o g . I n P r o -

    c e e d i n g s o f t h e S e c o n d A C M C o n f e r e n c e o n H y -

    p e r t e x t , p a g e s 2 6 9 { 2 9 2 , P i t t s b u r g h , P e n n s y l v a n i a ,

    N o v e m b e r 1 9 8 9 .

    C o m 9 1 ] I E E E C o m p u t e r . S p e c i a l I s s u e o n H e t e r o g e n e o u s

    D i s t r i b u t e d D a t a b a s e S y s t e m s , 2 4 ( 1 2 ) , D e c e m b e r

    1 9 9 1 .

    G a f 9 7 ] J . G a n e y . I l l u s t r a ' s w e b d a t a b l a d e m o d u l e .

    T e c h n i c a l r e p o r t , I n f o r m i x C o r p o r a t i o n , F e b r u -

    a r y 1 9 9 7 . A v a i l a b l e a t h t t p : / / w w w . i n f o r m i x . c o m

    a s / i n f o r m i x / c o r p i n f o / z i n e s / w h i t p p r s / i l l u s w p /

    d b l a d e . h t m

    G H J 9 6 ] S . G h a n d e h a r i z a d e h , R . H u l l , a n d D . J a c o b s . H e r -

    a c l i t u s : E l e v a t i n g d e l t a s t o b e r s t c l a s s c i t i z e n s i n

    a d a t a b a s e p r o g r a m m i n g l a n g u a g e . A C M T r a n s a c -

    t i o n s o n D a t a b a s e S y s t e m s , 2 1 ( 3 ) : 3 7 0 { 4 2 6 , 1 9 9 6 .

    G r a 9 3 ] G . G r a e f e . Q u e r y e v a l u a t i o n t e c h n i q u e s f o r l a r g e

    d a t a b a s e s . A C M C o m p u t i n g S u r v e y s , 2 5 ( 2 ) : 7 3 { 1 7 0 ,

    1 9 9 3 .

    G W 9 7 ] R . G o l d m a n a n d J . W i d o m . D a t a g u i d e s : E n a b l i n g

    q u e r y f o r m u l a t i o n a n d o p t i m i z a t i o n i n s e m i s t r u c -

    t u r e d d a t a b a s e s . I n P r o c e e d i n g s o f t h e T w e n t y -

    T h i r d I n t e r n a t i o n a l C o n f e r e n c e o n V e r y L a r g e

    D a t a B a s e s , A t h e n s , G r e e c e , A u g u s t 1 9 9 7 .

    K K S 9 2 ] M . K i f e r , W . K i m , a n d Y . S a g i v . Q u e r y i n g o b j e c t -

    o r i e n t e d d a t a b a s e s . I n P r o c e e d i n g s o f t h e A C M

    S I G M O D I n t e r n a t i o n a l C o n f e r e n c e o n M a n a g e -

    m e n t o f D a t a , p a g e s 3 9 3 { 4 0 2 , S a n D i e g o , C a l i f o r -

    n i a , J u n e 1 9 9 2 .

    K S 9 5 ] D . K o n o p n i c k i a n d O . S h m u e l i . W 3 Q S : A q u e r y

    s y s t e m f o r t h e W o r l d W i d e W e b . I n P r o c e e d i n g s o f

    t h e T w e n t y - F i r s t I n t e r n a t i o n a l C o n f e r e n c e o n V e r y

    L a r g e D a t a B a s e s , p a g e s 5 4 { 6 5 , Z u r i c h , S w i t z e r -

    l a n d , S e p t e m b e r 1 9 9 5 .

    L i t 8 0 ] W . L i t w i n . L i n e a r h a s h i n g : a n e w t o o l f o r l e a n d

    t a b l e a d d r e s s i n g . I n P r o c e e d i n g s o f t h e I n t e r n a -

    t i o n a l C o n f e r e n c e o n V e r y L a r g e D a t a B a s e s , p a g e s

    2 1 2 { 2 2 3 , M o n t r e a l , C a n a d a , O c t o b e r 1 9 8 0 .

    L M R 9 0 ] W . L i t w i n , L . M a r k , a n d N . R o u s s o p o u l o s . I n t e r o p -

    e r a b i l i t y o f m u l t i p l e a u t o n o m o u s d a t a b a s e s . A C M

    C o m p u t i n g S u r v e y s , 2 2 ( 3 ) : 2 6 7 { 2 9 3 , 1 9 9 0 .

    L S S 9 6 ] L . V . S . L a k s h m a n a n , F . S a d r i , a n d I . N . S u b r a m a -

    n i a n . A d e c l a r a t i v e l a n g u a g e f o r q u e r y i n g a n d r e -

    s t r u c t u r i n g t h e W e b . I n P r o c e e d i n g s o f t h e S i x t h I n -

    t e r n a t i o n a l W o r k s h o p o n R e s e a r c h I s s u e s i n D a t a

    E n g i n e e r i n g ( R I D E ' 9 6 ) , N e w O r l e a n s , F e b r u a r y

    1 9 9 6 .

    M M M 9 6 ] A . O . M e n d e l z o n , G . M i h a i l a , a n d T . M i l o . Q u e r y i n g

    t h e w o r l d w i d e w e b . I n P r o c e e d i n g s o f t h e C o n f e r -

    e n c e o n P a r a l l e l a n d D i s t r i b u t e d I n f o r m a t i o n S y s -

    t e m s ( P D I S ' 9 6 ) , D e c e m b e r 1 9 9 6 . F u l l v e r s i o n t o

    a p p e a r i n t h e J o u r n a l o f D i g i t a l L i b r a r i e s .

    M S 9 3 ] J . M e l t o n a n d A . R . S i m o n . U n d e r s t a n d i n g t h e N e w

    S Q L : A C o m p l e t e G u i d e . M o r g a n K a u f m a n n , S a n

    F r a n c i s c o , C a l i f o r n i a , 1 9 9 3 .

    M W 9 3 ] T . M i n o h a r a a n d R . W a t a n a b e . Q u e r i e s o n s t r u c -

    t u r e i n h y p e r t e x t . I n P r o c e e d i n g s o f t h e C o n f e r e n c e

    o n F o u n d a t i o n s o f D a t a O r g a n i z a t i o n ( F O D O ' 9 3 )

    p a g e s 3 9 4 { 4 1 1 . S p r i n g e r V e r l a g , 1 9 9 3 .

    M W 9 5 ] A . O . M e n d e l z o n a n d P . T . W o o d . F i n d i n g r e g u l a r

    s i m p l e p a t h s i n g r a p h d a t a b a s e s . S I A M J o u r n a l o f

    C o m p u t i n g , 2 4 ( 6 ) , 1 9 9 5 .

    M W 9 7 ] J . M c H u g h a n d J . W i d o m . I n t e g r a t i n g d y n a m i c a l l y -

    f e t c h e d e x t e r n a l i n f o r m a t i o n i n t o a d b m s f o r s e m i -

    s t r u c t u r e d d a t a . I n P r o c e e d i n g s o f t h e W o r k s h o p o n

    M a n a g e m e n t o f S e m i s t r u c t u r e d D a t a , p a g e s 7 5 { 8 2 ,

    T u c s o n , A r i z o n a , M a y 1 9 9 7 .

    O ' N 8 7 ] P a t r i c k O ' N e i l . M o d e l 2 0 4 a r c h i t e c t u r e a n d p e r -

    f o r m a n c e . I n P r o c e e