rmvTableへのHive外部表のマッピング: 非セキュア・ストア

非セキュア・ストアをデプロイするための最初のステップを実行し、そのストアにrmvTableという名前の表を作成してデータを移入し、Oracle NoSQL Databaseと相互作用するようにHiveクライアント環境を構成したと仮定すると、次のHiveコマンドを実行することで、そのOracle NoSQL Database表にマップする外部Hive表を作成できます。

CREATE EXTERNAL TABLE IF NOT EXISTS rmvTable
    (zipcode STRING, lastname STRING, firstname STRING, ssn BIGINT, 
        gender STRING, license BINARY, phoneinfo MAP<STRING, STRING>,
        address STRUCT<number:INT, street:STRING, 
            unit:INT, city:STRING, zip:INT>,
        vehicleinfo ARRAY<STRUCT<type:STRING, make:STRING, 
            model:STRING, class:STRING, color:STRING,  
            value:FLOAT, tax:DOUBLE, paid:BOOLEAN>>)
    COMMENT 'Hive mapped to NoSQL table: rmvTable'
    STORED BY 'oracle.kv.hadoop.hive.table.TableStorageHandler'
    TBLPROPERTIES 
        ("oracle.kv.kvstore" = "example-store", 
            "oracle.kv.hosts"= "kv-host-1:5000,kv-host-2:5000,kv-host-3:5000", 
            "oracle.kv.tableName" = "rmvTable", 
            "oracle.kv.hadoop.hosts" = "dn-host-1,dn-host-2,dn-host-3");

前述のコマンドは、必要なデータ・モデル・マッピングを適用して、oracle.kv.tableNameプロパティを介して指定されたOracle NoSQL Database表の対応するフィールドと型が一致する列を持つrmvTableという名前のHive表を作成します。

必須ではありませんが、作成されるHive表には、ストアでマップされる表と同じ名前が付きます。