2013-02-03 17 views
6

Tôi tò mò muốn hiểu các phương pháp hay nhất để mã hóa hai loại dữ liệu rất cụ thể trong Avro: Dấu thời gian và Địa chỉ IP.Thực hành tốt nhất cho các loại dữ liệu cụ thể trong Avro

Tôi đã xem qua vé JIRA mở cho Dấu thời gian (https://issues.apache.org/jira/browse/AVRO-739), nhưng có vẻ như chủ đề đã được yên tĩnh một thời gian. Vì vậy, các phương pháp hay nhất để mã hóa Dấu thời gian trong Avro (tốt nhất là sử dụng hạ lưu trong ngữ cảnh MapReduce, Pig, Hive, Streaming).

Hơn nữa, tôi muốn biết những gì người khác đang làm để mã hóa địa chỉ IP thành Avro.

Trả lời

1

Tôi có một số kinh nghiệm về mã hóa các loại trong Avro. Trong trường hợp của tôi một yêu cầu lớn là truy cập dữ liệu thông qua Hive.

  • Để có dấu thời gian, tôi khuyên bạn nên sử dụng phao có dấu thời gian unix. Điều này được hỗ trợ bởi hầu hết các thư viện khác và hoạt động dễ dàng với Hive vì bạn có thể truyền tới dấu thời gian.

  • Đối với địa chỉ IP, tôi sẽ sử dụng mã hóa chuỗi. Tôi nghĩ rằng khả năng đọc của chuỗi khi sử dụng dữ liệu làm cho nó là loại tốt nhất để đi cho. Nếu bạn có các yêu cầu khác, chẳng hạn như giữ kích thước dữ liệu, có thể mã hóa nhị phân có thể tốt hơn cho bạn.