Tác giả: T.M.L

Giới thiệu về Bloom filter

Giới thiệu về Bloom filter

Bloom filter là gì? Bloom filter là 1 cấu trúc dữ liệu xác suất dùng để check xem 1 phần tử có thuộc 1 tập dữ liệu hay không một cách nhanh chóng và tiết kiệm bộ nhớ. Bloom filter chỉ hỗ trợ 2 phương thức tương tác là: Test: Test xem 1 phần tử có thuộc 1 tập dữ liệu đã add vào bloom filter hay không. Nếu kết quả trả về là “không” thì kết quả này chính xác 100%. Tuy nhiên khi kết quả trả về là “có” thì xác suất kết quả này không chính xác ... »

Lập trình bất đồng bộ trong Scala với Future

Lập trình bất đồng bộ trong Scala với Future

Scala có thể sử dụng được tất cả các thư viện của Java nên ta hoàn toàn có thể sử dụng các tính năng về lập trình song song của Java (Thread, Runnable…) để phục vụ cho việc xử lý bất đồng bộ khi code Scala. Tuy nhiên, bản thân Scala cũng có những tính năng phục vụ riêng cho việc lập trình bất đối xứng với API ở mức abstract hơn, đồng thời dễ dàng tích hợp với các API mà Scala cung cấp. Một tính năng có sẵn trong standard library của Scala là Future, ngoài ra còn ... »

Tăng hiệu năng khi sử dụng join trong Apache Spark

Tăng hiệu năng khi sử dụng join trong Apache Spark

Trong Apache Spark, khi muốn kết hợp 2 RDD (Resilient Distributed Dataset) với định dạng (key, value), tổng hợp những dữ liệu có cùng key rồi tính toán trên những giá trị của dữ liệu đó để có 1 data set cuối cùng cũng với định dạng (key, value) thì sử dụng hàm join là một trong những sự lựa chọn thông dụng nhất. Tuy nhiên, khác với khi sử dụng hàm join trong SQL hay các hệ quản trị cơ sỡ dữ liệu không phân tán khác, vì Spark theo cấu trúc phân tán (data được chia thành các ... »

Tìm hiểu về Implicit trong Scala

Tìm hiểu về Implicit trong Scala

Với nhiều bạn mới tìm hiểu về Scala thì đọc code trong một số thư viện hoặc chương trình opensource thì sẽ thấy xuất hiện rất nhiều keyword implicit. Vậy implicit là gì, đóng vai trò gì trong ngôn ngữ Scala. Chúng ta hãy cùng điểm qua 2 khái niệm implicit thông dụng và thường gặp nhất trong Scala 1. Implicit parameter Chúng ta hãy cùng thử xem xét đoạn code sau: def payLoan(amount: Float)(implicit interestRate: Float): Float = amount + amount * interestRate payLoan(2201100)(3.0F) // Success payLoan(2201100) // Will cause error Ai cũng dễ dàng đoán được là ... »