我在AWS上阅读了文档,但有一点仍不清楚。
S3是EMR集群的主要存储吗?或者数据是否在EC2中,S3只是一个副本?
在doc:
中" Amazon EMR上的HBase提供了直接您的HBase数据到Amazon Simple Storage Service(Amazon S3)的能力"
"在Amazon EMR上运行的Hadoop集群使用EC2实例作为主节点和从节点的虚拟Linux服务器,用于批量存储输入的Amazon S3 &#34 ;
"提供启动新群集的功能,并使用之前HBase备份中的数据填充"
我的用例:使用HBASE存储数据TB。通过启动emr集群,每月仅更新我的表三到两次。表存储在S3上。
答案 0 :(得分:0)
您的用例中的关键问题是如何在更新之间提供数据。
如果您的目标是始终通过Hbase接口访问数据,那么Hbase群集(如EMR)将需要不断启动并运行。 Hbase目前仅支持HDFS作为Hfiles的实时存储。 S3存储在群集外部,因此可以用作备份或其他数据入口/出口的目标。
答案 1 :(得分:0)
从EMR 5.2.0起,您可以运行HBase 1.3.0及更高版本directly on AWS S3。
该设置取代hfds://
文件中的hbase-site.xml
协议:
"hbase.rootdir": "s3://my-bucket/hbase"
不需要更改HBase客户端。该配置消除了管理HDFS NameNode和DataNode的需要,从而简化了操作。