Rumah > pangkalan data > tutorial mysql > Apakah Jenis Data Paling Cekap untuk Menyimpan Nilai Hash SHA1 dalam MySQL?

Apakah Jenis Data Paling Cekap untuk Menyimpan Nilai Hash SHA1 dalam MySQL?

Barbara Streisand
Lepaskan: 2024-11-13 12:10:02
asal
660 orang telah melayarinya

What is the Most Efficient Data Type for Storing SHA1 Hash Values in MySQL?

Menyimpan Nilai Hash SHA1 dengan Cekap dalam MySQL

Apabila menyimpan hasil cincang SHA1 dalam pangkalan data MySQL, adalah penting untuk menentukan yang sesuai jenis medan untuk kecekapan storan optimum.

Timbul persoalan: berapakah panjang medan VARCHAR yang sepatutnya untuk menyimpan hasil cincang?

Jawapan:

Walaupun VARCHAR sesuai untuk data panjang boleh ubah, ia tidak sesuai untuk data panjang tetap seperti cincang SHA1. Nilai SHA1 sentiasa 160 bit panjang, dan menggunakan VARCHAR akan mengakibatkan bait tambahan terbuang untuk medan panjang.

Selain itu, menyimpan nilai mentah SHA1 adalah tidak cekap kerana ia menggunakan 4 bit setiap aksara, memerlukan 40 aksara (160/4).

Sebaliknya, adalah disyorkan untuk menggunakan jenis data BINARY(20) dan menukar nilai SHA1 kepada binari menggunakan fungsi UNHEX. Kaedah ini menyimpan cincang dalam format binari, menggunakan 8 bit setiap aksara dan hanya memerlukan 20 aksara (160/8).

Perbandingan Storan:

Perbandingan antara BINARI(20) dan CHAR(40) menggambarkan kelebihan kecekapan:

Dengan jutaan rekod:

  • BINARI(20): 44.56J
  • CHAR(40 ): 64.57J

Menggunakan jenis data BINARY(20) mengurangkan ruang storan dengan ketara, menjadikannya pilihan pilihan untuk menyimpan nilai cincang SHA1 dalam MySQL.

Atas ialah kandungan terperinci Apakah Jenis Data Paling Cekap untuk Menyimpan Nilai Hash SHA1 dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan