View profile

#228 - Tìm hiểu về mô hình Data Platform hiện đại

Grokking Vietnam
Grokking Vietnam
Thân chào các bạn độc giả,
Trong số này, chúng ta cùng tìm hiểu về:
  • Migration dữ liệu ở quy mô lớn tại Stripe;
  • Mô hình Data Platform hiện đại;
  • AlloyDB: sự kết hợp giữ SQL truyền thống và khả năng thực thi các truy vấn phân tích vượt trội.
Tại góc lập trình, chúng ta sẽ tham khảo một cách giải đề bài Max Consecutive Ones III tuần trước, và xem giới thiệu đề bài tuần này Possile Bipartition.
Ngoài ra, ngôn ngữ mới CarbonGather town cũng được giới thiệu tại góc Code & Tools.

Những bài viết hay
Techtalk
Góc Lập Trình
Đề ra tuần này: Possible Bipartition
(by ndaadn)
Cho trước một nhóm gồm n người từ 1 đến n và một mảng dislike bao gồm các cặp số [a,b] thể hiện người a ghét người b. Xác định xem có thể chia nhóm n người này thành 2 nhóm sao cho trong 2 nhóm này không có ai ghét nhau hay không?
Ví dụ:
Input: n = 4, dislikes = [[1,2],[1,3],[2,4]]
Output: true
Giải thích, có thể chia thành 2 nhóm, nhóm 1: [1,4] và nhóm 2: [2,3].
Lời giải đề bài tuần trướcMax Consecutive Ones III
Bài toán chỉ cho phép đổi nhiều nhất k số 0 thành số 1, và yêu cầu tìm độ dài lớn nhất của chuỗi số 1 liên tiếp có thể tạo được. Nếu ta diễn đạt yêu cầu của bài toán bằng một cách khác như sau: “Tìm mảng con dài nhất của mảng cho trước, sao cho mảng con đó có đúng k số 0”, thì có thể nhận ra ngay hướng giải quyết của bài toán.
Ta có thể sử dụng kỹ thuật sliding window để tìm lời giải như sau: gọi 2 biến left và right lần lượt là vị trí bắt đầu của mảng con, điều ta cần thực hiện là dịch chuyển right và sau đó là left sao cho giữ nguyên điều kiện mảng con từ left đến right chứa đúng k số 0.
Sau đây là lời giải cho bài toán cài đặt bằng ngôn ngữ Java.
Độ phức tạp thời gian của giải thuật trên là O(N), độ phức tạp không gian là O(1).
Code & Tools
  • Carbon Language: An experimental successor to C++: Carbon là một ngôn ngữ lập trình kế thừa của C++, giống như Java có Kotlin, JavaScript có TypeScript, và hiện đang trong giai đoạn thử nghiệm. Carbon ban đầu được phát triển trong nội bộ Google, nay được open-source, với mục tiêu phát triển một ngôn ngữ hiện đại và cung cấp trải nghiệm tuyệt vời cho lập trình viên. 
  • Gather Town: Covid-19 tạo ra sự thay đổi lớn trong cách thức làm việc tại các doanh nghiệp, khi các nhân viên thường xuyên làm việc trực tuyến từ xa thay vì phải liên office liên tục. Gather Town là ứng dụng cho phép người dùng thiết lập không gian làm việc trực tuyến phù hợp với nhu cầu và sở thích cá nhân.
Feedback
Bạn đánh giá nội dung số newsletter này thế nào?
(1 = Rất tệ / 5 = Rất tốt)
👎 1 ——-2 —— 3 —— 4 —— 5 👍
(Việc đánh giá của các bạn là rất quan trọng, sẽ giúp chúng tôi liên tục cải thiện nội dung newsletter tốt hơn)
Grokking mang lại cho các bạn những kiến thức mới mẻ và hữu ích thông qua:
  • Tech Talk: Là một hoạt động thường xuyên của Grokking từ những ngày đầu thành lập. Tại đây các diễn giả chia sẻ kiến thức xoay quanh Computer Science và Software Engineer. Các buổi Tech Talk đều được record và upload lên kênh youtube.
  • Knowledge Graph: Tập hợp những nguồn kiến thức phong phú với hơn 1000 bài viết chọn lọc, các đầu sách, khóa học, v.v… Các bài viết đều được gán nhãn để giúp bạn đọc dễ dàng tìm kiếm.
  • Webinar: Là chương trình kết nối các kỹ sư Việt Nam và các kỹ sư đang làm việc tại các công ty công nghệ hàng đầu thế giới.
  • Dijkstra: Một ấn phẩm được xuất bản bởi các thành viên của Grokking. Với những bài viết đào sâu vào kỹ thuật và kiến thức khoa học máy tính.
  • Kipalog: Nền tảng chia sẻ kiến thức dành cho các lập trình viên.
  • Newsletter: Những bài viết hay về công nghệ sẽ được gửi tới bạn hàng tuần qua email.
Chúc các bạn sẽ tìm được nhiều điều mới mẻ khi đến với Grokking và xin hẹn gặp lại các bạn vào tuần sau.
Quotes
“Punishments include such things as flashbacks, flooding of unbearable emotions, painful body memories, flooding of memories in which the survivor perpetrated against others, self-harm, and suicide attempts.”
― Alison Miller, Healing the Unimaginable: Treating Ritual Abuse and Mind Control
Did you enjoy this issue? Yes No
Grokking Vietnam
Grokking Vietnam

Cảm ơn bạn đã dành thời gian đọc newsletter kỳ này và chúng tôi hi vọng rằng bạn đã khám phá ra một số điều mới mẻ từ các bài viết trên. Các bạn có thể đọc lại các số cũ tại website newsletter.grokking.org

In order to unsubscribe, click here.
If you were forwarded this newsletter and you like it, you can subscribe here.
Created with Revue by Twitter.
Viet Nam