TimescaleDB เป็นฐานข้อมูลโอเพ่นซอร์สที่ออกแบบมาเพื่อให้สามารถปรับขนาด SQL สำหรับข้อมูลอนุกรมเวลาได้ ได้รับการออกแบบทางวิศวกรรมจาก PostgreSQL และจัดทำแพ็กเกจเป็นส่วนขยาย PostgreSQL ซึ่งให้การแบ่งพาร์ติชันตามเวลาและพื้นที่โดยอัตโนมัติ (คีย์การแบ่งพาร์ติชัน) พร้อมทั้งรองรับ SQL เต็มรูปแบบ
หากคุณไม่ต้องการติดตั้งหรือดูแลอินสแตนซ์ TimescaleDB ของคุณ ให้ลองใช้ Timescale รุ่นทดลองใช้ฟรี 30 วัน ซึ่งเป็นข้อเสนอระบบคลาวด์ที่มีการจัดการเต็มรูปแบบของเรา มาตราส่วนเวลาเป็นแบบจ่ายตามการใช้งาน เราไม่เรียกเก็บเงินสำหรับพื้นที่เก็บข้อมูลที่คุณไม่ได้ใช้ การสำรองข้อมูล สแน็ปช็อต ทางเข้าหรือทางออก
หากต้องการทราบว่าตัวเลือกใดดีที่สุดสำหรับคุณ โปรดดูผลิตภัณฑ์ Timescale สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเวอร์ชัน Apache-2, ชุมชน TimescaleDB (โฮสต์ด้วยตนเอง) และ Timescale Cloud (โฮสต์) ซึ่งรวมถึง: การเปรียบเทียบคุณลักษณะ คำถามที่พบบ่อย เอกสารประกอบ และการสนับสนุน
ด้านล่างนี้เป็นข้อมูลเบื้องต้นเกี่ยวกับ TimescaleDB สำหรับข้อมูลเพิ่มเติม โปรดดูแหล่งข้อมูลอื่นๆ เหล่านี้:
เอกสารสำหรับนักพัฒนา
ช่องสแลค
ฟอรั่มชุมชนไทม์สเกล
บันทึกย่อประจำรุ่นตามกำหนดเวลาและแผนการในอนาคต
เพื่อการอ้างอิงและความชัดเจน ไฟล์โค้ดทั้งหมดในการอนุญาตให้ใช้สิทธิ์อ้างอิงที่เก็บข้อมูลนี้อยู่ในส่วนหัว (ทั้งใบอนุญาต Apache-2-open-source หรือ Timescale License (TSL) ) ไบนารีลิขสิทธิ์ Apache-2 สามารถสร้างได้โดยส่ง -DAPACHE_ONLY=1
ไปยัง bootstrap
ยินดีต้อนรับผู้ร่วมให้ข้อมูล
(หากต้องการสร้าง TimescaleDB จากแหล่งที่มา โปรดดูคำแนะนำใน การสร้างจากแหล่งที่มา )
TimescaleDB ปรับขนาด PostgreSQL สำหรับข้อมูลอนุกรมเวลาผ่านการแบ่งพาร์ติชันเวลาและพื้นที่โดยอัตโนมัติ (คีย์การแบ่งพาร์ติชัน) แต่ยังคงรักษาอินเทอร์เฟซ PostgreSQL มาตรฐานไว้
กล่าวอีกนัยหนึ่ง TimescaleDB เปิดเผยสิ่งที่ดูเหมือนตารางปกติ แต่จริงๆ แล้วเป็นเพียงนามธรรม (หรือมุมมองเสมือน) ของตารางแต่ละตารางจำนวนมากที่ประกอบด้วยข้อมูลจริง มุมมองตารางเดี่ยวนี้ ซึ่งเราเรียกว่าไฮเปอร์เทเบิล ประกอบด้วยส่วนต่างๆ มากมาย ซึ่งสร้างขึ้นโดยการแบ่งพาร์ติชันข้อมูลของไฮเปอร์เทเบิลในมิติเดียวหรือสองมิติ: ตามช่วงเวลา และตาม "คีย์พาร์ติชัน" (เป็นทางเลือก) เช่น รหัสอุปกรณ์ ตำแหน่ง รหัสผู้ใช้ ฯลฯ
การโต้ตอบของผู้ใช้กับ TimescaleDB เกือบทั้งหมดนั้นเกิดขึ้นจากไฮเปอร์เทเบิล การสร้างตารางและดัชนี การแก้ไขตาราง การแทรกข้อมูล การเลือกข้อมูล ฯลฯ สามารถ (และควร) ดำเนินการทั้งหมดบนไฮเปอร์เทเบิล
จากมุมมองของทั้งการใช้งานและการจัดการ TimescaleDB มีรูปลักษณ์และความรู้สึกเหมือนกับ PostgreSQL และสามารถจัดการและสืบค้นได้เช่นนั้น
โดยทั่วไปแล้วการตั้งค่าที่พร้อมใช้งานทันทีของ PostgreSQL จะระมัดระวังเกินไปสำหรับเซิร์ฟเวอร์สมัยใหม่และ TimescaleDB คุณควรตรวจสอบให้แน่ใจว่าการตั้งค่า postgresql.conf
ของคุณได้รับการปรับแล้ว โดยใช้ timescaledb-tune หรือดำเนินการด้วยตนเอง
-- อย่าลืมสร้าง timescaledb extensionCREATE EXTENSION timescaledb;-- เราเริ่มต้นด้วยการสร้างเงื่อนไขตาราง SQL CREATE TABLE ปกติ ( เวลา TIMESTAMPTZ NOT NULL, ข้อความตำแหน่งไม่เป็นโมฆะ อุณหภูมิความแม่นยำสองเท่า NULL, ความชื้น DOUBLE PRECISION NULL);-- จากนั้นเราจะแปลงมันเป็นไฮเปอร์เทเบิลที่แบ่งพาร์ติชันตามเวลา timeSELECT create_hypertable('conditions', 'time');
เริ่มต้นอย่างรวดเร็ว: การสร้างไฮเปอร์เทเบิล
ตัวอย่างอ้างอิง
การแทรกข้อมูลลงในไฮเปอร์เทเบิลทำได้โดยใช้คำสั่ง SQL ปกติ:
INSERT INTO Conditions(time, location, Temperature, humid) VALUES (NOW(), 'office', 70.0, 50.0);SELECT * FROM Conditions ORDER BY time DESC LIMIT 100;SELECT time_bucket('15 minutes', time) AS สิบห้านาที , ตำแหน่ง, COUNT(*),MAX(อุณหภูมิ) AS max_temp,MAX(ความชื้น) AS max_hum จากเงื่อนไข WHERE เวลา > NOW() - ช่วงเวลา '3 ชั่วโมง' จัดกลุ่มตาม 15_min สถานที่ ORDER BY 15_min DESC, max_temp DESC;
นอกจากนี้ TimescaleDB ยังมีฟังก์ชันเพิ่มเติมสำหรับการวิเคราะห์อนุกรมเวลาที่ไม่มีอยู่ใน vanilla PostgreSQL (เช่น ฟังก์ชัน time_bucket
ด้านบน)
การเริ่มต้นอย่างรวดเร็ว: การใช้งานขั้นพื้นฐาน
ตัวอย่างอ้างอิง
API ของ TimescaleDB
Timescale ซึ่งเป็น TimescaleDB ที่มีการจัดการเต็มรูปแบบในระบบคลาวด์ มีให้บริการผ่านการทดลองใช้ฟรี สร้างฐานข้อมูล PostgreSQL ในระบบคลาวด์ด้วย TimescaleDB ที่ติดตั้งไว้ล่วงหน้า เพื่อให้คุณสามารถขับเคลื่อนแอปพลิเคชันของคุณด้วย TimescaleDB โดยไม่มีค่าใช้จ่ายในการจัดการ
TimescaleDB ยังมีให้บริการแบบแพ็กเกจล่วงหน้าสำหรับหลายแพลตฟอร์ม เช่น Linux, Windows, MacOS, Docker และ Kubernetes สำหรับข้อมูลเพิ่มเติม โปรดดูที่ ติดตั้ง TimescaleDB
หากต้องการสร้างจากแหล่งที่มา โปรดดู การสร้างจากแหล่งที่มา
คุณสมบัติพื้นฐานของ TimescaleDB
คุณสมบัติ TimescaleDB ขั้นสูง
การทดสอบ TimescaleDB
timescaledb-tune: ช่วยตั้งค่าการกำหนดค่า PostgreSQL ตามทรัพยากรของระบบของคุณ
timescaledb-parallel-copy: ทำให้การโหลดจำนวนมากครั้งแรกของคุณขนานกันโดยใช้ COPY
ของ PostgreSQL กับพนักงานหลายคน
เหตุใดจึงต้องใช้ TimescaleDB
การย้ายข้อมูลจาก PostgreSQL
การเขียนข้อมูล
การสืบค้นและการวิเคราะห์ข้อมูล
บทช่วยสอนและข้อมูลตัวอย่าง
ช่องสแลค
ปัญหา Github
การสนับสนุนตามช่วงเวลา: ดูตัวเลือกการสนับสนุน (ชุมชนและการสมัครสมาชิก)
บันทึกย่อประจำรุ่นตามช่วงเวลา: ดูข้อมูลโดยละเอียดเกี่ยวกับเวอร์ชันปัจจุบันและอดีต และสมัครรับการแจ้งเตือนเกี่ยวกับการเปิดตัวใหม่ การแก้ไข และโปรแกรมทดลองใช้ก่อนเปิดตัว/เบต้า
คำแนะนำของผู้ร่วมให้ข้อมูล
คู่มือสไตล์โค้ด