Live data from Hacker News

TimescaleDB vs. Amazon Timestream

blog.timescale.com

131–140 of 203 posts

Re: TimescaleDB vs. Amazon Timestream

#131
post #89

On topic: While the comparison seems terrible for Timestream, as a customer who does not want to manage my databases I would love a similar GCP option, if the product had better tradeoffs. It's also interesting that Timescale attributes this AWS product to their own licensing. They had some much discussed [0] developments on that front, and if it did in fact force AWS to build their own implementation, that seems lik…

> Does anyone have any quick checklist or metrics to make decisions like this?

I'm not a database expert in any way, but I've had to evaluate database options for both existing and new applications, and my "methodology" is as follows:

- Understand the workload

Is the database workload read-intensive, write-intensive, or both? Does the application require strong consistency? Does it require replication? What kind of replication? Can writes be batched, or are processed ad-hoc? What kind of read operations will you do, and what is the desired response times for those operations (ex. is 2s tolerable? 500ms? 20ms?)

- Scouting

Select a set of available options to benchmark using whatever criteria you may see fit, but following the previous step constraints.

- Benchmark

Create a somewhat simple model that fits your workload and models your real case, using the language you'll be using to build your application; Create benchmark code for the most critical/complex operations; Run it at least 5 times on similar hardware of what you expect production to be (this is important; eg. storage (both memory and disk) latency varies wildly between "my laptop" and a cloud provider) and record the results; Be sure to keep an eye on memory consumption, cpu and disk usage when running the benchmarks;

- Decide :)

Usual criteria:

* Price;

* Features (of course);

* Easiness of deploy or cloud provider availablity;

* Documentation quality;

* Driver quality for your application language (it may happen you already excluded a candidate on the previous step due to this);

* Query language familiarity;

* Performance;

* Adoption (translated to: can I expect a new developer to have the basic skills on this tech?);

Re: TimescaleDB vs. Amazon Timestream

#132
post #115
post #98

This reads like a Postgres vs DynamoDB comparison, because that’s likely what it is. The article makes a lot of points really well, and if I had 8 highly qualified people who had nothing else to do on my team working for free (or on salaries that were a rounding error in my actual and opportunity cost budget), I’d certainly get them to learn and use Timescale. But I don’t right now, so I’m going to use the option tha…

1. Timescale sells a fully managed service offering running on AWS, GCP, or Azure. So you can get started with 3-4 clicks and have a database running in 30 seconds. (We actually don't sell "software" at all - that's all free to download and run yourself.) We're fully aligned that cloud services often have lower TCO in the long run =) https://www.timescale.com/timescale-signup 2. Beyond operations, your team probably…

The managed cloud feature is great, so if there's a comparison happening it'll be much more valid if you do a like-to-like one. I'd be more interested to see that the numbers (performance and cost would be) if you ran the comparison with Timescale Cloud managed, on AWS, with EBS set up (and note IOPS settings) at a comparable provisioned size with multi-AZ failover. Doing that and checking costs would be much fairer from a cost-per-metric point of view.

Re: TimescaleDB vs. Amazon Timestream

#133

Earlier quoted context omitted.

Here you go: - Community features: All features labeled with "community" on here: https://docs.timescale.com/latest/api . Only restriction is that you can't offer them as part of a Timescale-DBaaS. - Open-source features: Everything else, licensed under Apache 2 - Enterprise features: No longer exist, we made all of them free/community earlier this year: https://blog.timescale.com/blog/building-open-source-busines...…

The documentation still talks about buying an enterprise edition: https://docs.timescale.com/latest/getting-started/exploring-...

Timescale web dev here. Just curious where you got that link from? It's not linked to on our website nav anymore.

Re: TimescaleDB vs. Amazon Timestream

#134
post #22

My takeaway from this is more to be wary of AWS than anything. I've also heard gcp can be a real mess. Is Azure any good yet?

The core services are really good, and I tend to stick to those.

For me, my list is: IAM, STS, Route53, EC2 (and all of its children), S3, and SQS.

(By the way, hello fellow T-bird.)

Re: TimescaleDB vs. Amazon Timestream

#135
post #57

If you take one thing away from this it's do not use AWS timestream, and if you are using it, get rid of it quick. It's unfit for purpose. That first graph tells you everything you need to know. Time to insert a billion events: TimescaleDB: 5 min AWS Timestream: ~2 weeks! I think the team at AWS that built it should be reassigned and contractors or an A team brought in to try and salvage it. Because they've built the…

> I think the team at AWS that built it should be reassigned and contractors or an A team brought in to try and salvage it

That's a knee-jerk assessment. You don't know the first thing about Timestream's development and we are only a few years into the development process of what I believe is a novel architecture for a timeseries database. Give it another couple of years and then we can take a look at how Timestream is doing.

One of Amazon's advantages is the ability to plan and execute on a longer time scale than their competitors. They can take approaches that take longer to bear fruit but are better in the long term.

Timestream is a scalable timeseries database with separated compute and storage built for extremely high volumes (or that's my guess given the architecture offloads cold data to magnetic storage). Whereas Timescale seems to be timeseries functionality added to Postgres - which means they are probably going to hit scaling (perf/cost) issues once they need to work at petabyte scale. And my guess would be that their coupling to Postgres is going to make it painful to build for that scale. They also claim to offer separated compute and storage, but based on the pricing model it seems to be that you can change your CPU+Storage configuration, not an ephemeral design where you only pay for compute when it's needed - very different from Timestream's ephemeral pricing model. This is a pure guess, but I would imagine that Timescale being built on top of Postgres is going to make a truly serverless SaaS (i.e. pay for only what you use) very difficult to build.

Time will tell, but this is sort of if MySQL benchmarked writes against Snowflake 5 years ago and then thinking that everyone at Snowflake should be fired.

Re: TimescaleDB vs. Amazon Timestream

#136

Earlier quoted context omitted.

Our experiments all ran on cloud instances (DO and Timescale Forge) that use storage that are replicated across multiple AZs/racks for greater reliability and fault tolerance.

Nice! Multiple AZs or Multiple racks? EDIT: Also your response contradicts what is in the blog post: > 1 remote client machine, 1 database server, both in the same cloud datacenter > Disk Size: 4.8TB of disk in a raid0 configuration (EXT4 filesystem)

On our managed Timescale Forge, it's multiple AZ.

(On some benchmarking equipment on Digital Ocean, it's advertised as "multiple racks", but managed to reduce blast radius.)

Re: TimescaleDB vs. Amazon Timestream

#137
post #115

Earlier quoted context omitted.

1. Timescale sells a fully managed service offering running on AWS, GCP, or Azure. So you can get started with 3-4 clicks and have a database running in 30 seconds. (We actually don't sell "software" at all - that's all free to download and run yourself.) We're fully aligned that cloud services often have lower TCO in the long run =) https://www.timescale.com/timescale-signup 2. Beyond operations, your team probably…

The managed cloud feature is great, so if there's a comparison happening it'll be much more valid if you do a like-to-like one. I'd be more interested to see that the numbers (performance and cost would be) if you ran the comparison with Timescale Cloud managed, on AWS, with EBS set up (and note IOPS settings) at a comparable provisioned size with multi-AZ failover. Doing that and checking costs would be much fairer…

We report numbers in the blog post with our managed offering Timescale Forge, running on AWS with storage replicated across AZs and supporting automated failover.

Not sure about "comparably provisioned re: IOPS" given that you don't know about that at all with AWS Timestream, but our blog post reports the performance/cost of a suitably provisioned Timescale Forge instance (8vCPU / 1TB storage).

100GB ingest then query benchmarks took far less than 1 hour with Timescale Forge @ $2.18/hour.

The "consumption based pricing" for AWS Timestream for same benchmark took $336.40.

Re: TimescaleDB vs. Amazon Timestream

#138
post #5

Not a surprising result at all. Timestream is another case of AMS trying to make something for the sake of having it (see here Kinesis instead of just doing Kafka and many other products) instead of just adopting something industry standard. That isn't to say they don't do some good stuff just they also ship a lot of crap, very much 2 tiers of products in the AWS catalog. I would eventually like to see comparison for…

I think AWS is early to offer a not-yet-matured product just to get it in front of customers and start gathering real usage feedback. I’d consider dynamo a fantastic tier 1 service, but it wasn’t always that way. This is inline with the Amazon philosophy in general. As for “making something for the sake of having it”, I believe the key reason for building their own applications is that they can build it on the same m…

They are also incentivized to do it because it makes AWS sticky. The more of their services you use, the harder it is to migrate somewhere else. They don't need to put out quality services, they just have to put out enough that you become dependent on one or two of them and then you're stuck.

Re: TimescaleDB vs. Amazon Timestream

#139
post #136

Earlier quoted context omitted.

Nice! Multiple AZs or Multiple racks? EDIT: Also your response contradicts what is in the blog post: > 1 remote client machine, 1 database server, both in the same cloud datacenter > Disk Size: 4.8TB of disk in a raid0 configuration (EXT4 filesystem)

On our managed Timescale Forge, it's multiple AZ. (On some benchmarking equipment on Digital Ocean, it's advertised as "multiple racks", but managed to reduce blast radius.)

This contradicts what is in the blog post. From the machine configuration section:

> 1 remote client machine, 1 database server, both in the same cloud datacenter

> Disk Size: 4.8TB of disk in a raid0 configuration (EXT4 filesystem)

Both those statements lead me to believe it's a single server with locally attached SSDs in a RAID0. Which is it?

I know benchmarking is hard, and it's difficult to test certain aspects of Amazon Timestream due to it being a managed service, but I really think these details need to be firmed up to make sure you are comparing apples to apples. TimescaleDB seems like a cool product.

Another suggestion I'd make is to run the Amazon Timestream clients across multiple AZs if you aren't already. The blog post doesn't mention whether all the t3 instances are in the same AZ or not.

Re: TimescaleDB vs. Amazon Timestream

#140
post #81

Earlier quoted context omitted.

Amazon Kinesis is based on Apache Flink. One complaint might be the branding but keep in mind that the Apache Foundation has a strict policy of enforcing trademarks. The Apache Foundation itself doesn't choose winners and many equivalent projects live under the same umbrella, just like Flink and Kafka. Performance is often transient and it isn't the only criteria used when choosing a vendor. Some enterprise customers…

> My impression is that Amazon responds to customer requests to solve specific problems and they make a decent effort to continuously improve the performance and other aspects of their services. I get that, but I would have thought it would make more sense to approach TimescaleDB for a licensing deal. That way, right from day one they get a mature product with incredible features and performance. And they'd win devel…

> I get that, but I would have thought it would make more sense to approach TimescaleDB for a licensing deal. That way, right from day one they get a mature product with incredible features and performance. And they'd win developer mindshare by supporting OSS.

In their mind, long term, that leaves money on the table. If they entered a licensing deal, they would have exposure risk if they ever wanted to replace it with an in-house product (and, given their corporate culture, an actual legal exposure, intentional or not, is a possibility).

Post reply on HN