Databricks: Blog
85

Sản phẩm

Databricks ra mắt tính năng Variant: Đơn giản hóa xử lý dữ liệu bán cấu trúc

(giờ Việt Nam)

Tóm tắt AI

Databricks chính thức phát hành Variant, giúp tăng tốc và tối ưu hóa quy trình nhập liệu cho các định dạng JSON, XML và CSV, loại bỏ sự phức tạp trong quản lý dữ liệu bán cấu trúc.

Bản dịch AI

Ingest semi-structured data faster and more efficiently with Variant - Now Generally Available

Trong nhiều năm, việc nạp dữ liệu bán cấu trúc như JSON, XML hoặc CSV đồng nghĩa với một sự đánh đổi khó khăn. Các đội ngũ dữ liệu có thể xây dựng các đường ống ETL để định hình lược đồ (schematize) cho dữ liệu nhằm truy vấn nhanh nhưng phải hy sinh tính linh hoạt, hoặc lưu trữ dữ liệu dưới dạng chuỗi (string) để duy trì sự linh hoạt nhưng phải trả giá bằng hiệu suất truy vấn chậm. Để giải quyết sự đánh đổi này, chúng tôi đã hợp tác với cộng đồng Delta và Spark để giới thiệu kiểu dữ liệu Variant, đồng thời mang nó đến với cộng đồng Parquet và Iceberg nhằm thống nhất lakehouse thành một tiêu chuẩn mở duy nhất cho dữ liệu bán cấu trúc.

Chúng tôi rất vui mừng thông báo rằng Variant hiện đã chính thức khả dụng (Generally Available) trên Databricks. Lần ra mắt này bao gồm cả tính năng Variant Shredding (cũng đã khả dụng), một tối ưu hóa hiệu suất sử dụng Predictive Optimization để tự động cải thiện tốc độ truy vấn trên dữ liệu Variant. Với Variant, các đội ngũ có thể linh hoạt nạp dữ liệu bán cấu trúc mà không làm ảnh hưởng đến hiệu suất truy vấn ở hạ nguồn.

Nạp dữ liệu linh hoạt ở quy mô lớn

Hơn 5.000 đội ngũ đang ghi dữ liệu Variant bằng Databricks. Những đội ngũ này thường sử dụng Variant để nạp các sự kiện từ các nguồn streaming như Kinesis hoặc Event Hub, các payload JSON từ API và dữ liệu không lược đồ (schemaless) từ các cơ sở dữ liệu như PostgreSQL và MongoDB.

Variant đặc biệt hữu ích trong việc xử lý các thay đổi lược đồ từ nguồn nạp dữ liệu. Ví dụ, một ứng dụng ở thượng nguồn có thể thay đổi các kiểu API của nó. Điều này khiến các đội ngũ ở hạ nguồn phải vất vả cập nhật các đường ống liên quan, thực hiện backfill dữ liệu hiện có và xử lý quá trình chuyển đổi. Tệ hơn nữa, hầu hết các doanh nghiệp đều có các nền tảng dữ liệu và đội ngũ ứng dụng riêng biệt, khiến những thay đổi lược đồ này trở nên khó dự đoán. Với Variant, người dùng có thể nạp tất cả dữ liệu bán cấu trúc của họ một cách linh hoạt vào các bảng.

image3.png

Variant loại bỏ chi phí ban đầu khi làm việc với dữ liệu bán cấu trúc. Việc xây dựng các đường ống để định hình lược đồ dữ liệu tốn rất nhiều thời gian, đòi hỏi các kỹ sư dữ liệu phải chứng minh được hiệu quả đầu tư thời gian của họ. Variant thay đổi hoàn toàn mô hình này – các đội ngũ có thể dễ dàng đưa dữ liệu vào trước, sau đó mới xác định giá trị sử dụng của nó cho phần còn lại của doanh nghiệp.

Truy vấn nhanh hơn, thông minh hơn với Predictive Optimization

Người dùng Databricks thực hiện hơn 500 triệu truy vấn Variant mỗi tháng trên hơn 160 TB dữ liệu Variant. Databricks giúp việc đọc Variant nhanh như đọc dữ liệu đã định hình lược đồ trên các bảng được quản lý. Sử dụng Shredding, Variant lưu trữ các trường phổ biến dưới dạng cột trong các tệp Parquet cơ sở. Predictive Optimization sẽ học hỏi từ khối lượng công việc và mô hình truy vấn độc nhất của người dùng, đồng thời sử dụng học máy để xác định các trường được phân tách (shredded) quan trọng nhất và thu thập số liệu thống kê về chúng để cải thiện khả năng bỏ qua tệp (file skipping). Kết quả là, Databricks chỉ quét các tệp và cột cần thiết cho một truy vấn, tránh các thao tác không cần thiết và tăng cường hiệu suất.

Variant shredding mang lại tốc độ đọc nhanh hơn gần 4 lần so với Variant không được phân tách — và nhanh hơn 30 lần so với việc lưu trữ JSON dưới dạng chuỗi:

image2.png

Với Variant, Databricks đang mở khóa hiệu suất cực nhanh ở quy mô lớn:

Chúng tôi cần truy vấn các nhật ký bảo mật không chỉ là các bản ghi phẳng đơn giản, mà là các cấu trúc JSON phức tạp khó tìm kiếm hiệu quả. Hỗ trợ Variant của Databricks, kết hợp với shredding, cho phép truy vấn hiệu suất cao các thuộc tính lồng sâu — ngay cả ở quy mô petabyte.

Panther

— Russell Leighton, Kiến trúc sư trưởng

Sử dụng Variant trong Databricks

Với Databricks, bạn có thể sử dụng Variant trên toàn bộ ngăn xếp dữ liệu của mình.

Người dùng của chúng tôi thường sử dụng hai công cụ để nạp dữ liệu bán cấu trúc dưới dạng Variant:

Cả hai phương pháp nạp dữ liệu đều ghi dữ liệu vào Delta hoặc Iceberg, cho phép bất kỳ client nào cũng có thể tương tác với dữ liệu trong lakehouse. Để đơn giản hóa việc thiết lập, hãy sử dụng Genie Code trong Lakeflow Pipelines Editor để dễ dàng tạo các đường ống nạp dữ liệu Auto Loader bằng ngôn ngữ tự nhiên.

Delta or Iceberg

Sau đó, các đội ngũ có thể trực tiếp sử dụng dữ liệu Variant trong Lakehouse. Vì dữ liệu được phân tách thông minh trong quá trình nạp, các bảng điều khiển (dashboard) và báo cáo có thể truy vấn dữ liệu trực tiếp nhanh như dữ liệu có cấu trúc.

Trong tương lai gần, chúng tôi dự định mở rộng hỗ trợ Variant hơn nữa, bao gồm Liquid Clustering theo các trường Variant, mở rộng các hàm SQL và tích hợp thêm nhiều tính năng khác.

Bắt đầu với Variant ngay hôm nay

Với Variant, bạn không còn phải đánh đổi giữa tính linh hoạt và hiệu suất khi sử dụng dữ liệu bán cấu trúc. Databricks sử dụng Predictive Optimization, tính năng theo dõi khối lượng công việc và mô hình truy vấn, để tự động ghi dữ liệu Variant nhằm đạt hiệu suất tốt nhất trên các sản phẩm.

Bắt đầu với Variant rất dễ dàng – hãy thử tại đây.

DatabricksDữ liệuData EngineeringAICông nghệ
Đọc bài gốc

Bài viết được AI dịch và tổng hợp tự động từ Databricks: Blog. Liên kết bài gốc ở phía trên. Dữ liệu đồng bộ qua API công khai được ghi nguồn tại AI HOT (canonical) ↗. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.