Cod*_*dex 6 amazon-s3 amazon-ec2 amazon-web-services presto
我正在尝试在Amazon S3存储桶上使用Presto,但在互联网上找不到太多相关信息.
我在微型实例上安装了Presto,但我无法弄清楚如何连接到S3.有一个存储桶,里面有文件.我有一个运行的hive Metastore服务器,我已在presto hive.properties中配置它.但是当我尝试在hive中运行LOCATION命令时,它无法正常工作.
IT抛出一个错误,说无法找到文件方案类型s3.
而且我也不知道为什么我们需要运行hadoop但没有hadoop蜂巢不会运行.对此有任何解释吗?
Presto使用Hive Metastore将数据库表映射到其底层文件.这些文件可以存在于S3上,并且可以以多种格式存储 - CSV,ORC,Parquet,Seq等.
Hive Metastore通常通过HQL(Hive查询语言)填充,通过发出DDL语句,例如引用包含数据的底层文件CREATE EXTERNAL TABLE ...的LOCATION ...子句.
为了使Presto连接到Hive Metastore,您需要编辑hive.properties文件(EMR将其放入/etc/presto/conf.dist/catalog/)并将hive.metastore.uri参数设置为适当的Hive Metastore服务的thrift服务.
如果您选择Hive和Presto,Amazon EMR集群实例将自动为您配置,因此它是一个很好的起点.
如果您想在独立的ec2实例上进行测试,那么我建议您首先关注如何使用Hadoop基础架构来实现功能配置单元服务.您应该能够定义驻留在hdfs文件系统上的本地表.Presto补充了hive,但确实需要一个正常运行的hive设置,presto的本地ddl语句不像hive一样功能完整,因此你可以直接从hive创建大多数表.
或者,你可以为mysql或postgresql数据库定义Presto连接器,但它只是一个jdbc传递我不认为你会获得太多.
| 归档时间: |
|
| 查看次数: |
7230 次 |
| 最近记录: |