|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectanonymizer.Anonymizer
datafly.Datafly
public class Datafly
Implementation of the Datafly algorithm for satisfying k-anonymity described in the following paper:
@article{datafly,
author = {L. Sweeney and Latanya Sweeney},
title = {Achieving K-Anonymity Privacy Protection Using Generalization and Suppression},
journal = {International Journal on Uncertainty, Fuzziness and Knowledge-based Systems},
year = {2002},
volume = {10},
pages = {2002}
}
By default, suppression threshold is set to k of k-anonymity.
We also allow a relaxation of full-domain generalization. In this alternative, equivalences
that reached a size of k or larger before the entire table is k-anonymous will not be further
generalized. Please use the flag fullDomainGeneralization to de/active this version.
| Field Summary | |
|---|---|
private int |
anonTableIndex
Current iteration number for the anonRecords table. |
private int |
eqTableIndex
Current iteration number for the equivalence table. |
boolean |
fullDomainGeneralization
Flag indicating whether domain generalization will be applied strictly or not. |
| Fields inherited from class anonymizer.Anonymizer |
|---|
anonTable, conf, eqTable, sqlwrapper, suppressionThreshold |
| Constructor Summary | |
|---|---|
Datafly(Configuration conf)
Class constructor |
|
| Method Summary | |
|---|---|
void |
anonymize()
Anonymizes the input. |
void |
changeKAnonymityRequirement(int newKvalue)
Overwrites the privacy parameter k |
protected AnonRecordTable |
createAnonRecordsTable(java.lang.String tableName)
Create anonRecords table |
protected EquivalenceTable |
createEquivalenceTable(java.lang.String tableName)
Create equivalence table |
protected void |
insertTupleToAnonTable(java.lang.String[] vals,
long eid)
Insert a tuple to the anonRecords table |
protected long |
insertTupleToEquivalenceTable(java.lang.String[] vals)
Insert a tuple to the equivalence table |
| Methods inherited from class anonymizer.Anonymizer |
|---|
anonymizeDataset, anonymizeDataset, isReadyForSuppression, main, outputResults_Anatomy, outputResults_GenVals, outputResults_GenValsDist, outputResults, readData, suppressEquivalences |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public boolean fullDomainGeneralization
private int eqTableIndex
private int anonTableIndex
| Constructor Detail |
|---|
public Datafly(Configuration conf)
throws java.lang.Exception
conf - Configuration instance
java.lang.Exception| Method Detail |
|---|
public void changeKAnonymityRequirement(int newKvalue)
newKvalue - New value of kprotected EquivalenceTable createEquivalenceTable(java.lang.String tableName)
createEquivalenceTable in class AnonymizertableName - Name of the table
protected AnonRecordTable createAnonRecordsTable(java.lang.String tableName)
createAnonRecordsTable in class AnonymizertableName - Name of the table
protected long insertTupleToEquivalenceTable(java.lang.String[] vals)
throws java.lang.Exception
insertTupleToEquivalenceTable in class Anonymizervals - All values of the tuple to be inserted (as read from the source, i.e., before any generalization)
java.lang.Exception
protected void insertTupleToAnonTable(java.lang.String[] vals,
long eid)
throws java.lang.Exception
insertTupleToAnonTable in class Anonymizervals - All values of the tuple to be inserted (as read from the source, i.e., before any generalization)eid - Equivalence id of the equivalence to which the tuple belongs
java.lang.Exception
public void anonymize()
throws java.lang.Exception
anonymize in class Anonymizerjava.lang.Exception
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||