Sobes.tech
Middle

Ի՞նչ է partition-ը ClickHouse-ում։

sobes.tech AI

Պատասխան AI-ից

ClickHouse-ում բաժանումը՝ դա աղյուսակի տրամաբանական մասն է, որը օգտագործվում է տվյալների պահեստավորման կազմակերպման և օպտիմալացման համար: Բաժանումը թույլ է տալիս բաժանել աղյուսակը առանձին հատվածների՝ ըստ որոշակի բանալիի (օրինակ՝ ամսաթվի), ինչը արագացնում է տվյալների ֆիլտրումը այդ բանալիով և հեշտացնում տվյալների կառավարումը (օրինակ՝ հին բաժանումների ջնջումը):

ClickHouse-ում բաժանումները ստեղծվում են աղյուսակի ստեղծման ժամանակ սահմանված արտահայտության հիման վրա և սովորաբար համապատասխանում են արժեքների տիրույթներին (օրինակ՝ ամիս, օր): Սա օգնում է արդյունավետ կերպով կարդալ և սեղմել տվյալները, ինչպես նաև իրականացնել TTL և մաքրման գործողություններ:

մասնավոր օրինակ՝ ամսական բաժանմամբ աղյուսակի ստեղծում:

CREATE TABLE օրինակ (
    իրադարձության_թիվ Date,
    օգտվող_համար UInt32,
    արժեք Float32
) ENGINE = MergeTree()
PARTITION BY toYYYYMM(իրադարձության_թիվ)
ORDER BY (օգտվող_համար);

Այստեղ յուրաքանչյուր ամսվա համար ստեղծվում է բաժանում, ինչը թույլ է տալիս արագ ընտրել տվյալներ նշված ժամանակահատվածի համար։