5754219
Privacy preserving OLAP
We present techniques for privacy-preserving computation of multidimensional aggregates on data partitioned across multiple clients. Data from different clients is perturbed (randomized) in order to preserve privacy before it is integrated at the server. We develop formal notions of privacy obtained from data perturbation and show that our perturbation provides guarantees against privacy breaches. We develop and analyze algorithms for reconstructing counts of subcubes over perturbed data. We also evaluate the tradeoff between privacy guarantees and reconstruction accuracy and show the practicality of our approach.
15059814
Caching queues in memory buffers
Motivated by the need for maintaining multiple, large queues of data in modern high-performance systems, we study the problem of caching queues in memory under the following simple, but widely applicable, model. At each clock-tick, any number of data items may enter the various queues, while data-items are consumed from the heads of the queues. Since the number of unconsumed items may exceed memory buffer size, some items in the queues need to be spilled to secondary storage and later moved back into memory for consumption. We provide online queue-caching algorithms under a number of interesting cost models.
41519577
Anonymizing Tables
We consider the problem of releasing tables from a relational database containing personal records, while ensuring individual privacy and maintaining data integrity to the extent possible. One of the techniques proposed in the literature is k-anonymization. A release is considered k-anonymous if the information for each person contained in the release cannot be distinguished from at least k–1 other persons whose information also appears in the release. In the k-Anonymityproblem the objective is to minimally suppress cells in the table so as to ensure that the released version is k-anonymous. We show that the k-Anonymity problem is NP-hard even when the attribute values are ternary. On the positive side, we provide an O(k)-approximation algorithm for the problem. This improves upon the previous best-known O(klog k)-approximation. We also give improved positive results for the interesting cases with specific values of k — in particular, we give a 1.5-approximation algorithm for the special case of 2-Anonymity, and a 2-approximation algorithm for 3-Anonymity.
2682242
Two Can Keep A Secret: A Distributed Architecture for Secure Database Services
Recent trends towards database outsourcing, as well as concerns and laws governing data privacy, have led to great interest in enabling secure database services. Previous approaches to enabling such a service have been based on data encryption, causing a large overhead in query processing. We propose a new, distributed architecture that allows an organization to outsource its data management to {\em two} untrusted servers while preserving data privacy. We show how the presence of two servers enables efficient partitioning of data so that the contents at any one server are guaranteed not to breach data privacy. We show how to optimize and execute queries in this architecture, and discuss new challenges that emerge in designing the database schema.
208947786
STREAM: The Stanford Stream Data Manager
41645329
The (Re) Emergence of Agile Languages and Domain-Oriented Programming
The JAOO conference in Aarhus, Denmark has become one of the most enjoyable and informative developer conferences in the land of OO. Originally a Java conference, it has expanded to cover a wide variety of topics from MS.NET and Java technology to best practices in software engineering. This year's conference followed on the heels of the Microsoft PDC earlier in the month. Both conferences featured tracks and sessions on scripting, dynamic languages and domain specific languages. There was also a Dynamic Languages Symposium Would any OO professional really consider using Basic when she has access to the full power of C#? Can MS really make it possible for disenfranchised Basic developers to have first class language access to XML, Databases and Objects with ease? Many at the PDC and JAOO were in shock as Erik Meijer (http://research.microsoft.com/~emeijer/) and the VB team showed off VB 9 features that combine clever type inference and structural sub-typing to simply and elegantly manipulate squares (relational tuples), circles (objects) and triangles (XML info sets) as simple polymorphic collections. Erik has also abandoned his solemn monadic oath of Haskell and quietly snuck some really interesting functional machinery under the hood of C#3.0 and VB 9 Erik is of course one of the key contributors to MS Zen and COmega (http://research.microsoft.com/COmega/) research efforts which are now bearing fruit in MS next language products under the name Language Integrated Query (LINQ – The LINQ team has really been thinking out of the box on this project and has made brave new efforts with very popular and widely used languages, which is always a great language design and implementation challenge.
45579896
Full Minimal Steiner Trees on Lattice Sets
Given a finite set of points P in the Euclidean plane, the Steiner problem asks us to constuct a shortest possible network interconnecting P. Such a network is known as a minimal Steiner tree. The Steiner problem is an intrinsically difficult one, having been shown to be NP-hard [7]; however, it often proves far more tractable if we restrict our attention to points in special geometric configurations. One such restriction which has generated considerable interest is that of finding minimal Steiner trees for nice sets of integer lattice points. The first significant result in this direction was that of Chung and Graham [4], which, in effect, precisely characterized the minimal Steiner trees for any horizontal 2_n array of integer lattice points. In 1989, Chung et al. [3] examined a related problem, which they described as the Checkerboard Problem. They asked how to find a minimal Steiner tree for an n_n square lattice, that is, a collection of n_n points arranged in a regular lattice of unit squares like the corners of the cells of article no. TA962752
22841183
Graham's problem on shortest networks for points on a circle
Suppose a configurationX consists ofn points lying on a circle of radiusr. If at most one of the edges joining neighboring points has length strictly greater thanr, then the Steiner treeS consists of all these edges with a longest edge removed. In order to showS is, in fact, just the minimal spanning treeT, a variational approach is used to show the Steiner ratio for this configuration is at least one and equals one only ifS andT coincide. The variational approach greatly reduces the number of possible Steiner trees that need to be considered.
45241819
Minimum Networks in Uniform Orientation Metrics
In this paper we use the variational method to systematically study properties of minimum networks connecting any given set of points (called terminals) in a $\lambda$-plane, in which all lines are in $\lambda$ uniform orientations $i\pi /\lambda\ (0\le i<\lambda )$. We prove a number of angle conditions for Steiner minimum $\lambda$-trees, which are similar to the ones in the Euclidean case. In particular, we show that there exists a Steiner minimum $\lambda$-tree whose minimum angles at Steiner points are $\lfloor 2\lambda /3\rfloor\pi /\lambda$ and whose maximum angles are $\lceil 2\lambda /3\rceil\pi /\lambda$. We also investigate the assignment of nonstraight edges and unequal angles in Steiner minimum $\lambda$-trees, and we prove that there exists a Steiner minimum $\lambda$-tree in which every full component has at most one nonstraight edge. From these properties we are able to devise a number of finite methods for constructing Steiner minimum $\lambda$-trees. One of these methods is based on using algorithms for finding graphical Steiner minimum trees, and the other uses a generalization of the method of Melzak for Euclidean Steiner trees.
14393969
Programming with Models? Modeling with Code. The Role of Models in Software Development
In practice, engineers work with partial descriptions (models) and add/remove model elements at each level of abstraction. Models describe a slice of life – not life itself. Modelers use many different models to explore different aspects of the thing being modeled such as requirements, data, behavior, event/time, security, flow, process, activity, performance, quality, usability, etc. These models can take many forms and be expressed through many different tools including systems dynamics, prototypes, textual and visual models of artifacts and their relationships. It is important to note that UML is just one of many models representations which may be used in this process. The set of central relations in model-driven engineering and object-oriented technology are fundamentally different. The two central relations in object-oriented technology are isA and isPartOf. In model engineering the key relations are isBasedOn, isLike, and isRepresentedBy. These inherently one-to-many and partial relationships are often mistakenly confused with OOP relationships. Trying to use one set of relations, as a central interpretation, in the wrong context, can lead to serious problems. Models provide a representation of partial truths about the software system, but only the final code contains the actual truth.