Presto is an open source SQL query engine designed to run queries on data stored in Hadoop or in traditional databases.
Teradata supported development of Presto followed the acquisition of Hadapt and Revelytix.
N/A
SingleStore
Score 7.5 out of 10
N/A
SingleStore aims to enable organizations to scale from one to one million customers, handling SQL, JSON, full text and vector workloads in one unified platform.
Simple stories & templates work nicely - like for our Insider program. Stories that include a lot of images may be challenging to create & have look appealing.
Well-Suited Scenarios: Real-Time Analytics: Financial trading platforms requiring instant insights. Operational Dashboards: Retail businesses monitoring live sales. IoT Data Processing: Smart device monitoring with high data ingestion. Fraud Detection: Banks detect suspicious transactions instantly. Less Appropriate Scenarios: Archival Storage: Cold data storage with infrequent access. Low-Volume Workloads: Small-scale apps with minimal data processing needs. Complex ETL Pipelines: Heavy data transformations without real-time demands.
Linking, embedding links and adding images is easy enough.
Once you have become familiar with the interface, Presto becomes very quick & easy to use (but, you have to practice & repeat to know what you are doing - it is not as intuitive as one would hope).
Organizing & design is fairly simple with click & drag parameters.
Presto was not designed for large fact fact joins. This is by design as presto does not leverage disk and used memory for processing which in turn makes it fast.. However, this is a tradeoff..in an ideal world, people would like to use one system for all their use cases, and presto should get exhaustive by solving this problem.
Resource allocation is not similar to YARN and presto has a priority queue based query resource allocation..so a query that takes long takes longer...this might be alleviated by giving some more control back to the user to define priority/override.
UDF Support is not available in presto. You will have to write your own functions..while this is good for performance, it comes at a huge overhead of building exclusively for presto and not being interoperable with other systems like Hive, SparkSQL etc.
It does not release a patch to have back porting; it just releases a new version and stops support; it's difficult to keep up to that pace.
Support engineers lack expertise, but they seem to be improving organically.
Lacks enterprise CDC capability: Change data capture (CDC) is a process that tracks and records changes made to data in a database and then delivers those changes to other systems in real time.
For enterprise-level backup & restore capability, we had to implement our model via Velero snapshot backup.
[Until it is] supported on AWS ECS containers, I will reserve a higher rating for SingleStore. Right now it works well on EC2 and serves our current purpose, [but] would look forward to seeing SingleStore respond to our urge of feature in a shorter time period with high quality and security.
When it comes to ingestion speed, SingleStore is probably at the top. Being able to create pipelines using SQL to ingest data from S3, Kafka, and other sources, is a great advantages. This means you can dynamically ingest data by customizing your SQL queries. SingleStore pipelines are pretty sophisticated, yet very simple. Few lines of codes and you are ingesting data, while still able to perform analytical queries on your billions of row tables.
The support deep dives into our most complexed queries and bizarre issues that sometimes only we get comparing to other clients. Our special workload (thousands of Kafka pipelines + high concurrency of queries). The response match to the priority of the request, P1 gets immediate return call. Missing features are treated, they become a client request and being added to the roadmap after internal consideration on all client needs and priority. Bugs are patched quite fast, depends on the impact and feasible temporary workarounds. There is no issue that we haven't got a proper answer, resolution or reasoning
We allowed 2-3 months for a thorough evaluation. We saw pretty quickly that we were likely to pick SingleStore, so we ported some of our stored procedures to SingleStore in order to take a deeper look. Two SingleStore people worked closely with us to ensure that we did not have any blocking problems. It all went remarkably smoothly.
I think Presto is one of the best solutions out there today at the cutting edge for interactive query analysis. One of the challenges is presto is a niche tool for the interactive query use case and doesn't have the knobs and whistles as much as Spark. In the foreseeable future if they are able to make presto work without the need for Hive, solving all the gaps it could be game changing and can be a direct threat to spark
Reduces database sprawl, ETL costs, infrastructure expenses, etc. Supports horizontal scaling, unlike PostgreSQL & Aurora, and real-time analytics and fast transactions (HTAP), unlike Snowflake & ClickHouse.Handles high-volume workloads with thousands of concurrent queries. No need for ETL processes, unlike BigQuery & Snowflake. Works with JSON, relational, and key-value data, unlike ClickHouse.
Lower operational complexity - Installation and maintenance is pretty easy
Object scale when used can compete with Traditional Warehouse Systems like Teradata, Netezza, Greenplum
Adds lot of value to the business like couple of operations which never worked in traditional DBMS including HANA, Oracle In Memory, SQL Server In Memory just flew in SingleStore