tải PDF
Sau đây là những câu hỏi thường gặp trong các cuộc phỏng vấn dành cho những người mới bắt đầu cũng như nhà phát triển HBase có kinh nghiệm.
1) Giải thích Hbase là gì?
Hbase là một hệ thống quản lý cơ sở dữ liệu hướng cột chạy trên HDFS (Hệ thống tệp phân phối Hadoop). Hbase không phải là một kho lưu trữ dữ liệu quan hệ và nó không hỗ trợ ngôn ngữ truy vấn có cấu trúc như SQL.
Trong Hbase, một nút chính quy định các máy chủ cụm và khu vực để lưu trữ các phần của bảng và vận hành công việc trên dữ liệu.
2) Giải thích tại sao sử dụng Hbase?
- Hệ thống lưu trữ dung lượng cao
- Thiết kế phân tán để phục vụ các bàn lớn
- Cửa hàng hướng theo cột
- Có thể mở rộng theo chiều ngang
- Hiệu suất cao và tính khả dụng
- Mục tiêu cơ bản của Hbase là hàng triệu cột, hàng nghìn phiên bản và hàng tỷ hàng
- Không giống như HDFS (Hệ thống tệp phân phối Hadoop), nó hỗ trợ các hoạt động CRUD ngẫu nhiên trong thời gian thực
3) Đề cập đến các thành phần chính của Hbase là gì?
- Zookeeper: Nó thực hiện công việc phối hợp giữa máy khách và Hbase Maser
- Hbase Master: Hbase Master giám sát Máy chủ Vùng
- RegionServer: RegionServer giám sát Vùng
- Vùng: Nó chứa trong kho dữ liệu bộ nhớ (MemStore) và Hfile.
- Bảng danh mục: Bảng danh mục bao gồm ROOT và META
4) Giải thích Hbase bao gồm những gì?
- Hbase bao gồm một tập hợp các bảng
- Và mỗi bảng chứa các hàng và cột giống như cơ sở dữ liệu truyền thống
- Mỗi bảng phải chứa một phần tử được xác định là Khóa chính
- Cột Hbase biểu thị một thuộc tính của một đối tượng
5) Đề cập đến bao nhiêu lệnh hoạt động trong Hbase?
Lệnh hoạt động trong Hbases có khoảng năm loại
- Được
- Đặt
- Xóa bỏ
- Quét
- Tăng
6) Giải thích WAL và Hlog trong Hbase là gì?
WAL (Write Ahead Log) tương tự như MySQL BIN log; nó ghi lại tất cả những thay đổi xảy ra trong dữ liệu. Nó là một tệp trình tự tiêu chuẩn của Hadoop và nó lưu trữ của HLogkey. Các khóa này bao gồm một số tuần tự cũng như dữ liệu thực tế và được sử dụng để phát lại dữ liệu chưa tồn tại sau sự cố máy chủ. Vì vậy, trước sự cố máy chủ, WAL hoạt động như một đường dây sống và lấy lại dữ liệu bị mất.
7) Khi nào bạn nên sử dụng Hbase?
- Kích thước dữ liệu rất lớn: Khi bạn có hàng tấn và hàng triệu bản ghi để hoạt động
- Thiết kế lại hoàn chỉnh: Khi bạn chuyển RDBMS sang Hbase, bạn coi nó như một bản thiết kế lại hoàn chỉnh sau đó chỉ cần thay đổi các cổng
- Các lệnh SQL-Less: Bạn có một số tính năng như giao dịch; nối bên trong, cột đã nhập, v.v.
- Đầu tư cơ sở hạ tầng: Bạn cần có đủ cụm để Hbase thực sự hữu ích
8) Trong Hbase họ cột là gì?
Họ cột bao gồm đơn vị lưu trữ vật lý cơ bản trong Hbase mà các tính năng như nén được áp dụng.
9) Giải thích phím hàng là gì?
Phím hàng được xác định bởi ứng dụng. Vì phím kết hợp được cố định trước bằng phím hàng, nó cho phép ứng dụng xác định thứ tự sắp xếp mong muốn. Nó cũng cho phép nhóm các ô một cách hợp lý và đảm bảo rằng tất cả các ô có cùng một phím hàng đều nằm trên cùng một máy chủ.
10) Giải thích việc xóa trong Hbase? Đề cập đến ba loại điểm đánh dấu bia mộ trong Hbase là gì?
Khi bạn xóa ô trong Hbase, dữ liệu không thực sự bị xóa nhưng một điểm đánh dấu bia mộ được thiết lập, làm cho các ô đã xóa ẩn. Hbase bị xóa thực sự bị xóa trong các giao dịch.
Có ba loại dấu bia mộ:
- Điểm đánh dấu xóa phiên bản: Để xóa, nó đánh dấu một phiên bản duy nhất của một cột
- Điểm đánh dấu xóa cột: Để xóa, nó đánh dấu tất cả các phiên bản của một cột
- Điểm đánh dấu xóa gia đình: Để xóa, nó đánh dấu tất cả các cột cho một họ cột
11) Giải thích cách Hbase thực sự xóa một hàng?
Trong Hbase, bất cứ thứ gì bạn ghi sẽ được lưu trữ từ RAM vào đĩa, những ghi vào đĩa này là nén không thể thay đổi được. Trong quá trình xóa trong Hbase, quá trình nén chính xóa điểm đánh dấu trong khi các giao dịch nhỏ thì không. Trong các thao tác xóa thông thường, nó dẫn đến việc xóa điểm đánh dấu bia mộ- những dữ liệu xóa này mà chúng thể hiện sẽ bị xóa trong quá trình nén.
Ngoài ra, nếu bạn xóa dữ liệu và thêm nhiều dữ liệu hơn, nhưng có dấu thời gian sớm hơn dấu thời gian của bia mộ, thêm nữa Gets có thể bị che bởi dấu xóa / điểm đánh dấu bia mộ và do đó bạn sẽ không nhận được giá trị được chèn cho đến sau lần nén lớn.
12) Giải thích điều gì sẽ xảy ra nếu bạn thay đổi kích thước khối của một họ cột trên cơ sở dữ liệu đã bị chiếm dụng?
Khi bạn thay đổi kích thước khối của họ cột, dữ liệu mới chiếm kích thước khối mới trong khi dữ liệu cũ vẫn nằm trong kích thước khối cũ. Trong quá trình nén dữ liệu, dữ liệu cũ sẽ có kích thước khối mới. Các tệp mới khi chúng được xóa, có kích thước khối mới trong khi dữ liệu hiện có sẽ tiếp tục được đọc chính xác. Tất cả dữ liệu sẽ được chuyển đổi sang kích thước khối mới, sau lần nén lớn tiếp theo.
13) Đề cập đến sự khác biệt giữa Hbase và Cơ sở dữ liệu quan hệ?
Hbase | Cơ sở dữ liệu quan hệ |
|
|
14) Lớp HBaseFsck là gì?
Có một tên công cụ được gọi lại có sẵn trong HBase, được thực hiện bởi lớp HBaseFsck. Nó cung cấp một số công tắc dòng lệnh ảnh hưởng đến hành vi của nó.
15) Các cấu trúc chính của HBase là gì?
Khóa hàng và khóa cột là hai cấu trúc khóa quan trọng nhất được sử dụng trong HBase
16) Thảo luận về cách bạn có thể sử dụng các bộ lọc trong Apache HBase
Bộ lọc Trong Vỏ HBase. Nó đã được giới thiệu trong Apache HBase 0.92 giúp bạn tiến hành lọc phía máy chủ để truy cập HBase qua vỏ HBase hoặc tiết kiệm.
17) Cấu trúc cú pháp hỗ trợ HBase như SQL có hay không?
Không, rất tiếc, hỗ trợ SQL cho HBase hiện không khả dụng. Tuy nhiên, bằng cách sử dụng Apache Phoenix, chúng ta có thể lấy dữ liệu từ HBase thông qua các truy vấn SQL.
18) Ý nghĩa của nén trong HBase là gì?
Tại thời điểm ghi nhiều dữ liệu đến, không thể đạt được hiệu suất tối ưu bằng cách có một tệp cho mỗi cửa hàng. HBase giúp bạn kết hợp tất cả các tập tin HF này để giảm số lượng hạt đĩa cho mỗi lần đọc. Quá trình này được gọi là Nén trong HBase.
19) Bạn sẽ triển khai các phép nối trong HBase như thế nào?
HBase, không hỗ trợ tham gia trực tiếp nhưng sử dụng MapReduce các truy vấn tham gia công việc có thể được thực hiện bằng cách truy xuất dữ liệu với sự trợ giúp của các bảng HBase khác nhau.
20) Giải thích JMX liên quan đến HBSE
Java Management Extensions hay JMX là trạng thái xuất của các ứng dụng Java là tiêu chuẩn cho chúng.
21) Việc sử dụng MasterServer là gì?
Master sever cũng giúp bạn chỉ định một khu vực cho máy chủ khu vực. Nó cũng giúp bạn xử lý cân bằng tải mà chúng tôi sử dụng MasterServer.
22) Xác định thời hạn tiết kiệm
Apache Thrift được viết bằng C ++. Nó cung cấp trình biên dịch lược đồ cho các ngôn ngữ lập trình khác nhau như C ++, Perl, PHP, Python, Ruby, v.v.
23) Tại sao sử dụng lớp HColumnDescriptor?
Chi tiết liên quan đến họ cột như cài đặt nén, Số phiên bản, được lưu trữ trong HColumnDescriptor.
24) Tế bào trong HBase là gì?
Một ô trong HBase là đơn vị nhỏ nhất của bảng Hbase. Nó giúp bạn lưu giữ một phần dữ liệu dưới dạng một tuple {hàng, cột, phiên bản}
25) Bộ lọc Bloom là gì?
HBase hỗ trợ Bộ lọc Bloom giúp bạn cải thiện thông lượng tổng thể của cụm. Bộ lọc HBase Bloom là một cơ chế tiết kiệm không gian để kiểm tra xem một HFile có bao gồm một hàng hoặc ô cột hàng nhất định hay không.
26) Cho tôi biết về các loại Hoạt động của HBase?
Trả lời. Hai loại Hoạt động HBase là:
- Đọc hoạt động
- Viết hoạt động
27) Công dụng của HBase HMaster là gì?
Trách nhiệm chính của thạc sĩ là:
- Điều phối các máy chủ khu vực
- Chức năng quản trị
28) Bạn có thể sử dụng kỹ thuật nào trong HBase để truy cập HFile trực tiếp mà không cần sự trợ giúp của HBase?
Để truy cập HFile trực tiếp mà không cần sử dụng HBase, chúng tôi sử dụng phương thức HFile.main ().
29) Máy chủ khu vực có thể được đặt trên tất cả các DataNodes không?
Có, Máy chủ Vùng chạy trên cùng một máy chủ như một DataNodes
30) Đặt tên cho bộ lọc chấp nhận kích thước trang làm tham số trong HBase
Bộ lọc có tên PageFilter chấp nhận kích thước trang làm tham số.
Tài liệu này đã được soạn bằng các công cụ chuyển đổi HTML tức thì.
- Kế tiếp