comprimiendo grafos de la web

Post on 09-Jan-2017

216 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Mapa

Comprimiendo Grafos de la Web

Gonzalo Navarro

Centro de Investigacion de la WebDepartamento de Ciencias de la Computacion

Universidad de Chile

En colaboracion con los estudiantes Francisco Claude y Rodrigo Gonzalez

G. Navarro Comprimiendo Grafos de la Web

Mapa

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Mapa

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Mapa

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Mapa

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Mapa

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Estructuras de Datos Compactas

I Modificadas para ocupar poco espacio.I Y eso no es compresion?

I Deben retener su funcionalidad y acceso directo.I Para que, si la memoria es tan barata?

I Mejora el rendimiento debido a la jerarquıa de memoria.I Cada vez mas populares por motivos tecnologicos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Motivacion

Compresion de Grafos

I Util para ejecutar, en memoria principal, algoritmos sobregrafos grandes.

I Algoritmos como que?

I Descubrir comunidades, calcular PageRank, minerıa degrafos, ... (mas ejemplos en la charla de Claudio)

I Consideraremos las operaciones mas basicas:I Obtener los vecinos de un nodo u: v , (u, v) ∈ E .I Obtener los vecinos reversos de un nodo u: v , (v , u) ∈ E .I Calcular el grado interior/exterior de un nodo u.I Verificar la existencia de arista (u, v) in E .

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Entropıa (Empırica)

I Entropıa binaria: si hay n0 ceros y n1 unos en B(n0 + n1 = n = |B|)

H0(B) =n0

nlog

nn0

+n1

nlog

nn1

I Entropıa de orden cero: si hay na ocurrencias de a en S,

H0(S) =∑a∈Σ

na

nlog

nna

I Cota inferior a cualquier codificacion de Σ que asignesiempre el mismo codigo al mismo sımbolo.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Entropıa (Empırica)

I Entropıa binaria: si hay n0 ceros y n1 unos en B(n0 + n1 = n = |B|)

H0(B) =n0

nlog

nn0

+n1

nlog

nn1

I Entropıa de orden cero: si hay na ocurrencias de a en S,

H0(S) =∑a∈Σ

na

nlog

nna

I Cota inferior a cualquier codificacion de Σ que asignesiempre el mismo codigo al mismo sımbolo.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Entropıa (Empırica)

I Entropıa binaria: si hay n0 ceros y n1 unos en B(n0 + n1 = n = |B|)

H0(B) =n0

nlog

nn0

+n1

nlog

nn1

I Entropıa de orden cero: si hay na ocurrencias de a en S,

H0(S) =∑a∈Σ

na

nlog

nna

I Cota inferior a cualquier codificacion de Σ que asignesiempre el mismo codigo al mismo sımbolo.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Entropıa (Empırica)

I Entropıa de orden k : si SA son los caracteres que siguen alas ocurrencias de A en S,

Hk (S) =1n

∑A∈Σk

|SA|H0(SA)

I Cota inferior a codificaciones que consideran los ksımbolos precedentes.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Entropıa (Empırica)

I Entropıa de orden k : si SA son los caracteres que siguen alas ocurrencias de A en S,

Hk (S) =1n

∑A∈Σk

|SA|H0(SA)

I Cota inferior a codificaciones que consideran los ksımbolos precedentes.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Matriz de Incidencia

a

d

e

c

b

d eb ca

a

b

c

d

e

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Matriz de IncidenciaI Con n nodos y e aristas, ocupa n2 bits.I Responde existencia en tiempo O(1).I Encuentra todos los vecinos directos/reversos en O(n).I Calcula grado interior/exterior en O(n).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Matriz de IncidenciaI Con n nodos y e aristas, ocupa n2 bits.I Responde existencia en tiempo O(1).I Encuentra todos los vecinos directos/reversos en O(n).I Calcula grado interior/exterior en O(n).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Matriz de IncidenciaI Con n nodos y e aristas, ocupa n2 bits.I Responde existencia en tiempo O(1).I Encuentra todos los vecinos directos/reversos en O(n).I Calcula grado interior/exterior en O(n).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Matriz de IncidenciaI Con n nodos y e aristas, ocupa n2 bits.I Responde existencia en tiempo O(1).I Encuentra todos los vecinos directos/reversos en O(n).I Calcula grado interior/exterior en O(n).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

b:

c:

d:

e:

d

d,c,a

d,c

d,c,ba:

a

d

e

c

b

b:

c:

d:

e:

a,b,e

a

ba:

a,b,c,e

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

I Con n nodos y e aristas, ocupa n log e + e log n bits.I Encuentra cada vecino en tiempo O(1).I Calcula grado exterior en tiempo O(1).I Responde existencia en tiempo O(n).I Necesita otro tanto para los reversos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

I Con n nodos y e aristas, ocupa n log e + e log n bits.I Encuentra cada vecino en tiempo O(1).I Calcula grado exterior en tiempo O(1).I Responde existencia en tiempo O(n).I Necesita otro tanto para los reversos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

I Con n nodos y e aristas, ocupa n log e + e log n bits.I Encuentra cada vecino en tiempo O(1).I Calcula grado exterior en tiempo O(1).I Responde existencia en tiempo O(n).I Necesita otro tanto para los reversos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

I Con n nodos y e aristas, ocupa n log e + e log n bits.I Encuentra cada vecino en tiempo O(1).I Calcula grado exterior en tiempo O(1).I Responde existencia en tiempo O(n).I Necesita otro tanto para los reversos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Lista de Adyacencia

I Con n nodos y e aristas, ocupa n log e + e log n bits.I Encuentra cada vecino en tiempo O(1).I Calcula grado exterior en tiempo O(1).I Responde existencia en tiempo O(n).I Necesita otro tanto para los reversos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Relaciones BinariasI Con tecnicas muy novedosas de estructuras sucintas para

relaciones binarias...I ... se puede conseguir e log(n2/e) (1 + o(1)) bits...I ... y responder todo en tiempo O(log log n).I Obtiene lo mejor de los dos mundos...I ... pero aun no es demasiado bueno para la Web.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Relaciones BinariasI Con tecnicas muy novedosas de estructuras sucintas para

relaciones binarias...I ... se puede conseguir e log(n2/e) (1 + o(1)) bits...I ... y responder todo en tiempo O(log log n).I Obtiene lo mejor de los dos mundos...I ... pero aun no es demasiado bueno para la Web.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Relaciones BinariasI Con tecnicas muy novedosas de estructuras sucintas para

relaciones binarias...I ... se puede conseguir e log(n2/e) (1 + o(1)) bits...I ... y responder todo en tiempo O(log log n).I Obtiene lo mejor de los dos mundos...I ... pero aun no es demasiado bueno para la Web.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Relaciones BinariasI Con tecnicas muy novedosas de estructuras sucintas para

relaciones binarias...I ... se puede conseguir e log(n2/e) (1 + o(1)) bits...I ... y responder todo en tiempo O(log log n).I Obtiene lo mejor de los dos mundos...I ... pero aun no es demasiado bueno para la Web.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Relaciones BinariasI Con tecnicas muy novedosas de estructuras sucintas para

relaciones binarias...I ... se puede conseguir e log(n2/e) (1 + o(1)) bits...I ... y responder todo en tiempo O(log log n).I Obtiene lo mejor de los dos mundos...I ... pero aun no es demasiado bueno para la Web.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Representacion de Grafos

Algunos ejemplos de bpe’s (crawls reales)

Grafo n e Matriz Lista 2 x Lista Rel. BinUK 18.5M 298M 1.15M 25.89 51.78 20.13EU 860K 19M 39K 20.81 41.62 15.25Arabic 23M 640M 827K 25.51 51.02 19.66Indochina 7M 194M 253K 23.73 47.46 17.95

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Grafos Planares y Variantes

I Con n nodos, tienen O(n) aristas.I Distintas tecnicas para comprimirlos a O(n) bits.I Algunas permiten acceso directo.I Hay algunos resultados para tipos especiales de grafos.I Es improbable que tengan algun impacto en grafos Web.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Grafos Planares y Variantes

I Con n nodos, tienen O(n) aristas.I Distintas tecnicas para comprimirlos a O(n) bits.I Algunas permiten acceso directo.I Hay algunos resultados para tipos especiales de grafos.I Es improbable que tengan algun impacto en grafos Web.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Grafos Planares y Variantes

I Con n nodos, tienen O(n) aristas.I Distintas tecnicas para comprimirlos a O(n) bits.I Algunas permiten acceso directo.I Hay algunos resultados para tipos especiales de grafos.I Es improbable que tengan algun impacto en grafos Web.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Grafos Planares y Variantes

I Con n nodos, tienen O(n) aristas.I Distintas tecnicas para comprimirlos a O(n) bits.I Algunas permiten acceso directo.I Hay algunos resultados para tipos especiales de grafos.I Es improbable que tengan algun impacto en grafos Web.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Grafos Planares y Variantes

I Con n nodos, tienen O(n) aristas.I Distintas tecnicas para comprimirlos a O(n) bits.I Algunas permiten acceso directo.I Hay algunos resultados para tipos especiales de grafos.I Es improbable que tengan algun impacto en grafos Web.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Separadores de Grafos

I Mejor exponente: Blandford [PhD Thesis, 2006]I Encontrar zonas que se pueden desconectar cortando

unas pocas aristas.I Renumerar los nodos y comprimirlos separadamente.I Pueden obtener 13–16 bits por arista (bpe) y ser mas

rapidos que la version descomprimida (por efectos decache).

I Para vecinos reversos necesitan el grafo traspuesto.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Separadores de Grafos

I Mejor exponente: Blandford [PhD Thesis, 2006]I Encontrar zonas que se pueden desconectar cortando

unas pocas aristas.I Renumerar los nodos y comprimirlos separadamente.I Pueden obtener 13–16 bits por arista (bpe) y ser mas

rapidos que la version descomprimida (por efectos decache).

I Para vecinos reversos necesitan el grafo traspuesto.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Separadores de Grafos

I Mejor exponente: Blandford [PhD Thesis, 2006]I Encontrar zonas que se pueden desconectar cortando

unas pocas aristas.I Renumerar los nodos y comprimirlos separadamente.I Pueden obtener 13–16 bits por arista (bpe) y ser mas

rapidos que la version descomprimida (por efectos decache).

I Para vecinos reversos necesitan el grafo traspuesto.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Separadores de Grafos

I Mejor exponente: Blandford [PhD Thesis, 2006]I Encontrar zonas que se pueden desconectar cortando

unas pocas aristas.I Renumerar los nodos y comprimirlos separadamente.I Pueden obtener 13–16 bits por arista (bpe) y ser mas

rapidos que la version descomprimida (por efectos decache).

I Para vecinos reversos necesitan el grafo traspuesto.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Separadores de Grafos

I Mejor exponente: Blandford [PhD Thesis, 2006]I Encontrar zonas que se pueden desconectar cortando

unas pocas aristas.I Renumerar los nodos y comprimirlos separadamente.I Pueden obtener 13–16 bits por arista (bpe) y ser mas

rapidos que la version descomprimida (por efectos decache).

I Para vecinos reversos necesitan el grafo traspuesto.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Distribucion sesgada de grados interior/exterior (power

laws).I Una lista de adyacencia tiene baja entropıa.

I Localidad de referencia: la mayorıa de los links apuntan almismo site.

I Listar los nodos en orden lexicografico de URL.I Usar tecnicas de codificacion de gaps para comprimir las

listas.I Modelo de copia: los links que salen se parecen a los de

alguna otra pagina.I Encontrar una pagina similar y codificar diferencialmente.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Mejor exponente: Boldi y Vigna [WWW 2006].

I 3 bpe para compresion puraI 6 bpe para recuperar cada vecino directo o reverso dentro

del microsegundoI Esto considera el grafo y su traspuesto

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Mejor exponente: Boldi y Vigna [WWW 2006].

I 3 bpe para compresion puraI 6 bpe para recuperar cada vecino directo o reverso dentro

del microsegundoI Esto considera el grafo y su traspuesto

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Mejor exponente: Boldi y Vigna [WWW 2006].

I 3 bpe para compresion puraI 6 bpe para recuperar cada vecino directo o reverso dentro

del microsegundoI Esto considera el grafo y su traspuesto

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Compresion de Grafos

Los Grafos Web son Muy CompresiblesI Mejor exponente: Boldi y Vigna [WWW 2006].

I 3 bpe para compresion puraI 6 bpe para recuperar cada vecino directo o reverso dentro

del microsegundoI Esto considera el grafo y su traspuesto

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Mapa

Motivacion

Conceptos BasicosEntropıaGrafos y CompresionRank, Select, y Autoındices

Propuesta I: Autoindexamiento

Propuesta II: Rank/Select de Sımbolos

Conclusiones

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select Binarios

I Sea B[1, n] un array de bits.I rankb(B, i) = numero de b’s en B[1, i].I selectb(B, i) = posicion del i-esimo b en B.I b = 1 por defecto, rank1(B, i) = i − rank0(B, i).I Ambos se pueden resolver en tiempo constante usando

o(|B|) bits ademas de B.I E incluso con nH0(B) + o(n) bits en total.I Existen implementaciones practicas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Rank y Select

Rank y Select de Sımbolos

I Sea S[1, n] una secuencia sobre el alfabeto Σ de tamanoσ.

I ranka(S, i) = numero de a’s en S[1, i].I selecta(S, i) = posicion del i-esimo a en S.I Ademas, obtener S[i] si la estructura reemplaza S.I Wavelet trees (generalizados): nH0(S) + o(n log σ) bits,

tiempo O(1 + log σlog log n ).

I Mas rapido: n log σ + o(n log σ) bits, O(log log σ) rank yacceso, O(1) select.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices Comprimidos para Texto

FuncionalidadI Estructuras de datos comprimidas para un texto

T = t1 . . . tn.I Sobre un alfabeto Σ de tamano σ.I Operaciones basicas soportadas:

I Dadas posiciones l , r , mostrar el area de texto tl . . . tr .I Dado un patron P = p1 . . . pm, contar las ocurrencias de P

en T .I Ubicar cada una de esas occ ocurrencias.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices

I Reemplazan el texto y ademas lo indexan.I Es posible hacerlo usando nHk (T ) bits sin el texto.I Existen muchos autoındices comprimidos para texto.I Ej. contar en tiempo O(m log σ), ubicar cada ocurrencia en

tiempo O(log n), mostrar en tiempo O(log n + ` log σ).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices

I Reemplazan el texto y ademas lo indexan.I Es posible hacerlo usando nHk (T ) bits sin el texto.I Existen muchos autoındices comprimidos para texto.I Ej. contar en tiempo O(m log σ), ubicar cada ocurrencia en

tiempo O(log n), mostrar en tiempo O(log n + ` log σ).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices

I Reemplazan el texto y ademas lo indexan.I Es posible hacerlo usando nHk (T ) bits sin el texto.I Existen muchos autoındices comprimidos para texto.I Ej. contar en tiempo O(m log σ), ubicar cada ocurrencia en

tiempo O(log n), mostrar en tiempo O(log n + ` log σ).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

EntropıaGrafos y Compresi onRank, Select, y Autoındices

Autoındices

I Reemplazan el texto y ademas lo indexan.I Es posible hacerlo usando nHk (T ) bits sin el texto.I Existen muchos autoındices comprimidos para texto.I Ej. contar en tiempo O(m log σ), ubicar cada ocurrencia en

tiempo O(log n), mostrar en tiempo O(log n + ` log σ).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Propuesta I: Idea General

I Concatenar las listas de adyacencia en un texto.I Construir un autoındice comprimido sobre ese texto.I Mostrar: vecinos de un nodoI Ubicar: vecinos reversos de un nodoI Contar: grado interior de un nodoI La entropıa de orden k de este texto captura el modelo de

copia.I La entropıa de orden cero captura la distribucion sesgada

de grado interior.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Comparacion Experimental

I Usando el Compressed Suffix Array de Sadakane comoautoındice.

I Contra los resultados de Boldi y Vigna.I Sobre el mismo crawl UK, 18.5 Mnodos, 292 Mlinks.I Vecinos: resultados comparables.I Reversos: perdemos por 10X

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Comparacion Experimental

I Usando el Compressed Suffix Array de Sadakane comoautoındice.

I Contra los resultados de Boldi y Vigna.I Sobre el mismo crawl UK, 18.5 Mnodos, 292 Mlinks.I Vecinos: resultados comparables.I Reversos: perdemos por 10X

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Comparacion Experimental

I Usando el Compressed Suffix Array de Sadakane comoautoındice.

I Contra los resultados de Boldi y Vigna.I Sobre el mismo crawl UK, 18.5 Mnodos, 292 Mlinks.I Vecinos: resultados comparables.I Reversos: perdemos por 10X

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Comparacion Experimental

I Usando el Compressed Suffix Array de Sadakane comoautoındice.

I Contra los resultados de Boldi y Vigna.I Sobre el mismo crawl UK, 18.5 Mnodos, 292 Mlinks.I Vecinos: resultados comparables.I Reversos: perdemos por 10X

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Comparacion Experimental

I Usando el Compressed Suffix Array de Sadakane comoautoındice.

I Contra los resultados de Boldi y Vigna.I Sobre el mismo crawl UK, 18.5 Mnodos, 292 Mlinks.I Vecinos: resultados comparables.I Reversos: perdemos por 10X

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

0.6

0.8

1

1.2

1.4

1.6

1.8

2

2 4 6 8 10 12 14 16

time

per n

eigh

bor (

ms)

space (bpe)

Retrieving neighbors

oursBV

BV (fwd)

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

0

5

10

15

20

25

30

6 7 8 9 10 11 12 13 14 15

time

per n

eigh

bor (

ms)

space (bpe)

Retrieving reverse neighbors

oursBV

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de Sımbolos

I Consideremos de nuevo la secuencia T de listas deadyacencia.

I Guardamos bitmap H[1, e] marcando los comienzos delistas.

I Precalculamos rank y select para las secuencias T y H.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de Sımbolos

I Consideremos de nuevo la secuencia T de listas deadyacencia.

I Guardamos bitmap H[1, e] marcando los comienzos delistas.

I Precalculamos rank y select para las secuencias T y H.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de Sımbolos

I Consideremos de nuevo la secuencia T de listas deadyacencia.

I Guardamos bitmap H[1, e] marcando los comienzos delistas.

I Precalculamos rank y select para las secuencias T y H.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

H = 1 0 0 1 0 0 1 1 0

a

de

c

ba:

b:

c:

d:

e:

d

d,c,a

d,c

d,c,b

T = d c b d c a d d c

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Usando Rank y Select de SımbolosI Es facil traducir todas las operaciones:

I grado interior (v): rankv (T , e).I grado exterior (v): select(H, v + 1)− select(H, v).I vecinos(v): mostrar T [select(H, v) . . .] hasta que

H[i + 1] = 1.I vecinos reversos(v): rank(H, selectv (T , i)), para i ’s

sucesivos.I existe(u, v):

rankv (T , select(H, u + 1)− 1)− rankv (T , select(H, u)) = 1.I Podemos obtener el grafo traspuesto con espacio extra

“sublineal” (por ejemplo con tiempo O(log log n)).I O lo podemos comprimir a orden cero (Wavelet tree,

tiempo O(log n/ log log n)).I La compresion no es gran cosa (σ es demasiado grande!).

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Estructuras practicas (Blandford) con 13–16 bpe, sinpenalidad aparente.

I Necesitarıan unos 30 bpe para reversos.I Estructuras practicas (Boldi & Vigna) con 3–6 bpe, tiempos

razonables, incluye reversos.I Estructura teorica (relaciones binarias) con n log(n2/e) bits

para todo, tiempos O(log log n), 15–20 bpe como mınimo.I “Inventamos” otra (rank/select) con e log n bits para todo,

tiempos O(log log n), 20–25 bpe como mınimo.I Para que seguir escuchando esta charla?

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Vuelta a Compresion Pura

I Hay una forma elegante y efectiva de comprimir T ?I Re-Pair: encontrar el par mas repetido en T y

reemplazarlo por un nuevo sımbolo, hasta que todos lospares sean unicos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Vuelta a Compresion Pura

I Hay una forma elegante y efectiva de comprimir T ?I Re-Pair: encontrar el par mas repetido en T y

reemplazarlo por un nuevo sımbolo, hasta que todos lospares sean unicos.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Paira a a b c a a b a a a b c a b d a b d

d A dc Aa a Ac a Aa a A

a a

a b

b c

c a

b d

d a 1

2

2

2

5

4

a bA

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Paira a A c a A a a A c A d A d

c A d A da Bc B

a a

a

c

c a

d

1

2

2

2

A 3

A

1

A

c A

A 1d

aB A

a bA

a B

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

aB A

a B c B a B c A d A d

a

a

2

1

A 1d

a bA

B

B c 2

c B 1

B

c A 1

A d 2

AC d

a B c B a B c C C

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

aB A

AC d

a B c B a B c C C

C CB a D

a

a

2

1

a bA

B

B c 2

c B 1

B

c 1C

C C 1

BD c

a D

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

aB A

AC d

BD c

a DB a DC C

C CB E

a 2

1

a bA

1

1C

D

DB 1

B a

DC

C

a DE

E

diccionario

secuencia comprimida

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I Comprime bien, descomprime rapido.I Aprovecha la propiedad de copia.I Comprime mejor si se codifica T diferencialmente.I Mejoramos Re-Pair mismo.

I Estructura de datos sucinta para el diccionario.I Metodo aproximado para secuencias muy grandes.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Mejorando Re-Pair con Estructuras de Datos Sucintas

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Mejorando Re-Pair con Estructuras de Datos Sucintas

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Mejorando Re-Pair con Estructuras de Datos Sucintas

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I El Re-Pair original corre en tiempo lineal, pero necesita20e bytes!

I Si se usa menos espacio es lentısimo.I Disenamos una version aproximada para grafos muy

grandes.I Los resultados son bastante cercanos al metodo exacto.I La tecnica se adapta bien a memoria secundaria.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I El Re-Pair original corre en tiempo lineal, pero necesita20e bytes!

I Si se usa menos espacio es lentısimo.I Disenamos una version aproximada para grafos muy

grandes.I Los resultados son bastante cercanos al metodo exacto.I La tecnica se adapta bien a memoria secundaria.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I El Re-Pair original corre en tiempo lineal, pero necesita20e bytes!

I Si se usa menos espacio es lentısimo.I Disenamos una version aproximada para grafos muy

grandes.I Los resultados son bastante cercanos al metodo exacto.I La tecnica se adapta bien a memoria secundaria.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I El Re-Pair original corre en tiempo lineal, pero necesita20e bytes!

I Si se usa menos espacio es lentısimo.I Disenamos una version aproximada para grafos muy

grandes.I Los resultados son bastante cercanos al metodo exacto.I La tecnica se adapta bien a memoria secundaria.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-Pair

I El Re-Pair original corre en tiempo lineal, pero necesita20e bytes!

I Si se usa menos espacio es lentısimo.I Disenamos una version aproximada para grafos muy

grandes.I Los resultados son bastante cercanos al metodo exacto.I La tecnica se adapta bien a memoria secundaria.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-PairI El espacio que sobre en memoria principal se usa para

una tabla hash.I Se recorre la secuencia y se almacenan los pares y

frecuencias.I Cuando la tabla se llena se dejan de insertar pares nuevos.I Al final se recorre la tabla y se eligen los K mas frecuentes

para reemplazar de una sola vez.I A la siguiente iteracion tenemos mas espacio para la tabla

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-PairI El espacio que sobre en memoria principal se usa para

una tabla hash.I Se recorre la secuencia y se almacenan los pares y

frecuencias.I Cuando la tabla se llena se dejan de insertar pares nuevos.I Al final se recorre la tabla y se eligen los K mas frecuentes

para reemplazar de una sola vez.I A la siguiente iteracion tenemos mas espacio para la tabla

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-PairI El espacio que sobre en memoria principal se usa para

una tabla hash.I Se recorre la secuencia y se almacenan los pares y

frecuencias.I Cuando la tabla se llena se dejan de insertar pares nuevos.I Al final se recorre la tabla y se eligen los K mas frecuentes

para reemplazar de una sola vez.I A la siguiente iteracion tenemos mas espacio para la tabla

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-PairI El espacio que sobre en memoria principal se usa para

una tabla hash.I Se recorre la secuencia y se almacenan los pares y

frecuencias.I Cuando la tabla se llena se dejan de insertar pares nuevos.I Al final se recorre la tabla y se eligen los K mas frecuentes

para reemplazar de una sola vez.I A la siguiente iteracion tenemos mas espacio para la tabla

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Re-PairI El espacio que sobre en memoria principal se usa para

una tabla hash.I Se recorre la secuencia y se almacenan los pares y

frecuencias.I Cuando la tabla se llena se dejan de insertar pares nuevos.I Al final se recorre la tabla y se eligen los K mas frecuentes

para reemplazar de una sola vez.I A la siguiente iteracion tenemos mas espacio para la tabla

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Resultados Experimentales

UK: 18.5M nodos, 298M aristas

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 2 4 6 8 10 12

time

(mse

g/ed

ge)

space (bits/edge)

UK

Re-PairRe-Pair (diffs)

BVBV-Memory

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 5 10 15 20 25 30 35

time

(mse

g/ed

ge)

space (bits/edge)

UK

Re-PairRe-Pair (diffs)

PlainCompact

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Resultados Experimentales

EU: 860K nodos, 19M aristas

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 2 4 6 8 10 12 14

time

(mse

g/ed

ge)

space (bits/edge)

EU

Re-PairRe-Pair (diffs)

BVBV-Memory

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 5 10 15 20 25 30 35

time

(mse

g/ed

ge)

space (bits/edge)

EU

Re-PairRe-Pair (diffs)

PlainCompact

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Resultados Experimentales

Arabic: 23M nodos, 640M aristas

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 2 4 6 8 10

time

(mse

g/ed

ge)

space (bits/edge)

Arabic

Re-PairRe-Pair (diffs)

BVBV-Memory

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 5 10 15 20 25 30 35

time

(mse

g/ed

ge)

space (bits/edge)

Arabic

Re-PairRe-Pair (diffs)

PlainCompact

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Resultados Experimentales

Indochina: 7M nodos, 194M aristas

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 2 4 6 8 10

time

(mse

g/ed

ge)

space (bits/edge)

Indochina

Re-PairRe-Pair (diffs)

BVBV-Memory

0

0.0001

0.0002

0.0003

0.0004

0.0005

0 5 10 15 20 25 30 35

time

(mse

g/ed

ge)

space (bits/edge)

Indochina

Re-PairRe-Pair (diffs)

PlainCompact

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Conseguimos 5–7 bpe y mejor compromisotiempo/espacio que Boldi & Vigna.

I Podrıamos tener operaciones reversas eficientes con10–14 bpe.

I Esto es la mitad del espacio de Blandford.I Pero... no podrıamos ahora tener rank/select sobre

Re-Pair?

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Conseguimos 5–7 bpe y mejor compromisotiempo/espacio que Boldi & Vigna.

I Podrıamos tener operaciones reversas eficientes con10–14 bpe.

I Esto es la mitad del espacio de Blandford.I Pero... no podrıamos ahora tener rank/select sobre

Re-Pair?

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Conseguimos 5–7 bpe y mejor compromisotiempo/espacio que Boldi & Vigna.

I Podrıamos tener operaciones reversas eficientes con10–14 bpe.

I Esto es la mitad del espacio de Blandford.I Pero... no podrıamos ahora tener rank/select sobre

Re-Pair?

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Donde Estamos?

I Conseguimos 5–7 bpe y mejor compromisotiempo/espacio que Boldi & Vigna.

I Podrıamos tener operaciones reversas eficientes con10–14 bpe.

I Esto es la mitad del espacio de Blandford.I Pero... no podrıamos ahora tener rank/select sobre

Re-Pair?

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Desafıo Final

I Es posible combinar Re-Pair con Rank/Select?I Problema: Cada sımbolo aparece de muchas formas

distintas.I Hay que partir por encontrar que sımbolos me representan

en el diccionario.I Vecinos y vecinos reversos: ok (una unidad de trabajo por

vecino reportado).I Grado exterior/interior eficientes con 1 bpe extra cada uno.I (pero son bitmaps compresibles a 0.17–0.25 bpe cada

uno).I Existe: Muy caro.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

Conclusiones

I Enfoque algorıtmico a problemas reales de grafos.I Resultados practicos relevantes, algunos desafıos

abiertos.I Estructuras de datos compactas: area de investigacion

reciente y promisoria.I Investigacion basica: cuanto mas basica,

I mas aplicaciones tiene, peroI es mas difıcil predecirlas.

G. Navarro Comprimiendo Grafos de la Web

Motivaci onConceptos B asicos

Propuesta IPropuesta II

Conclusiones

H = 1 0 0 1 0 0

t

h

e

1

2

n

d

T = t h e e n d

1: t h e2: e n d

G. Navarro Comprimiendo Grafos de la Web

top related