Google lớn tới cỡ nào?

21/09/2015 10:01 AM | Công nghệ

Google lớn đến mức nào? Chúng ta có thể trả lời câu hỏi trên bằng con số doanh thu hoặc giá cổ phiếu, hoặc khách hàng, hoặc mức độ ảnh hưởng của công ty với thế giới. Nhưng đó không phải là tất cả.

Bởi vì, ngoài những thứ đó ra, Google còn là một đế chế phần mềm máy tính khổng lồ. Do đó, chúng ta có thể trả lời câu hỏi hỏi “Google lớn tới cỡ nào” bằng số lượng mã (code) mà Google đang quản lý, để có thể cung cấp, duy trì tất cả các dịch vụ Internet hiện nay – từ Google Search đến Gmail đến Google Maps.

Rachel Potvin, nhà quản lý kỹ thuật của Google, ước tính Google phải quản đến khoảng 2 tỷ dòng code. Để dễ hình dung, hệ điều hành Windows của Microsoft, một trong những công cụ phần mềm phức tạp nhất từng được xây dựng cho máy tính, một dự án đã được phát triển từ những năm 1980 – có thể có khoảng 50 triệu dòng code.

Như vậy, Google đang phải quản số lượng code gấp 40 lần so với Windows. 2 tỷ dòng code này điều hành tất cả dịch vụ của Google, từ Google Search, Google Maps, Google Docs, Google+, Google Calendar, Gmail, YouTube, và các dịch vụ internet khác của hãng, và tất cả 2 tỷ dòng này nằm trong một kho code duy nhất để tất cả 25.000 kỹ sư Google xử lý.

Trong nội bộ công ty, Google xử lý code của hãng như một hệ điều hành khổng lồ. “Dù không thể chứng minh, song tôi đoán đây là kho code duy nhất, lớn nhất đang được sử dụng trên thế giới”, Potvin nói.

Google có thể là một trường hợp đặc biệt. Nhưng trường hợp của hãng cho thấy phần mềm đã phát triển mạnh mẽ như thế nào trong thời đại internet. Chỉ các kỹ sư mới có thể tiếp cận kho code khổng lồ của Google, song nó cũng gần giống như kho nguồn mở công khai GitHub, nơi các kỹ sư có thể chia sẻ hàng tấn code lên Internet.

Theo trang Wired, chúng ta đang tiến đến một thế giới mà chúng ta thường phải hợp tác với nhau trong các mã phần mềm, ở một quy mô lớn. Đây là cách duy nhất để chúng ta có thể theo kịp sự tiến triển như vũ bão của các dịch vụ internet hiện đại.

Có 25.000 nhà phát triển như Google, nghĩa là họ đang chia sẻ code với vô số người có vô số loại kỹ năng”, Sam Lambert, giám đốc hệ thống của GitHub nói. “Nhưng, là một công ty nhỏ, bạn có thể nhận được một số lợi ích tương tự khi dùng GitHub và nguồn mở”.

Làm thế nào quản được 2 tỷ dòng code?

Vấn đề là, xây dựng và vận hành “con quái vật” 2 tỷ dòng code này là một nhiệm vụ không đơn giản. “Đó hẳn là một thách thức kỹ thuật – một kỳ công”, Lambert nói. “Những con số này thực sự gây choáng váng”.

GitHub để các lập trình viên dễ dàng chia sẻ và hợp tác về code. Nhưng GitHub không triển khai một dự án phần mềm đơn lẻ nào, họ trải ra hàng triệu dự án. Còn Google lại kết hợp nhiều dự án vào một. Việc vận hành kho code khổng lồ này cùng với nhiều kỹ sư như vậy hẳn là một khó khăn. Nhưng theo Potvin, mọi thứ vẫn ổn.

Về cơ bản, Google đã xây dựng hệ thống quản lý riêng để vận hành tất cả “đống code” này. Hệ thống này được gọi là Piper và nó chạy qua cơ sở hạ tầng trực tuyến khổng lồ mà Google đã xây dựng để vận hành tất cả dịch vụ online. Theo Potvin, hệ thống Piper được dùng tại 10 trung tâm dữ liệu khác nhau của Google.

Toàn bộ 2 tỷ dòng code này không chỉ nằm trong một hệ thống duy nhất cho mọi kỹ sư của công ty, mà hệ thống này còn mang lai cho các kỹ sư Google sự tự do tuyệt vời để sử dụng và kết hợp code từ các dự án khác nhau. “Khi bắt đầu một dự án mới”, Potvin nói, “các kỹ sư đã có sẵn một thư viện giàu có. Hầu như mọi thứ đã sẵn sàng”. Hơn nữa, kỹ sư có thể tạo ra một thay đổi code và ngay lập tức triển khai nó trên khắp các dịch vụ Google. Khi cập nhật một thứ gì đó, là họ có thể cập nhật mọi thứ.

Tuy nhiên, hệ thống này cũng có những hạn chế. Potvin nói những mã nhạy cảm cao – như là những mã có liên quan đến thuật tìm kiếm PageRank của Google chẳng hạn – được đặt trong những kho riêng biệt khác, và chỉ những nhân viên đặc biệt mới được tiếp cận. Song về cơ bản, code của Google là một “quái vật khổng lồ” cho phép các kỹ sư thoải mái sử dụng để xây dựng các ý tưởng, giải pháp.

Cùng lúc đó, Piper phải vận hành để loại bỏ gánh nặng cho các coder. Nó phải đảm bảo các kỹ sư có thể quản được tất cả các code; rằng họ không dẫm lên chân nhau khi thay đổi code; họ có thể sẵn sàng loại bỏ lỗi và các code không sử dụng ra khỏi kho. Hiện Google đã chuyển hệ thống Piper sang một hệ thống mới có tên Perforce – một dạng như là để các chương trình máy móc tự động xử lý phần lớn nhiệm vụ.

Như Lambert đã nói, xây dựng và điều hành một hệ thống như vậy không chỉ yêu cầu kiến thức mà còn khối lượng sức mạnh điện toán lớn. Piper xử lý khoảng 85 terabyte dữ liệu (85.000 gigabyte) và 25.000 kỹ sư của Google đưa ra khoảng 45.000 thay đổi kho code mỗi ngày. Đó là một khối lượng công việc khủng. Trong khi hệ điều hành nguồn mở Linux có 15 triệu dòng code trên 40.000 file phần mềm, các kỹ sư Google điều chỉnh 15 triệu dòng code trên 250.000 file mỗi tuần.

Điều đó không có nghĩa là các chương trình máy móc này viết code, mà chúng chỉ tạo ra nhiều dữ liệu và file cáu hình cần thiết để điều hành phần mềm của công ty. “Bạn cần phải nỗ lực duy trì code luôn đúng, chuẩn”, Potvin nói. “Và không chỉ con người mới làm được điều này, mà robot cũng làm được”.

Tất cả mọi người đều có thể làm như Google

Liệu các công ty khác có thể dùng mô hình tương tự? Chắc chắn là có. Ứng dụng Facebook quản lý 20 triệu dòng code, và Facebook cũng xử lý toàn bộ trong một dự án duy nhất. Những công ty khác cũng đang làm tương tự trên quy mô nhỏ hơn. Khi các công ty đạt đến quy mô như Google hay Facebook, mọi thứ có thể khó khăn hơn. Song Google và Facebook đang tìm giải pháp – cho tất cả mọi người.

2 đại gia internet đang nghiên cứu một hệ thống quản lý phiên bản nguồn mở để mọi người có thể sử dụng và quản lý code số lượng lớn. Hệ thống mới này dựa trên một hệ thống hiện có là Mercurial. “Chúng tôi đang xem liệu có thể dùng Mercurial cho những dự án quản code quy mô như Google hiện nay”, Potvin nói và cho biết Google đang hợp tác chặt chẽ với chuyên gia lập trình Bryan O’Sullivan và những người khác tại Facebook.

Điều này thật phấn khích. Sau tất cả, rất ít công ty có thể quản lý nhiều code như Google hay Facebook làm hiện nay. Nhưng trong tương lai gần, họ sẽ có thể.

Theo Bảo Bình

ICTNews

Cùng chuyên mục
XEM

NỔI BẬT TRANG CHỦ

Ám ảnh bóng ma đa cấp thời 4.0: Đủ chiêu 'đốt cháy' tài khoản nhà đầu tư

Trái ngược với những lời ngon ngọt về lãi suất cao, khi đã xuống tiền đầu tư forex, “khách hàng” như cá nằm trên thớt, trước sau tài khoản đều cháy. Nhiều sàn forex “ăn rơ” với môi giới để khách “cháy tài khoản” (tức, hết tiền-PV) nhằm hưởng hoa hồng.

Thập kỷ thương trường

Hành trình 10 năm của Tập đoàn Thành Thành Công: Phong cách sinh tồn kiểu ‘con gián’, đi nhanh hay chậm cũng sẽ đi đến đích!

Trong 10 năm, Tập đoàn Thành Thành Công từ vốn điều lệ 1.000 tỷ đồng phình to lên gần 19.000 tỷ đồng. Từ một công ty đa ngành, họ dần gom lại còn 4 ngành chính là nông nghiệp, bất động sản, năng lượng và du lịch. Trong quá trình phát triển, một khi đã nhận định cái gì đó họ sẽ làm đến cùng cho, dù gặp khó khăn lớn đến thế nào đi nữa, theo đúng phong cách "từ từ cháo sẽ nhừ".

Luật sư: Nam tiếp viên Vietnam Airlines có thể bị truy cứu trách nhiệm hình sự

Luật sư cho biết, nam tiếp viên Vietnam Airlines có thể bị xử phạt hành chính theo Nghị định 117/2020/NĐ-CP, thậm chí có thể bị truy cứu trách nhiệm hình sự tại Bộ luật hình sự 2015, vì đã không vi phạm quy định về cách ly y tế tại nhà, dẫn đến lây nhiễm bệnh dịch cho người khác.

Đọc thêm