2013-08-30 1 views
0

Hadoop/Hive를 처음 사용했습니다. 하이브에 VIEWS 관련 질문이 있습니다.하이브의 뷰에 대한 액세스 제공

일부 사용자에게는 테이블의 특정 행에 액세스하고 일부 사용자에게는 테이블의 특정 열에 대한 액세스 권한을 부여해야한다는 요구 사항이 있습니다. 하이브에 VIEWS를 만들 수 있다는 것을 알고 있습니다. 그러나 기본 테이블에 대한 액세스 권한을 부여하지 않고 VIEWS에 대해서만 GRANT 문을 사용하여 액세스를 제공 할 수 있습니까?

이것이 가능하지 않은 경우 하이브에 열 또는 행 수준 액세스 만 제공하는 다른 방법이 있습니까?

알려 주시기 바랍니다. 도움을 주셔서 감사합니다.

+0

AFAIK, 기본 액세스 권한을 부여하지 않고 원하는 액세스 권한이있는 VIEW를 만들 수 없습니다. 꼬집어서 소금과 함께 먹어야합니다. – Tariq

답변

0

먼저 하이브가 실제로 무엇인지 이해하는 것이 중요합니다. Hive는 MapReduce 작업에 사용되는 SQL 문을 컴파일러 (다소간의)로만 구현하여 데이터 저장소 계층을 제어합니다. 따라서 하이브에는 액세스 관리와 같은 개념이 없습니다.

또한 Hive의 "table"은 파일이있는 HDFS 폴더라는 것을 이해해야합니다. 즉, 표준 HDFS 액세스 관리 도구 세트를 사용하여 테이블 단위로 액세스를 관리 할 수 ​​있습니다.

당신이 할 수있는 최선의 방법은 HDFS 레벨의 액세스를 데이터베이스로 제한하고 데이터의 일부를 "공개 테이블"로 내보내 권한이없는 사용자가 읽을 수있게하는 것입니다.