TimescaleDB — 2017-yilda taqdim etilgan, PostgreSQL uchun kengaytma sifatida qurilgan vaqt qatorlari (time-series) ma’lumotlar bazasi. U alohida, mustaqil ma’lumotlar bazasi dvigateli yaratish o’rniga, mavjud va keng qo’llaniladigan PostgreSQL ustiga qurilgan.
PostgreSQL kengaytmasi sifatida yaratilishi
TimescaleDB yaratuvchilari vaqt qatorlari uchun butunlay yangi ma’lumotlar bazasini yozish o’rniga, PostgreSQL‘ning o’nlab yillik barqarorligi, ishonchliligi va boy ekotizimidan foydalanishga qaror qilishdi. Natijada TimescaleDB oddiy PostgreSQL kengaytmasi sifatida o’rnatiladi, mavjud PostgreSQL vositalari va bilimlari bilan to’liq mos ishlaydi.
Hypertable tushunchasi
TimescaleDB’ning markaziy g’oyasi — “hypertable” bo’lib, u foydalanuvchiga oddiy jadval bilan ishlayotgandek tuyulsa-da, orqa tomonda vaqt bo’yicha avtomatik ravishda kichikroq jismoniy bo’laklarga (chunk) bo’linadi. Bu bo’linish so’rovlar samaradorligini sezilarli oshiradi, chunki tizim faqat tegishli vaqt oralig’idagi bo’laklarni skanerlaydi.
To’liq SQL qo’llab-quvvatlashi
TimescaleDB’ning eng katta afzalliklaridan biri — u to’liq standart SQL‘ni qo’llab-quvvatlaydi, jumladan murakkab JOIN amallari va PostgreSQL‘ning boy funksiyalar to’plami. Bu esa dasturchiga vaqt qatorlari ma’lumotini boshqa relyatsion ma’lumotlar bilan bir xil so’rov ichida birlashtirish imkonini beradi.
InfluxDB bilan farqi
InfluxDB o’ziga xos so’rov tiliga ega maxsus dvigatel bo’lsa, TimescaleDB PostgreSQL‘ning o’zi bo’lib, unga vaqt qatorlari uchun optimallashtirish qo’shilgan. Bu farq TimescaleDB’ni allaqachon PostgreSQL bilimiga ega jamoalar uchun tabiiyroq tanlov qiladi, InfluxDB esa o’ziga xos, faqat vaqt qatorlariga mo’ljallangan holatlarda ko’proq optimallashtirilgan bo’lishi mumkin.
Qo’llanilish sohalari
TimescaleDB IoT sensorlari ma’lumotlarini, moliyaviy bozor narxlarini va ilova metrikalarini saqlashda, ayniqsa mavjud PostgreSQL infratuzilmasiga ega tashkilotlarda keng qo’llaniladi, chunki bu holatda yangi, alohida ma’lumotlar bazasi tizimini o’rganish zarurati yo’qoladi.
Bog’liq tushunchalar
PostgreSQL, Vaqt qatorlari ma’lumotlar bazasi, InfluxDB, SQL, Hypertable, Monitoring