Need advice about which tool to choose?Ask the StackShare community!
Amazon Athena vs Apache Kylin: What are the differences?
## Introduction
Today, we will compare Amazon Athena and Apache Kylin, two popular technologies used for processing big data.
## 1. Scalability:
Amazon Athena is a serverless interactive query service that scales automatically, handling tasks of all sizes efficiently. On the other hand, Apache Kylin is designed for extreme scalability and can process data in petabytes, making it more suitable for organizations dealing with enormous datasets.
## 2. Data Sources:
Amazon Athena primarily works with data stored in Amazon S3, while Apache Kylin supports multiple data sources such as Apache Hive, Apache HBase, and more, offering flexibility in choosing the data storage system.
## 3. Query Performance:
Amazon Athena is optimized for querying data quickly and efficiently using standard SQL, connecting directly to S3. In comparison, Apache Kylin utilizes pre-built OLAP cubes to provide sub-second query performance, making it ideal for complex analytical queries.
## 4. Cost:
Amazon Athena follows a pay-per-query pricing model, where users are billed based on the amount of data scanned during query execution. Apache Kylin, being an open-source tool, is cost-effective in terms of licensing fees but may require higher hardware resources for deployment and maintenance.
## 5. SQL Compatibility:
Both Amazon Athena and Apache Kylin support SQL queries, enabling users to leverage their existing SQL skills. However, the syntax and capabilities of SQL queries may vary slightly between the two technologies.
## 6. Deployment Complexity:
Amazon Athena's serverless architecture simplifies deployment as there is no infrastructure setup required. Conversely, Apache Kylin involves more setup and configuration to deploy the OLAP engine and build cubes, potentially requiring more expertise and resources for implementation.
In Summary, Amazon Athena and Apache Kylin differ in scalability, data sources, query performance, cost, SQL compatibility, and deployment complexity, catering to different needs in the big data processing domain.
Hi all,
Currently, we need to ingest the data from Amazon S3 to DB either Amazon Athena or Amazon Redshift. But the problem with the data is, it is in .PSV (pipe separated values) format and the size is also above 200 GB. The query performance of the timeout in Athena/Redshift is not up to the mark, too slow while compared to Google BigQuery. How would I optimize the performance and query result time? Can anyone please help me out?
you can use aws glue service to convert you pipe format data to parquet format , and thus you can achieve data compression . Now you should choose Redshift to copy your data as it is very huge. To manage your data, you should partition your data in S3 bucket and also divide your data across the redshift cluster
First of all you should make your choice upon Redshift or Athena based on your use case since they are two very diferent services - Redshift is an enterprise-grade MPP Data Warehouse while Athena is a SQL layer on top of S3 with limited performance. If performance is a key factor, users are going to execute unpredictable queries and direct and managing costs are not a problem I'd definitely go for Redshift. If performance is not so critical and queries will be predictable somewhat I'd go for Athena.
Once you select the technology you'll need to optimize your data in order to get the queries executed as fast as possible. In both cases you may need to adapt the data model to fit your queries better. In the case you go for Athena you'd also proabably need to change your file format to Parquet or Avro and review your partition strategy depending on your most frequent type of query. If you choose Redshift you'll need to ingest the data from your files into it and maybe carry out some tuning tasks for performance gain.
I'll recommend Redshift for now since it can address a wider range of use cases, but we could give you better advice if you described your use case in depth.
It depend of the nature of your data (structured or not?) and of course your queries (ad-hoc or predictible?). For example you can look at partitioning and columnar format to maximize MPP capabilities for both Athena and Redshift
you can change your PSV fomat data to parquet file format with AWS GLUE and then your query performance will be improved
Pros of Amazon Athena
- Use SQL to analyze CSV files16
- Glue crawlers gives easy Data catalogue8
- Cheap7
- Query all my data without running servers 24x76
- No data base servers yay4
- Easy integration with QuickSight3
- Query and analyse CSV,parquet,json files in sql2
- Also glue and athena use same data catalog2
- No configuration required1
- Ad hoc checks on data made easy0
Pros of Apache Kylin
- Star schema and snowflake schema support7
- Seamless BI integration5
- OLAP on Hadoop4
- Easy install3
- Sub-second latency on extreme large dataset3
- ANSI-SQL2