La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

AggOperator Query TupleRouterM DBBufferC RandomLPSR QueryResult Selperator Tuple TinyDBAttr TimerC MainC NetworkC AttrGlobal AttrTemp AttrPot AttrPhoto.

Presentaciones similares


Presentación del tema: "AggOperator Query TupleRouterM DBBufferC RandomLPSR QueryResult Selperator Tuple TinyDBAttr TimerC MainC NetworkC AttrGlobal AttrTemp AttrPot AttrPhoto."— Transcripción de la presentación:

1 AggOperator Query TupleRouterM DBBufferC RandomLPSR QueryResult Selperator Tuple TinyDBAttr TimerC MainC NetworkC AttrGlobal AttrTemp AttrPot AttrPhoto AttrVoltage AttrAccel AttrMag ADC Components TinyAlloc PotC GenericComm ParsedQuery AdminHistórico

2

3

4

5 TupleRouterM TimerC fired() NetworkC DBBufferC RadioQueue RAM EEPROM ADC Components

6 ¿El atributo corresponde al histórico? Insertar valor en el histórico Sí No ¿Atributo sin dato? Sí No Fin …

7 1.2: Muestrear datos 1.3: Llenar tuplas 1.4: ¿Agregar? 1.4: ¿Agregar? 1.6: ¿Agregar? 1.5: Operador de selección 1.7: Operador de agregación Epoch NoSí No 1.1 Identificar consultas Arribo de resultados hijos D D

8 1.2: Muestrear datos 1.3: Llenar tuplas e insertar en histórico 1.4: ¿Agregar? 1.4: ¿Agregar? 1.6: ¿Agregar? 1.5: Operador de selección 1.7: Operador de agregación Epoch NoSí No 1.1 Identificar consultas Arribo de resultados hijos D D

9 Arribo de mensaje de consulta Fin Crear representación compacta de consulta ¿Todos los mensajes? No Sí Arribo de mensaje de consulta Fin Crear representación compacta de consulta ¿Todos los mensajes? No Sí ¿Identificad or distinto de cero? Encender variable de control No Sí

10 ¿Variable de control? ¿Idle? ¿Agregar? …

11 1.3: Llenar tuplas e insertar en Histórico 1.3: Llenar tuplas e insertar en Histórico 1.4: ¿Agregar? 1.4: ¿Agregar? 1.7: Operador de agregación NoSí 2.1 ¿idle? 2.1 ¿idle? … epoch No Enviar No Sí 1.5: Operador de selección 1.6: ¿Radio? 1.6: ¿Radio?

12 Slots libres Slots llenos Slots libres Siguiente libre Siguiente ocupado Inicio Siguiente lleno Siguiente libre Inicio

13 Muestrear datos ¿Agregar? Guardar EEPROM Guardar EEPROM Evento de reloj No Procesar consultas Entrega de tuplas Llenar tupla Arribo resultados hijos Sí ¿Agregar? Operador de Selección Operador de Agregación Sí ¿Radio? No ¿Idle? No Sí Enviar

14 Epoch 1. Procesar consultas 2. Entrega de tuplas

15 Epoch 2.1 ¿Radio? 2.1 ¿Radio? No 2.3 ¿Idle? 2.3 ¿Idle? No Sí D D 2.2 Guardar EEPROM 2.4 Enviar Sí

16 Epoch 2.1 ¿Radio? 2.1 ¿Radio? No 2.4 ¿Idle? 2.4 ¿Idle? No Sí D D 2.2 Guardar EEPROM 2.6 Enviar Sí 2.3 ¿Agregación? 2.3 ¿Agregación? 2.5 ¿Variable de control? 2.5 ¿Variable de control? No Sí No

17 Muestrear datos ¿Agregar? Evento de reloj No Procesar consultas Entrega de tuplas Llenar tupla Arribo resultados hijos Sí ¿Agregar? Operador de Selección Operador de Agregación No S S

18 Muestrear ¿Agregar? Guardar EEPROM/RAM Evento de reloj No Procesar consultas Entrega de tuplas Llenar tupla Arribo resultados hijos Sí ¿Agregar? Operador de Selección Operador de Agregación Sí ¿Radio? No ¿Idle? No Sí Enviar

19 Nueva inserción ¿Grano == 1?

20 PC QB1 Light QB2 Temp QB líder QB líder QB3 Light QB4 Temp QB5 Light QB6 Temp Mote 1 Mote 2 Mote 3 QB líder QB líder QB líder QB líder

21 ADMINISTRADOR DE HISTÓRICO IAdministraciónH

22 D.1: ¿Radio? D.1: ¿Radio? Guardar EEPROM/RAM F: ¿Idle? F: ¿Idle? Enviar Sí No SíNo A.2: Muestrear datos A.3: Llenar tuplas C: ¿Agregar? C: ¿Agregar? C.2: Operador de selección C.1: Operador de agregación Epoch No Sí No B.1 ¿Consulta dispara ahora? Por cada consulta Fin ¿Resultados hijos? ¿Agregar?

23 uint8_t qid; //1 uint8_t numFields; //2 uint16_t epochDuration uint16_t clocksPerSample; int16_t clockCount; //11 bool hasAgg:1; // -- are there aggregates in this query char bufferType; //see Buffer.h:BufferType //25 uint8_t bufferId; //26 -- output buffer id

24 Red de sensores Recolector Aplicación Persistencia

25

26 1 *1*1

27 AggOperator Query TupleRouterM DBBufferC QueryResult Selperator Tuple TinyDBAttr TimerC NetworkC TinyAlloc ParsedQuery QueryProcessor StdControl RadioQueue TinyDB

28 epoch 1epoch 2epoch 3… epoch 65,535 … 2048 << 650,000


Descargar ppt "AggOperator Query TupleRouterM DBBufferC RandomLPSR QueryResult Selperator Tuple TinyDBAttr TimerC MainC NetworkC AttrGlobal AttrTemp AttrPot AttrPhoto."

Presentaciones similares


Anuncios Google