Monday, July 8, 2019

AWS Athena

用SQL直接在S3中轻松分析数据。类似于Redshift,文件存在硬盘,然后写SQL去query。当然Athena也并不需要source一定要在S3,可以直接写SQL创表。

功能
Athena是无服务器的,因此您无需设置或管理任何基础设施,且只需为您运行的查询付费
Athena分析在S3中存储的非结构化、半结构化和结构化数据包括CSV、JSON 或列式数据格式
Athena 可与 Amazon QuickSight 集成,轻松实现数据可视化。

Athena采用称作基于读取的架构的方法,这意味着,架构将在您执行查询时投影到您的数据上。
这样就无需加载或转换数据。
Athena 不会修改您在 Amazon S3 中的数据。

底层API
用Apache Hive实现
jobId改成int会出错

CREATE EXTERNAL TABLE IF NOT EXISTS default.docu_jobs (
  `jobId` string,
  `title` string,
  `url` string,
  `location` string,
  `runDate` string,
  `createdTime` string
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES (
   "separatorChar" = ",",
   "quoteChar"     = "\"",
   "skip.header.line.count" = "1" 
) LOCATION 's3://jctech-data/docu/'
TBLPROPERTIES ('has_encrypted_data'='false');


Ref
官方文档
https://aws.amazon.com/blogs/aws/amazon-athena-interactive-sql-queries-for-data-in-amazon-s3/

No comments:

Post a Comment