알고 쓰자! HBase | Devon 2012

12,064 views

Published on

0 Comments
34 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
12,064
On SlideShare
0
From Embeds
0
Number of Embeds
5,419
Actions
Shares
0
Downloads
204
Comments
0
Likes
34
Embeds 0
No embeds

No notes for slide

알고 쓰자! HBase | Devon 2012

  1. 1. 알고 쓰자! HBase 데이터기술팀 유응섭
  2. 2. HBase의 특징부족한 기능에 대한 보완 주의사항
  3. 3. HBase?
  4. 4. HBase? Hadoop Databasefor Real-time Services
  5. 5. HBase는 이런 점이 좋아요
  6. 6. Scalable노드 수에 비례해서 읽기 쓰기 성능 증가 수 백대의 노드 Peta Byte 수준의 데이터
  7. 7. Strong Consistency Not Eventual Consistency클라이언트는 항상 최신 데이터를 엑세스 메시징 서비스 등에 적합
  8. 8. Ordered Key-value Row Key, Column Key Range Scan 가능
  9. 9. 이런 기능은 부족해요
  10. 10. 이런 기능은 부족해요 복잡한 오퍼레이션 Secondary Index …
  11. 11. 부족한 기능은어떻게 보완할까요?
  12. 12. Coprocessor
  13. 13. CoprocessorEndpoint = RDBMS Procedure Observer = RDBMS Trigger 서버 프로세스 내에서 동작
  14. 14. Endpoint Parallel ExecutionMapReduce와 유사한 방식
  15. 15. Observer서버에서 발생하는 이벤트에 반응 pre/post hook 가능
  16. 16. 부족한 기능에 대한 보완Endpoint: Group-by Operator Observer: Secondary Index
  17. 17. Group-by Operator select c1, c2, count(v1) from tab group by c1, c2;Configuration conf = HBaseConfiguration.create();GroupByClient client = new GroupByClient(conf);long queryID = client.aggregate("tab", "d:c1,d:c2", "count(d:v1)");GroupByClient.printResult(queryID);
  18. 18. Group-by Operator
  19. 19. Group-by Operator Performance 9 Region Servers. 24GB RAM. 4Cores(with HT). 4 HDDs 1억 건. 8.6GB(Snappy. 압축율 약 28%)(단위: 초) 800 640 600 400 GroupBy Count(shell) 200 38 0 Duration
  20. 20. Secondary Index
  21. 21. Secondary Index Dual Write
  22. 22. Secondary Index Dual Write Observer를 이용한 구현 클라이언트는 코드 수정이 필요 없음부하를 많이 주었을 때 문제 발생해서 보류
  23. 23. Secondary Index Dual WriteHIndexedTable extends HTable Override put/scan method
  24. 24. Secondary Index IndexManager
  25. 25. Secondary Index INDEX_META table
  26. 26. Secondary Index Scan Performance 9 Region Servers. 24GB RAM. 4Cores(with HT). 4 HDDs 1억 건. 8.6GB(Snappy. 압축율 약 28%)(단위: 초) 400 308 300 200 172 100 7 1 0 Filtered Scan 1% 0.10% 0.01% (w/o index)
  27. 27. HBase를 쓸 때주의할 점은 뭐가 있나요?
  28. 28. Durability
  29. 29. DurabilityHBase에 성공적으로 저장된 데이터는 유실 되어서는 안 된다
  30. 30. DurabilityHBase는 HDFS에 데이터파일을 저장HDFS는 kernel buffer로 flush만 함 kernel buffer는 정전 시 유실 됨
  31. 31. Durability 다수 노드 장애 시데이터 복구 불가능할 수 있음UPS, queue & snapshot
  32. 32. Durability다음 HDFS버전에서 해결될 예정
  33. 33. 감사합니다.
  34. 34. Q&A 유응섭 rspeed@daumcorp.com

×