[ 
https://issues.apache.org/jira/browse/HIVE-18685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16386396#comment-16386396
 ] 

Alan Gates commented on HIVE-18685:
-----------------------------------

{quote}If you cannot address table using catalog.database.table how would a 
user be able to issue cross catalog queries. eg. join between tables across 
catalogs?
{quote}
My response to Eugene above was poorly worded; I was describing how it will 
work after the first patch or two rather than eventually.  I have gone back and 
edited my comment to clarify it.  I do plan to allow SQL level catalog access 
eventually.  I just plan to add it at the metastore level first (and hard wire 
which catalog a user is connected to in the session).
{quote}Does it mean that all databases/tables created under a catalog default 
to a location of catalog?
{quote}
Yes.
{quote}As a corollary to this, if a user gives a location which doesn't make 
sense with respect to the catalog's location (catalogs being the logical 
separation of systems) should we have hooks which can allow us to enforce the 
location of the catalogs?
{quote}
Do we do that now if a table is created outside the default database location?  
Do we need anymore than the current hooks interfaces that would allow a hook to 
switch the database or table location at creation time?  I don't have a problem 
with this feature but I'm not ready to sign up to implement it as part of the 
initial work either.
{quote}Should the catalog have a owner as well? Who is allowed to create/drop 
the catalog?
{quote}
I am asserting that we should not have an owner.  Instead, only admins will be 
allowed to add or drop catalogs.  My reasoning for this is that I would like to 
be able to tie the security model to the catalog.  For example, one catalog 
might use Ranger for security and another Sentry.  This also has the advantage 
that if we extend catalogs to allow import of metadata from foreign systems 
(e.g. HBase or Druid) Hive can rely on the security of that foreign system for 
that catalog.  

If we support owners for catalogs but tie the security to the catalog, then we 
have to build a whole supplementary security system just for catalogs.  By 
keeping catalog operations just to admins the requirements on the catalog level 
security system are much simpler.

> Add catalogs to metastore
> -------------------------
>
>                 Key: HIVE-18685
>                 URL: https://issues.apache.org/jira/browse/HIVE-18685
>             Project: Hive
>          Issue Type: New Feature
>          Components: Metastore, Parser, Security, SQL
>    Affects Versions: 3.0.0
>            Reporter: Alan Gates
>            Assignee: Alan Gates
>            Priority: Major
>         Attachments: HMS Catalog Design Doc.pdf
>
>
> SQL supports two levels of namespaces, called in the spec catalogs and 
> schemas (with schema being equivalent to Hive's database).  I propose to add 
> the upper level of catalog.  The attached design doc covers the use cases, 
> requirements, and brief discussion of how it will be implemented in a 
> backwards compatible way.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to