Mikä on hash -toiminto?

Hajautusfunktio on menetelmä tietokoneen virheiden tarkistamiseen ja tietojen järjestämiseen. Suuri määrä dataa käsitellään matemaattisella algoritmilla, kunnes pieni määrä on jäljellä. Tätä numeroa käytetään osana luetteloa, jonka avulla tietokone voi löytää kyseisen tiedon myöhemmin. Hyvän tiivistefunktion pitäisi antaa riittävän pieni tulos, joten sitä on helppo käyttää, mutta se antaa ainutlaatuisen tuloksen jokaiselle tietojoukolle. Hajautustoiminto tarjoaa myös minimaalisen virheentarkistuksen, koska vioittuneen ja hyvän datan pitäisi tuottaa erilaisia ​​tuloksia tiivistettäessä.

Tietokonetietokannassa on yleensä helpompaa tallentaa paikkoja numeroilla kuin kirjaimilla. Numeroilla on paljon enemmän järjestämis- ja lajittelumenetelmiä kuin kirjaimia. Tämän seurauksena numerot määritetään usein paikkoihin, jotka sisältävät vaihtelevaa tietoa tietokoneen tietokannassa. Nämä numerot voivat olla mielivaltaisia ​​tai edustavia tietoja.

Mielivaltaiset numerot määritetään yksinkertaisesti tietokoneen muistissa olevan sijainnin tai tietojen tallennusjärjestyksen perusteella. Tietojen tallentaminen tällä tavalla on yleistä pienemmissä tietokannoissa tai paikoissa, joissa tiedot eivät muutu kovin usein. Kun tietokantaa käytetään uudelleen muilla alueilla, sen uudelleenindeksointi alkaa viedä yhä enemmän aikaa, kunnes se ei enää ole tehokas.

Hajautusfunktio tulee edustavista tiedoista. Tiedot, riippumatta siitä, mitä ne sisältävät, käännetään numeroiksi. Nämä numerot syötetään matemaattiseen rakenteeseen, joka antaa pienen luvun, tyypillisesti kokonaisluvun. Jos tiivistefunktio toimii oikein, jokaisella tietokannan osan sijainnilla on oma ainutlaatuinen tulos. Jos kahdella tai useammalla sijainnilla on sama tulos, ohjelmat voivat tuoda vääriä tietoja päällekkäisen hajautuksen perusteella.

Hash -toimintoa on mahdollista käyttää myös muihin tarkoituksiin. Suuret määrät erittäin toistuvia tietoja voidaan jakaa pienempiin arvoihin. Tämä on erityisen mukavaa, kun etsit toistuvia jaksoja suurista tietojoukoista. Esimerkiksi deoksiribonukleiinihappo (DNA) koostuu hyvin pienestä määrästä erilaisia ​​komponentteja. Kun nämä komponentit hajotetaan hajautusarvojen avulla, paikat, joissa kaksi DNA -merkkijonoa ovat samat ja erilaiset, tulevat hyvin selväksi yksinkertaisesti vertaamalla kahta pientä numerosaraketta.

Viimeinen alue, jolla tiivistefunktiot ovat hyödyllisiä, on virheentarkistus. Kun tiedot tiivistetään alun perin, arvo tallennetaan osana sijainnin hakemistoa. Jos tietoja tarvitaan myöhemmin, tiedot haetaan yhdessä arvon kanssa. Jos ohjelma uudistaa tiedot ja tulos on erilainen, korruptio tapahtui jossain vaiheessa. Tämä korruptio liittyy yleensä tietoihin, koska hajautuskorruptio olisi estänyt tietojen noutamisen.