Berbagi teknologi

Ringkasan tipe data dan format penyimpanan di Hive

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

1.Jenis data

Hive mendukung beberapa tipe data, dibagi menjadi dua kategori: tipe data primitif dan tipe data kompleks. Berikut ini adalah tipe data yang didukung oleh Hive:

Tipe data primitif:

1. Tipe bilangan bulat:

                kecil sekali: Bilangan bulat bertanda 1 byte
               huruf kecil: Bilangan bulat bertanda 2 byte
               inti: Bilangan bulat bertanda 4-byte
                besarin: Bilangan bulat bertanda 8 byte
               mengambang: Nomor floating point presisi tunggal 4 byte
               dobel: Angka floating point presisi ganda 8-byte
                desimal: Jenis angka presisi tinggi, presisi dan skala dapat ditentukan, seperti desimal (10,2)

Byte: Salah satu unit penyimpanan paling dasar di komputer, 1 byte menempati 8 bit, rentang data: rentang negatif: -128 hingga -1, rentang positif: 0 hingga 127

2. Jenis senar:

                rangkaian: string dengan panjang variabel
               varchar: String dengan panjang variabel dengan batas panjang maksimum, seperti varchar(255)
               arang: String dengan panjang tetap, seperti char(10)

3.Jenis tanggal/waktu:

                cap waktu: Stempel waktu berisi tanggal dan waktu, akurat hingga nanodetik
               tanggal: Hanya berisi bagian tanggal, bukan bagian waktu
                selang: Interval waktu, digunakan untuk menyatakan perbedaan antara dua tanggal atau waktu

4. Tipe Boolean:

                Bahasa Inggris Boolean: Nilai Boolean, nilainya benar atau salah

5. Tipe biner:

                biner: array byte dengan panjang sewenang-wenang

Tipe data kompleks:
1.Jenis array

        Himpunan<T> : Daftar terurut yang berisi beberapa elemen dengan tipe yang sama, seperti array<int>

2. Jenis pemetaan

    peta<K, V> : Kumpulan pasangan nilai kunci yang tidak berurutan, dengan kunci dan nilai dapat berupa tipe data apa pun, seperti peta<string, int>


    3. Tipe struktur

         struktur<col1: type1, col2: type2, ...> : Catatan yang berisi beberapa bidang, setiap bidang dapat memiliki tipe data yang berbeda, misalnya.struktur<name: string, age: int>

  1. CREATE TABLE example_table (
  2. tinyint_col tinyint,
  3. smallint_col smallint,
  4. int_col int,
  5. bigint_col bigint,
  6. float_col float,
  7. double_col double,
  8. decimal_col decimal(10, 2),
  9. string_col string,
  10. varchar_col varchar(255),
  11. char_col char(10),
  12. timestamp_col timestamp,
  13. date_col date,
  14. boolean_col boolean,
  15. binary_col binary,
  16. array_col array<int>,
  17. map_col map<string, int>,
  18. struct_col struct<name: string, age: int>,
  19. union_col uniontype<int, string>
  20. );

2. Format penyimpanan file sarang

format penyimpanan Hive dibagi menjadi dua kategori:

Jenis file teks biasa: file teks, yang tidak dikompresi dan juga merupakan format penyimpanan default Hive.

Salah satu kategori adalah penyimpanan file biner:

sequencefile: akan dikompresi dan data tidak dapat dimuat menggunakan metode load.

orcfile: akan dikompresi dan data tidak dapat dimuat menggunakan metode load.

parket: akan dikompresi dan data tidak dapat dimuat menggunakan metode pemuatan.

rcfile: Ini dapat mengompresi dan tidak dapat memuat data menggunakan metode load.

Format penyimpanan file teks dan file urutan didasarkan pada penyimpanan baris; orc dan parket didasarkan pada penyimpanan kolom, dan rcfile adalah penyimpanan baris dan kolom campuran.

Saat membuat tabel, Anda dapat menggunakan disimpan sebagai parket untuk menentukan format penyimpanan tabel, misalnya:

  1. create table if not exists stocks_parquet (
  2. track_time string,
  3. url string,
  4. session_id string,
  5. referer string,
  6. ip string,
  7. end_user_id string,
  8. city_id string
  9. )
  10. stored as parquet;

Ubah format penyimpanan default sarang:

  1. <property>
  2. <name>hive.default.fileformat</name>
  3. <value>TextFile</value>
  4. <description>
  5. Expects one of [textfile, sequencefile, rcfile, orc].
  6. Default file format for CREATE TABLE statement. Users can explicitly override it by CREATE TABLE ... STORED AS [FORMAT]
  7. </description>
  8. </property>
  9. 也可以使用set方式修改:
  10. set hive.default.fileformat=TextFile