hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Edward Capriolo (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HIVE-5317) Implement insert, update, and delete in Hive with full ACID support
Date Tue, 19 Nov 2013 05:07:23 GMT

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

Edward Capriolo commented on HIVE-5317:
---------------------------------------

{quote}
"In theory the base can be in any format, but ORC will be required for v1"
{quote}
This is exactly what I talk about when I talk about fragmentation. Hive can not be a system
where features only work when using a specific input format. The feature must be applicable
to more then just the single file format. Taging "other file formats" in the "LATER" bothers
me. Wouldn't the community have more utility of something that worked against a TextFormat
was written first, then later against other formats. I know about the "stinger initiative",
developing features that only work with specific input formats does not seem like the correct
course of action. It goes against our core design principals:

https://cwiki.apache.org/confluence/display/Hive/Home

"Hive does not mandate read or written data be in the "Hive format"---there is no such thing.
Hive works equally well on Thrift, control delimited, or your specialized data formats. Please
see File Format and SerDe in the Developer Guide for details."


> Implement insert, update, and delete in Hive with full ACID support
> -------------------------------------------------------------------
>
>                 Key: HIVE-5317
>                 URL: https://issues.apache.org/jira/browse/HIVE-5317
>             Project: Hive
>          Issue Type: New Feature
>            Reporter: Owen O'Malley
>            Assignee: Owen O'Malley
>         Attachments: InsertUpdatesinHive.pdf
>
>
> Many customers want to be able to insert, update and delete rows from Hive tables with
full ACID support. The use cases are varied, but the form of the queries that should be supported
are:
> * INSERT INTO tbl SELECT …
> * INSERT INTO tbl VALUES ...
> * UPDATE tbl SET … WHERE …
> * DELETE FROM tbl WHERE …
> * MERGE INTO tbl USING src ON … WHEN MATCHED THEN ... WHEN NOT MATCHED THEN ...
> * SET TRANSACTION LEVEL …
> * BEGIN/END TRANSACTION
> Use Cases
> * Once an hour, a set of inserts and updates (up to 500k rows) for various dimension
tables (eg. customer, inventory, stores) needs to be processed. The dimension tables have
primary keys and are typically bucketed and sorted on those keys.
> * Once a day a small set (up to 100k rows) of records need to be deleted for regulatory
compliance.
> * Once an hour a log of transactions is exported from a RDBS and the fact tables need
to be updated (up to 1m rows)  to reflect the new data. The transactions are a combination
of inserts, updates, and deletes. The table is partitioned and bucketed.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message