QuestDB’s cover photo
QuestDB

QuestDB

Technology, Information and Internet

QuestDB is the fastest open source time series database

About us

QuestDB is an open-source database designed to process time-series data, faster. Our approach comes from low-latency trading; QuestDB’s stack is engineered from scratch and dependency-free. YCombinator S20, InfoWorld's 2020 Best of OSS Award Winner & Accel's #Open100.

Industry
Technology, Information and Internet
Company size
11-50 employees
Type
Privately Held
Founded
2019
Specialties
big data, databases, and time-series

Products

Locations

Employees at QuestDB

Updates

  • One of the convenient SQL extensions you can find in QuestDB is the `IN` syntax for ranges. Find every trade at midnight Jan 1st 2024 and 1 minute afterwards, then repeat for the same range for 2 years. SELECT * FROM trades WHERE timestamp IN '2024-01-01T00:00:00;1m;1y;2';

  • Writing a performant database means worrying about the small details, like how to efficiently store VARCHARS, so short strings (below 9 bytes) can be fully inlined within the header and save disk and memory space. Varchar header (column file): +------------+--------------+------------------+ | 32 bits   | 48 bits      | 48 bits     | len + flags | prefix     | offset       +------------+---------------+-----------------+                     │ +------------------------------------+ points to │ ▼ Varchar data (column file): +---+---+---+---+---+---+---+---+---+---+---+ | H | e | l | l | o |   | w | o | r | l | d | +---+---+---+---+---+---+---+---+---+---+---+

  • Sometimes you just want to quickly check if two tables, or two queries, have any rows in common. select * from btc_trades4 INTERSECT select * from btc_trades3; If you want to get only rows which are present in one but not in the other, try `EXCEPT`

  • One of our frequently requested features is soon to be released. Do you have any use cases for PIVOT/UNPIVOT? (SELECT * FROM trades WHERE timestamp in today()) PIVOT ( avg(price), count(price) FOR symbol IN ('BTC-USD', 'ETH-USD') GROUP BY side );

    • table with this output

side	BTC-USD_avg	BTC-USD_count	ETH-USD_avg	ETH-USD_count
sell	39276.41468750003	160	2616.253626760561	284
buy	39286.997461139894	193	2616.850413223139	363
  • Software is shaped by decisions—big and small. Managing decision fatigue helps us build not just better software, but a better dev experience. A few ways to combat it: ✅ Explore before committing ✅ Document key choices ✅ Refactor with intent ✅ Use tools & automation How do you handle decision fatigue in your projects? See the full blog post by one of our engineers: https://lnkd.in/ecEr6Szg #engineering #questdb #opensource

  • 𝗔𝗻𝗱 𝘁𝗵𝗮𝘁, 𝗸𝗶𝗱𝘀, 𝗶𝘀 𝗵𝗼𝘄 𝗣𝗛𝗣 𝗺𝗮𝗱𝗲 𝗶𝘁 𝗶𝗻𝘁𝗼 𝗼𝘂𝗿 𝗰𝗼𝗱𝗲𝗯𝗮𝘀𝗲. I’d like to open a small window into how we introduce incremental improvements in a mature #timeseries #database used by thousands of users—and how that journey led us to add PHP code to our main repository (primarily Java, with some C++ and Rust). We recently enhanced QuestDB’s Postgres protocol for better performance by adding features like query pipelining. Knowing this could break some existing clients, we built in a safeguard: a legacy compatibility flag that reverts to the previous protocol implementation. Most users never needed it—but for a small few, enabling that flag was enough to solve any issues. A few days ago, a PHP user upgraded to the latest version and encountered a brand-new error. While we don’t officially use or provide a PHP client, we know many in our community rely on QuestDB + PHP. We suggested using the legacy flag as an immediate workaround, which got them running again. However, since the old protocol implementation won’t be there forever, we had to fix the root cause. Armed with a reproduction script from the user, our developer Jaromir Hamala pinpointed the problem and delivered a permanent fix—just 11 days after the initial report. We also added a new PHP test runner to give PHP coverage on par with Python and Rust. That’s open-source incremental development at its best, powered by real user collaboration.

Similar pages

Browse jobs

Funding

QuestDB 2 total rounds

Last Round

Series A

US$ 12.0M

See more info on crunchbase