with computation operators, classical data access
operators or rule-based program invocations.
The Execution Engine executes a query plan P
using the well-known Iterator model (Graefe 1993)
for the physical operators. It also coordinates the
local and distant sub-queries and constructs a final
result from sub-query results. During the execution,
the cost parameters (energy, time, memory etc.) are
measured and a new case is built.
4.4 Rule Program Engine
The Program Engine receives payloads from the
Payload Dispatcher and has to treat their Contents
containing items (new facts or query results) or
predicates corresponding to a query.
If a Content contains new facts, the Program
Engine identifies which rule-program has to be
triggered by comparing new facts with predicates in
the rule head, then it retrieves the corresponding
rules from the DMS and evaluates them in forward
chaining mode till a fixpoint is reached.
If a Content contains a predicate corresponding
to a query, the Program Engine identifies which
rule-program has to be triggered by comparing the
predicate with rule bodies, then it retrieves the
corresponding rules from the DMS and evaluate
them in backward chaining till the full query result is
computed. If a Content contains query results, these
results are exploited to continue query evaluation.
In addition, the Program Engine during
processing propagates new items or new queries to
other nodes, through the UBIQUEST API, and/or
stores new items in the DMS. The Program Engine
has some additional functions, such as timers,
necessary for networking protocols, it also uses
optimization techniques, such as the triggering of
rules by new facts, which avoid unnecessary
computations, when there are no changes in the
input of rules.
5 CONCLUSIONS
This paper proposes a unified abstraction for the
management of application and network data, which
abolishes the separation between application and
communication layers. Applicative data, network
management operations, even configuration are
treated as transactional queries or updates. The
integration between queries and communication
protocols is one of the fundamental contributions of
the approach.
This allows the definition of rule programs for
networking protocols, which optimize queries or
query optimization strategies, which optimize
network distribution.
We are currently working on a better integration
of the two kinds of languages and on the
implementation of an UBIQUEST system prototype.
We also develop a simulation and emulation
environment for a detailed analysis and evaluation of
queries for a large class of algorithms and protocols.
ACKNOWLEDGEMENTS
This work has been supported by the ANR-09-
BLAN-0131-01 UBIQUEST Project (http://ubiquest
.imag.fr), financed by the French National Research
Agency (ANR).
REFERENCES
Chen, X., Mao, Y., Z. Mao, M., Van der Merwe, J., 2010.
Decor: Declarative network management and
operation. SIGCOMM Comput. Commun. Rev., 40:61-
66.
Condie, T., Chu, D., Hellerstein, J. M., Maniatis, P., 2008.
Evita raced: metacompilation for declarative networks.
Proc. VLDB Endow., 1:1153-1165.
Demers, A. J., Gehrke, J., Rajaraman, R., Trigoni, A.,
Yao, Y., 2003. The cougar project: a work-in-progress
report. SIGMOD Record, 32(4):53-59.
Graefe, G. 1993. Query evaluation techniques for large
databases. ACM Computing Surveys, vol. 25, Issue 2.
Grumbach, S., Wang, F., 2010. NetLog, a rule-based
language for distributed programming. In M. Carro
and R. Pea, editors, PADL, volume 5937 of Lecture
Notes in Computer Science, pages 88-103.
Ioannidis, Y., 1996. Query optimization. ACM Comput.
Surv., 28(1):121-123.
Loo, B. T., Condie, T., Garofalakis, M. N., Gay, D. E.,
Hellerstein, J. M., Maniatis, P., Ramakrishnan, R.,
Roscoe, T., Stoica, I., 2006. Declarative networking:
language, execution and optimization. In ACM
SIGMOD International Conference on Management of
Data, Chicago, Illinois, USA.
Madden, S., Franklin, M. J., Hellerstein, J. M., Hong, W.,
2005. Tinydb: an acquisitional query processing
system for sensor networks. ACM Trans. Database
Syst., 30(1).
Mao, T., 2010. On the declarativity of declarative
networking. SIGOPS Oper. Syst. Rev., 43:19{24}.
Stillger, M., Lohman, G., Markl, V., Kandil, M., 2001.
Leo - db2's learning optimizer. In: Proceedings of the
27th International Conference on Very Large Data
Bases, pages 19-28, San Francisco, CA, USA.
DATA 2012 - International Conference on Data Technologies and Applications
152