Để tham gia hai bảng Amazon DynamoDB
Ví dụ sau đây ánh xạ hai bảng Hive vào dữ liệu được lưu trữ trong Amazon DynamoDB. Sau đó nó gọi một tham gia trên hai bảng đó. Phép nối được tính trên cụm và trả về. Việc tham gia không diễn ra trong Amazon DynamoDB. Ví dụ này trả về danh sách khách hàng và giao dịch mua của họ cho khách hàng đã đặt nhiều hơn hai đơn đặt hàng.
CREATE EXTERNAL TABLE hive_purchases(customerId bigint, total_cost double, items_purchased array<String>)
STORED BY 'org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler'
TBLPROPERTIES ("dynamodb.table.name" = "Purchases",
"dynamodb.column.mapping" = "customerId:CustomerId,total_cost:Cost,items_purchased:Items");
CREATE EXTERNAL TABLE hive_customers(customerId bigint, customerName string, customerAddress array<String>)
STORED BY 'org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler' TBLPROPERTIES ("dynamodb.table.name" = "Customers",
"dynamodb.column.mapping" = "customerId:CustomerId,customerName:Name,customerAddress:Address");
Select c.customerId, c.customerName, count(*) as count from hive_customers c
JOIN hive_purchases p ON c.customerId=p.customerId
GROUP BY c.customerId, c.customerName HAVING count > 2;
Nguồn
2012-04-25 20:09:18
Bài tập về nhà này phải không? Nếu vậy, hãy gắn thẻ như vậy (không cố gắng để có nghĩa là, nhưng chỉ cần kiểm tra). – Kiril
Nó không phải là bài tập về nhà; Tôi đã cố gắng đưa ra câu hỏi mang tính xây dựng dễ nhất mà tôi có thể nghĩ đến sau khi dành một chút thời gian để hiểu mô hình NoSQL và phi quan hệ ... –