5 ms·
I am actually surprised that given today's wide availability of cloud service, new low-level storage softwares are still getting invented. Questions to fellow
by justicezyx 9y ago
I am actually surprised that given today's wide availability of cloud service, new low-level storage softwares are still getting invented.
Questions to fellow HNers:
- If you need to deploy such software for your business, was it because optimizing GCP/AWS is not cost-effective or the same level of performance is not possible on public cloud?
- tyingq 9y agoSometimes, for various reasons, on-prem is the only choice. Politics, bandwidth limitations, expediency, egress charges, heavy-handed IT security, etc. Similar for EC2 clones.
- toomuchtodo 9y agoThere are compliance and business continuity requirements as well. We don’t allow business apps on cloud providers unless the business unit can prove they can pull it back on prem within a certain number of days.
- gregwebs 9y agoYour view point of just using something already hosted by GCP/AWS is probably the default today for good reason. I would break down the reason to not do that to three reasons: cost, performance, and customization. Lets ignore cost (which is complex) and focus on the TiDB and AWS example. TiDB was build to operate at a scale for OLTP (scale writes horizontally just by adding more nodes) that doesn't exist on Amazon's MySQL. You would have to you DynamoDB and downgrade from SQL transactions to eventual consistency. In terms of customization, TiDB is offering something AWS does not: the ability to store ever more of your data in one distributed data store (TiKV) and to leverage that in different ways (query it with TiSpark, and perhaps more projects like this in the future).
- elvinyung 9y agoCorrection: AWS does have this kind of strongly consistent, scalable OLTP database in Aurora.
- ddorian43 9y agoCorrection: No. Aurora is single node. No horizontal scaling.
- iampims 9y agoNot exactly. You can add as many replicas as you need to scale reads.
- wgjordan 9y agoAurora currently supports automatic horizontal scaling for reads [1], and horizontal scaling for writes is currently in preview [2]. [1]: https://aws.amazon.com/about-aws/whats-new/2017/11/amazon-aurora-now-supports-auto-scaling-for-aurora-replicas/ https://aws.amazon.com/about-aws/whats-new/2017/11/amazon-au... [2]: https://aws.amazon.com/about-aws/whats-new/2017/11/sign-up-for-the-preview-of-amazon-aurora-multi-master/ https://aws.amazon.com/about-aws/whats-new/2017/11/sign-up-f...
- antoncohen 9y ago> horizontal scaling for writes is currently in preview I don't expect multi-master to increase write performance much. It will scale out network connections and maybe query processing, but not actual writing of data. It will replicate all data to all nodes, and the replication will be synchronous to any node it can automatically fail over to. So a client will be able to connect to any master, but that master will have to synchronously write to at minimum all other masters, if not all other nodes, before the server can acknowledge the write back to the client. Every node will need the write performance to write every write. That isn't scaling out writes.
- wgjordan 9y agoFeel free to maintain your skepticism until public benchmarks are available, but Amazon has specifically advertised multi-master will horizontally scale out writes for increased write performance [1]: > Workloads that require even higher write throughput will benefit from horizontally scaling out their writes with additional master instances. [1]: https://aws.amazon.com/about-aws/whats-new/2017/11/sign-up-for-the-preview-of-amazon-aurora-multi-master/ https://aws.amazon.com/about-aws/whats-new/2017/11/sign-up-f...
- alexnewman 9y agoI’ve used all of the amazon datastores and none of them write as quick as a data store designed like this or maybe something like Hbase or Cassandra depending on what you are doing. Something like this is even better. I think amazon does Hbase as a service btw.Those use cases are rare so Aurora is usually the right answer. Alternatively A hundred s3 buckets can handle a large amount of writes as well for large or medium sized writes but it’s annoying to manage.
- cortesoft 9y agoWell, my business is working for a cloud services provider, so I can’t exactly rely on cloud services.
- manigandham 9y agoComplex services are hard to manage, even at scale with billions of investment. We've had plenty of instances where managed services had issues but VMs (being relatively simple tech) were just fine and we would've been better off running it ourselves. Also there's the cost ratio where high performance becomes exponential more expensive for many services. Perhaps the biggest reason though is that software is easier than ever to operate now with the rise of containers and Kubernetes. In fact, you can use Kubernetes as the single managed service to get that taken care of by the cloud, and then do the rest yourself for a great balance of cost, performance, flexibility and reliability.