TimescaleDB, isang bukas na database ng mapagkukunan para sa pagtatago ng data ng serye ng oras

Ang paglabas ng bagong bersyon ng TimescaleDB 1.7 ay inihayag, bersyon kung saan nagdagdag ng suporta para sa PostgreSQL 12 ay naka-highlight, pati na rin sa pagbabago ng ilang mga pag-andar. Para sa mga walang kamalayan sa TimescaleDB, dapat malaman nila iyon ay isang database na idinisenyo upang mag-imbak at maproseso ang data sa anyo ng serye ng oras (mga segment ng mga halaga ng parameter sa mga naibigay na agwat ng oras, binubuo ng rehistro ang oras at isang hanay ng mga halagang naaayon sa oras na ito).

Ang form na ito ng imbakan ay pinakamainam para sa mga application tulad ng monitoring system, trading platform, mga system upang mangolekta ng katayuan ng mga sensor at sukatan.

Tungkol sa TimescaleDB

Ang proyekto ng TimescaleDB ay ipinatupad bilang isang extension ng PostgreSQL at ipinamamahagi sa ilalim ng lisensya ng Apache 2.0. Ang ilan sa mga code na may mga advanced na tampok ay naihatid sa ilalim ng pagmamay-ari ng magkakahiwalay na lisensya ng Timescale (TSL), na hindi pinapayagan ang mga pagbabago, ipinagbabawal ang paggamit ng code sa mga produktong third-party, at hindi pinapayagan ang libreng paggamit sa mga cloud database (database tulad ng serbisyo ).

Ang kagiliw-giliw na bahagi ng TimescaleDB, iyon ay Pinapayagan kang gumamit ng buong mga query sa SQL upang pag-aralan ang naipon na data, na pinagsasama ang kadalian ng paggamit na likas sa pamanggit na DBMS na may kakayahang sumukat at mga kakayahan na likas sa dalubhasang mga sistema ng NoSQL.

Ang istraktura ng imbakan ay na-optimize upang magbigay ng isang mataas na rate ng pagsasama-sama ng data. Sinusuportahan ang mga hanay ng data ng pagsasama-sama ng pangkat, gamit ang mga indeks na nakaimbak sa RAM, na pabalik-balik na naglo-load ng mga makasaysayang segment, naglalapat ng mga transaksyon.

Ang isang pangunahing tampok ng TimescaleDB ay ang suporta para sa awtomatikong pagkahatiisang (pagkahati) ng data array. Ang papasok na data stream ay awtomatikong ipinamamahagi sa mga partitioned na talahanayan.

Ang mga seksyon ay nilikha batay sa oras (ang bawat seksyon ay nag-iimbak ng data para sa isang tiyak na tagal ng oras) o kaugnay sa isang di-makatwirang key (hal. Pagkakakilanlan ng aparato, lokasyon, atbp.). Ang mga partitioned na talahanayan ay maaaring kumalat sa iba't ibang mga drive upang ma-optimize ang pagganap.

Para sa mga query, ang isang nahati na database ay mukhang isang malaking talahanayan, na tinatawag na isang hypertable. Ang hypertable ay isang virtual na representasyon ng maraming magkakahiwalay na mga talahanayan kung saan naipon ang papasok na data.

Ano ang bago sa TimescaleDB 1.7?

Sa bagong bersyon na ito ang suporta para sa pagsasama sa PostgreSQL 12 DBMS, habang ang suporta para sa PostgreSQL 9.6.x at 10.x ay hindi na inalis, bagaman para sa Timescale 2.0 ang suporta lamang para sa PostgreSQL 11+ ay mananatili.

Nakakatayo din yan binago ang pag-uugali ng mga query na may patuloy na pagpapatupad ng pinagsamang mga pagpapaandar (pagsasama-sama ng patuloy na papasok na data sa real time).

Ang mga nasabing query ay pinagsasama ngayon ang mga natapos na view na may bagong dating na data na hindi pa natutupad (dati, ang pagsasama-sama lamang ang sumaklaw sa na-materialize na data). Ginagamit ang bagong pag-uugali para sa bagong nilikha na patuloy na pagsasama-sama.

Bukod dito, ang ilang mga advanced na tool sa pamamahala ng lifecycle ng data ay inilipat sa bersyon ng komunidad ng edisyong pangkalakalan, kasama ang kakayahang muling pagsamahin ang data at iproseso ang mga patakaran upang maalis ang lipas na data (payagan kang mag-imbak lamang ng kasalukuyang data at awtomatikong tatanggalin, idagdag, o i-archive ang mga lipas na tala).

Paano i-install ang TimescaleDB sa Linux?

Para sa mga interesado upang mai-install ang TimescaleDB sa iyong systemMagagawa nila ito sa pamamagitan ng pagsunod sa mga tagubiling ibinabahagi namin sa ibaba.

Sa kaso ng mga iyon Mga gumagamit ng Ubuntu:

sudo echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -c -s)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add –
sudo add-apt-repository ppa:timescale/timescaledb-ppa
sudo apt-get update
sudo apt install timescaledb-postgresql-11

Sa kaso ng Debian:

sudo sh -c "echo 'deb https://packagecloud.io/timescale/timescaledb/debian/ `lsb_release -c -s` main' > /etc/apt/sources.list.d/timescaledb.list"
wget --quiet -O - https://packagecloud.io/timescale/timescaledb/gpgkey | sudo apt-key add -
sudo apt-get update
sudo apt-get install timescaledb-postgresql-11

RHEL / CentOS:

sudo yum install -y https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo tee /etc/yum.repos.d/timescale_timescaledb.repo <<EOL
[timescale_timescaledb]
name=timescale_timescaledb
baseurl=https://packagecloud.io/timescale/timescaledb/el/7/\$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/timescale/timescaledb/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
EOL
sudo yum update -y
sudo yum install -y timescaledb-postgresql-11

Ngayon isasaayos namin ang database sa:

sudo timescaledb-tune

Dito iba't ibang mga pagsasaayos ay maaaring gawin, kung saan maaari kang kumunsulta Sa sumusunod na link. 

Sa katapusan, muling simulan ang serbisyo:

sudo service postgresql restart

Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: AB Internet Networks 2008 SL
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.