View a markdown version of this page

Determina se hai bisogno di più di una partizione - AWS SDK per la crittografia del database

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Determina se hai bisogno di più di una partizione

Per impostazione predefinita, tutti i beacon sono derivati utilizzando le partizioni. Nella configurazione più semplice, un beacon utilizza una singola partizione. L'utilizzo di partizioni aggiuntive è una decisione di ottimizzazione che aiuta a risolvere problemi di skew, hot values e frequency leak, ma può anche aumentare il fan-out delle query, poiché le query devono essere eseguite una volta per partizione. Questa sezione spiega quando una singola partizione è sufficiente e quando è necessario configurare più partizioni.

Inizia con la popolazione e l'uniformità

Inizia valutando l'attributo che intendi rendere beaconizzato:

  • Dimensione della popolazione: il beacon deve essere derivato da un campo con valori sufficientemente distinti (ad esempio, almeno 32 valori univoci) affinché la beaconizzazione sia efficace. Se questo requisito non viene soddisfatto, l'aumento del numero di partizioni può aiutare a distribuire i valori in modo più efficace.

  • Distribuzione della frequenza: utilizzate l'analisi dell'uniformità per valutare se l'attributo ha una distribuzione per lo più uniforme o mostra un'inclinazione evidente.

    Se un attributo ha una distribuzione approssimativamente uniforme, in genere è sufficiente una singola partizione. Se la distribuzione è distorta o contiene valori caldi chiari, si consiglia di configurare più di una partizione.

Quando sono consigliate partizioni multiple

La configurazione di più partizioni è consigliata quando si verificano una o più delle seguenti condizioni:

  • Hot values o hot beacon: un numero limitato di valori appare molto più spesso di altri (ad esempio, un cognome molto comune). Questi valori creano gruppi molto grandi di beacon identici, rendendoli più facili da distinguere dagli altri valori.

  • Distribuzioni dei dati non omogenee: alcuni valori vengono visualizzati molto frequentemente, mentre molti altri compaiono solo poche volte. Questi valori rari non si verificano abbastanza spesso da confondersi con altri, il che rende più difficile proteggerli all'interno di gruppi sufficientemente ampi.

  • È necessaria una lunghezza del faro più lunga: l'utilizzo di un faro di lunghezza maggiore migliora la precisione delle interrogazioni ma riduce la possibilità di collisioni. Il partizionamento aiuta a mantenere le collisioni distribuendo i valori su più partizioni. Poiché ogni partizione ha il proprio spazio beacon, lo stesso valore può entrare in conflitto con valori diversi in partizioni diverse, contribuendo a bilanciare privacy e precisione.

  • High-volume ricerca sull'attributo: l'attributo viene interrogato frequentemente e i falsi positivi sono costosi. Il partizionamento consente di aumentare la lunghezza del beacon per ridurre i falsi positivi mantenendo al contempo protezioni della privacy accettabili.

Quando una singola partizione è sufficiente

L'utilizzo di una singola partizione può essere appropriato quando:

  • La distribuzione dell'attributo è approssimativamente uniforme e supera i controlli di uniformità.

  • L'attributo viene usato raramente come predicato di ricerca, oppure i falsi positivi e le perdite di frequenza non sono problemi significativi.

In questi casi, la configurazione dell'attributo con una singola partizione è più semplice ed evita il fan-out di query aggiuntive.

In generale, se un attributo è adatto alla beaconizzazione ma presenta vincoli di asimmetria, valori caldi o di anonimato che non possono essere soddisfatti con una singola partizione, la configurazione di più partizioni offre una soluzione più sicura e flessibile.