Logo Zephyrnet

Kho dữ liệu: vũ khí mới trong bộ công cụ khoa học dữ liệu của bạn

Ngày:

Kho dữ liệu: vũ khí mới trong bộ công cụ khoa học dữ liệu của bạn

Data Vault là một phương pháp lập mô hình dữ liệu hiện đại để thu thập dữ liệu (lịch sử) theo cách có thể kiểm tra và điều khiển được về mặt cấu trúc. Mặc dù rất hữu ích cho các kỹ sư dữ liệu nhưng Data Vault cũng hỗ trợ Khoa học dữ liệu trong thực tế.


By Bas Vlaming, Nhà khoa học dữ liệu tại Picnic Technologies.

Picnic là một cửa hàng tạp hóa trực tuyến, nơi chúng tôi mong muốn đưa hoạt động mua sắm tạp hóa và mô hình Milkman truyền thống vào thế kỷ 21. Đặt hàng dễ dàng và thuận tiện, tập trung vào dịch vụ cá nhân, giao hàng tận nhà bằng xe điện và chuỗi cung ứng đúng lúc, hiệu quả, được tối ưu hóa cao. Nói tóm lại, chúng tôi là câu trả lời của công nghệ cho cửa hàng tạp hóa.

Chúng tôi không chỉ chạy một ứng dụng và giao công việc thực tế cho các công ty bên thứ ba. Thay vào đó, chúng tôi cũng điều hành một chuỗi cung ứng đầy đủ và một đội giao hàng với các hệ thống chuyên dụng và có nền tảng công nghệ để hỗ trợ tất cả những điều này. Chúng tôi là một công ty công nghệ chính thức. Với tư cách là Nhà khoa học dữ liệu, thách thức là giải quyết các vấn đề (kinh doanh) phức tạp và đưa ra các dự đoán có liên quan dựa trên tất cả dữ liệu được theo dõi và tạo ra. Rất may, chúng tôi có một nhóm Kỹ thuật dữ liệu tuyệt vời. Chi tiết trong bài viết blog này của Iliana Iankoulova và của mình theo dõi, việc triển khai kết hợp thành công Data Vault và mô hình chiều kiểu Kimball đã sẵn sàng. Điều này cho phép cấu trúc và độ tin cậy trong hàng triệu điểm dữ liệu đang được thu thập.

Nhưng trước tiên, hãy để tôi giới thiệu bản thân mình. Tên tôi là Bas Vlaming và tôi là một trong những Nhà khoa học dữ liệu may mắn tại Picnic, người được tương tác với kho tàng dữ liệu này hàng ngày. Chúng tôi hiện là một nhóm gồm 7 Nhà khoa học dữ liệu làm việc toàn thời gian và chúng tôi muốn coi mình là nhà khoa học dữ liệu toàn diện: chúng tôi khám phá dữ liệu, thiết kế mô hình và quy trình, cho đến tận việc thực sự triển khai các giải pháp của mình trong sản xuất. Với tư cách là một nhóm, chúng tôi làm việc trên một nhiều chủ đề và với nhiều nhóm kinh doanh khác nhau. Chúng tôi làm việc với nhóm Phân phối để cải thiện ước tính về kế hoạch chuyến đi và thời gian chúng ta cần giao hàng tạp hóa. Chúng tôi xây dựng và cải tiến các mô hình dự báo, từ dự báo phân phối cấp cao đến tỷ lệ thâm nhập theo bài viết cụ thể. Chúng tôi giúp đỡ nhóm Thành công của Khách hàng để tự động phân loại tin nhắn đến và tối ưu hóa quy trình làm việc của họ. Chúng tôi làm việc với nhóm Thanh toán để chống gian lận. Chúng tôi cá nhân hóa trải nghiệm ứng dụng. Chúng tôi xây dựng bộ công cụ của riêng chúng tôi và các mô-đun Python để hỗ trợ quy trình làm việc của chúng tôi. Vân vân và vân vân.

Trong tất cả các chủ đề này và trong Khoa học dữ liệu nói chung, dữ liệu chất lượng là thứ bụi kỳ diệu cần có để xây dựng các mô hình đáng tin cậy. Rất may, dữ liệu của chúng tôi (hầu như luôn luôn) có sẵn, có cấu trúc rõ ràng và ở trạng thái nguyên vẹn. Như được mô tả trong blog của Iliana, nhóm Kỹ thuật dữ liệu đã sử dụng Snowflake (1) để triển khai kiến ​​trúc Data Vault trên phần phụ trợ, kết hợp với (2) mô hình chiều kiểu Kimball giúp hiển thị các khái niệm kinh doanh cho người dùng doanh nghiệp. Trong bài đăng trên blog này, tôi muốn tìm hiểu cách kiến ​​trúc Kỹ thuật dữ liệu và cách triển khai Kho dữ liệu của nó cho phép nhóm Khoa học dữ liệu tận dụng tối đa dữ liệu của chúng tôi. Đặc biệt, nó cho phép:

  1. Mở khóa dữ liệu lịch sử chất lượng cao - ngay cả đối với các định nghĩa và khái niệm kinh doanh mới
  2. Du hành thời gian để tiếp cận các trạng thái lịch sử của sự thật
  3. Mở rộng mô hình thứ nguyên sang hệ thống gần như thời gian thực
  4. Truy cập nhanh và khám phá số lượng mới

1. Khai thác dữ liệu lịch sử chất lượng cao — ngay cả đối với các định nghĩa và khái niệm kinh doanh mới

Trong hầu hết các doanh nghiệp, các khái niệm được sử dụng ở cả phía phụ trợ và phía doanh nghiệp sẽ thay đổi theo thời gian. Picnic cũng không ngoại lệ. Khi chúng tôi mở rộng từ Hà Lan sang Đức, chúng tôi yêu cầu thiết lập hoàn toàn khác liên quan đến cách chúng tôi xác định 'khu vực giao hàng'. Khoảng hai năm trước, chúng tôi đã thêm chức năng rất được mong muốn để thêm các sản phẩm bổ sung vào đơn hàng hiện có, điều đó có nghĩa là khái niệm về đơn hàng phải được thiết kế lại. Khi chúng tôi bắt đầu thu hồi chai lọ và rác tái chế, chúng tôi cần có khả năng xử lý các khoản tiền gửi. Những loại thay đổi này thường có tác động dây chuyền trên phạm vi rộng.

Tuy nhiên, với kiến ​​trúc Data Vault, chúng tôi theo dõi “tất cả dữ liệu mọi lúc”. Điều này cho phép chúng tôi dễ dàng thích ứng với các định nghĩa kinh doanh mới: chúng tôi "đơn giản" phải thay đổi cách các mảnh và mảnh nguyên tử, các trung tâm và vệ tinh của chúng tôi kết hợp với nhau thành các khái niệm kinh doanh mới. Tương tự như vậy, chúng tôi có thể điều chỉnh những thay đổi tương ứng trong hệ thống phụ trợ. Chắc chắn, điều này đòi hỏi phải sửa đổi các hợp đồng được thực hiện với phần phụ trợ, hoạt động từ cả hai bên và rất có thể là các trung tâm, vệ tinh và liên kết bổ sung. Nhưng cuối cùng, chúng tôi vẫn có một tập hợp các khối xây dựng hợp lý và đáng tin cậy cũng như các liên kết giữa chúng và các công thức rõ ràng về cách chắt lọc các khái niệm kinh doanh có liên quan từ đó - cả phiên bản mới và cũ. Sau đó, những thứ này có thể được hiển thị cho doanh nghiệp bằng cách sử dụng mô hình chiều kiểu Kimball.

Cho đến nay, đây là một lợi thế quan trọng nhưng chủ yếu là chung chung trong kiến ​​trúc dữ liệu của chúng tôi. Đặc biệt đối với nhóm Khoa học dữ liệu, điều này mang lại giá trị bổ sung. Khi xuất hiện các khái niệm kinh doanh mới hoặc đang thay đổi, chúng tôi thường muốn xây dựng một số mô hình học máy liên quan đến các định nghĩa mới này. Trong các kiến ​​trúc khác, việc xây dựng tập dữ liệu lịch sử có thể liên quan đến các truy vấn phức tạp và dễ xảy ra lỗi nhằm cố gắng tái tạo lại các số lượng này trong quá khứ. Nhưng hiện tại, nhóm Kỹ thuật dữ liệu đã thực hiện công việc nặng nhọc thông qua việc thiết lập Data Vault của họ và các khái niệm mới cũng có thể truy cập trực tiếp đối với dữ liệu trong quá khứ - ngay cả trước khi các khái niệm mới này được xác định ngay từ đầu!

Hình 1. Ấn tượng của Nhà khoa học dữ liệu về công việc Kỹ thuật dữ liệu.

2. Du hành thời gian để tiếp cận hiện trạng lịch sử của sự thật

Giả sử bạn là Nhà khoa học dữ liệu chịu trách nhiệm gắn cờ các trường hợp gian lận tiềm ẩn. Bạn muốn xây dựng các tính năng và tái tạo lại những gì đã xảy ra với các khoản thanh toán lịch sử. Mô hình các chiều có thể cung cấp cho bạn một số câu trả lời như vậy, nhưng rất có thể đó không phải là bức tranh hoàn chỉnh. Đối với nhiều nhà phân tích và người dùng doanh nghiệp tại Picnic (chúng tôi có tỷ lệ chấp nhận SQL là 50% trong số những người dùng doanh nghiệp của mình), có lẽ rất thú vị khi biết những gì đã được mua và đơn hàng đã được thanh toán. Nhưng ở đây, như trong nhiều trường hợp, Nhà khoa học dữ liệu có các yêu cầu khác nhau: chúng tôi không chỉ quan tâm đến trạng thái cuối cùng hoặc trạng thái hiện tại mà còn cần có khả năng tái tạo lại thực tế kinh doanh đầy đủ tại một thời điểm lịch sử nào đó. Ví dụ: chúng tôi có thể quan tâm đến số lượng đơn đặt hàng chưa thanh toán của khách hàng tại một thời điểm nhất định, số lần thanh toán bị trả lại hoặc số nợ tồn đọng tại thời điểm đặt hàng. Rất phù hợp với trường hợp sử dụng Khoa học dữ liệu cụ thể này, ngay cả khi số lượng đó không nhất thiết được bất kỳ ai ngoài vấn đề kinh doanh cụ thể này quan tâm.

Hình 2. Các nhà khoa học dữ liệu du hành thời gian (ảnh nhờ Joe Roberts).

Data Vault để giải cứu. DV thực hiện nhiệm vụ này khá đơn giản: tại bất kỳ thời điểm nào, chúng tôi có thể dễ dàng tìm thấy trạng thái của các trung tâm, vệ tinh và liên kết. Hơn nữa, chúng tôi có một công thức đã biết để kết hợp lại những điều này thành các khái niệm kinh doanh mà chúng tôi quan tâm: đây chỉ đơn giản là các truy vấn được sử dụng để xây dựng mô hình thứ nguyên, như được đưa ra cho doanh nghiệp. Bằng cách điều chỉnh những điều này, chúng tôi có thể dễ dàng xây dựng lại các giá trị lịch sử của bất kỳ số lượng kinh doanh có liên quan nào và bằng cách này, xây dựng các đặc điểm lịch sử cho các mô hình của chúng tôi phản ánh thực sự các giá trị mà chúng đáng lẽ phải có vào thời điểm đó.

Khả năng du hành thời gian cũng cho phép chúng tôi điều chỉnh các truy vấn đào tạo và sản xuất của mình nhiều nhất có thể. Các truy vấn tạo ra các tính năng trong quá trình sản xuất sẽ sử dụng dữ liệu có sẵn gần đây nhất. Bằng cách sử dụng việc du hành thời gian trong Data Vault, chúng tôi có thể sử dụng các truy vấn có cấu trúc rất giống nhau để tạo ra các tính năng lịch sử cho mục đích đào tạo. Lý tưởng nhất là tất cả những gì chúng ta phải làm là thay đổi thời điểm tham chiếu và sự thật lịch sử (từ góc độ dữ liệu) sẽ được đưa ra. Việc giữ các truy vấn như vậy được căn chỉnh nhiều nhất có thể sẽ giúp giảm sự trùng lặp mã và logic, đồng thời cũng giảm phạm vi mắc lỗi. Ngược lại, trong một kiến ​​trúc khác, việc tái tạo trạng thái lịch sử trong quá khứ như vậy có thể liên quan đến các truy vấn phức tạp và dễ xảy ra lỗi với đầy đủ tính năng lọc và nối.

Tất nhiên, bạn có thể nói: chắc chắn rồi, nhưng tôi cũng có thể lưu trữ những ảnh chụp nhanh lịch sử này trong mô hình chiều thông thường của mình. Và tất nhiên, với nhận thức muộn màng 20/20, bạn có thể có - nhưng điều này đòi hỏi khả năng gần như tiên tri ở phía Kỹ thuật dữ liệu để dự đoán loại ảnh chụp nhanh nào (và loại khái niệm và định nghĩa kinh doanh nào) sẽ trở nên phù hợp trong tương lai . Với tác dụng phụ không mong muốn là yêu cầu tất cả các loại phức tạp đối với cấu trúc dữ liệu, khiến bất kỳ người dùng doanh nghiệp nào cũng khó sử dụng và diễn giải dữ liệu một cách chính xác hơn. Thiết lập hiện tại của chúng tôi tận dụng tối đa cả hai thế giới bằng cách duy trì sự tách biệt chặt chẽ giữa cách tiếp cận Data Vault ở phía phụ trợ và mô hình kiểu Kimball theo chiều hiển thị dữ liệu cho người dùng doanh nghiệp. Điều này cho phép khả năng điều khiển, trách nhiệm giải trình và khả năng phục hồi ở phía phụ trợ cũng như một mô hình chiều có cấu trúc và rõ ràng ở mặt trước.

3. Mở rộng mô hình thứ nguyên sang trạng thái gần như thời gian thực

Hình 3. Tái tạo dữ liệu mới, thời gian thực trên cơ sở đáng tin cậy. Mang đến cho bạn bởi bộ phận tương tự khủng khiếp của Picnic.

Các giải pháp kho dữ liệu và cấu trúc được cung cấp rất phù hợp cho việc phân tích lịch sử nhưng dữ liệu không được nhận theo thời gian thực. Thông thường, Data Vault sẽ lấy dữ liệu vài giờ một lần; mô hình thứ nguyên thường được làm mới mỗi ngày một lần. Tuy nhiên, kiến ​​trúc Data Vault cũng cho phép mở rộng khá gọn gàng ngoài trường hợp sử dụng kho dữ liệu thông thường, trong đó chúng tôi sử dụng dữ liệu thời gian thực để tăng cường dữ liệu có cấu trúc có sẵn. Điều này cho phép chúng tôi sử dụng cấu trúc do Kho dữ liệu cung cấp (phần phụ trợ của Data Vault hoặc giao diện người dùng theo chiều Kimball) nhưng cho phép các tính năng cập nhật nhất có thể.

Trong những trường hợp đó, chúng tôi bắt đầu từ phiên bản mới nhất của các bảng có liên quan của mô hình thứ nguyên hiện có. Tại thời điểm dự đoán, chúng tôi có thể xây dựng phiên bản phong phú của các tính năng liên quan theo yêu cầu. Tức là chúng tôi tự lấy dữ liệu từ phần phụ trợ. Bằng cách sử dụng các phiên bản được sửa đổi một chút của các truy vấn được Kỹ thuật dữ liệu sử dụng để xây dựng Kho dữ liệu và sau đó là mô hình thứ nguyên, chúng tôi có thể xây dựng Kho dữ liệu dành riêng cho công việc nhỏ của mình được tăng cường theo thời gian thực. Giờ đây, chúng tôi đã có phiên bản cập nhật đầy đủ của các bảng có liên quan, chúng tôi có thể đưa ra dự đoán chính xác nhất có thể, đồng thời đảm bảo rằng chúng tôi có thể sử dụng các truy vấn rất giống nhau để xây dựng các tính năng trong đào tạo và sản xuất.

4. Truy cập nhanh và khám phá số lượng mới

Việc phát triển và duy trì các bảng theo mô hình thứ nguyên mà doanh nghiệp có thể sử dụng cần có thời gian và công sức. Ở đây có rất nhiều sự tự động hóa giúp giảm bớt gánh nặng, như chi tiết ở đây. Tuy nhiên, cuối cùng, chỉ những khái niệm liên quan đến doanh nghiệp mới được bộc lộ. Tuy nhiên, với tư cách là Nhà khoa học dữ liệu, chúng tôi thường đi đầu từ góc độ dữ liệu - đặc biệt, khi khám phá một vấn đề kinh doanh mới, chúng tôi thường cần xây dựng các đại lượng thích hợp có thể phù hợp với mô hình của mình, nhưng không quá nhiều. Và có lẽ chúng hóa ra không liên quan chút nào, và chúng ta không biết một ưu tiên.

Hình 4. Những vệt sáng rực rỡ.

Việc khám phá những đại lượng mới lạ như vậy có thể khá phức tạp trong nhiều kiến ​​trúc khác. Nó có thể yêu cầu Kỹ sư dữ liệu hoặc Kỹ sư phụ trợ tạo ra các khái niệm mới hoặc hiển thị dữ liệu khác, việc này tốn rất nhiều thời gian và công sức quý giá. Và tất cả những điều đó chỉ dành cho một tính năng thậm chí có thể không mang lại bất kỳ điều gì hữu ích! Kiến trúc Data Vault của chúng tôi trực tiếp bỏ chặn chúng tôi: chúng tôi có thể tự mình xây dựng số lượng như vậy một cách đơn giản, thực hiện phân tích và khám phá mà không cần phải làm phiền bất kỳ ai khác. Và nếu một tính năng nhất định thực sự phù hợp với nhiều đối tượng hơn, thì tính năng này luôn có thể được hiển thị một cách có cấu trúc trong mô hình chiều ở giai đoạn sau.

Gói lên

Trong cuộc sống hàng ngày, mô hình thứ nguyên vẫn là nguồn dữ liệu cần thiết cho mọi phân tích nhanh chóng. Nó rõ ràng, có cấu trúc tốt, đáng tin cậy và sẽ chứa các khái niệm và số lượng kinh doanh thường được sử dụng. Nhưng lựa chọn sử dụng triết lý Data Vault sẽ bổ sung thêm một số công cụ rất hữu ích vào kho Khoa học dữ liệu của chúng tôi:

  1. Mở khóa dữ liệu lịch sử chất lượng cao - ngay cả đối với các định nghĩa và khái niệm kinh doanh mới
  2. Du hành thời gian để tiếp cận các trạng thái lịch sử của sự thật
  3. Mở rộng mô hình thứ nguyên sang hệ thống gần như thời gian thực
  4. Truy cập nhanh và khám phá số lượng mới

Điều này thực sự quan trọng trong một số dự án Khoa học dữ liệu mà chúng tôi thực hiện trong quá trình sản xuất. Và nói chung hơn, nó là một hệ số nhân lên năng suất của chúng tôi - việc được bỏ chặn khi chúng tôi muốn thử nghiệm các tính năng mới và có quyền truy cập trực tiếp vào dữ liệu lịch sử theo các định nghĩa thay đổi là cực kỳ hữu ích. Phần lớn các công việc và dịch vụ Khoa học dữ liệu sản xuất trong 20 năm của chúng tôi đã chạm trực tiếp vào các cấu trúc Kho dữ liệu phụ trợ khác nhau ở một số giai đoạn và một số cấu trúc quan trọng vẫn hoạt động như vậy về mặt cấu trúc bất cứ khi nào chúng được chạy.

Nguyên. Đăng lại với sự cho phép.

Liên quan:

Coinsmart. Đặt cạnh Bitcoin-Börse ở Europa
Nguồn: https://www.kdnuggets.com/2021/03/data-vault.html

tại chỗ_img

Tin tức mới nhất

tại chỗ_img