Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Mẹo để chuyển từ Cơ sở dữ liệu độc quyền sang nguồn mở

Ngày trước, cơ sở dữ liệu độc quyền là lựa chọn duy nhất được chấp nhận.

“Không ai từng bị sa thải vì mua hàng của Oracle / Microsoft / IBM” là câu nói.

Cơ sở dữ liệu khổng lồ, nguyên khối được sử dụng cho mọi mục đích. Hỗ trợ trả phí - đó là cách toàn cảnh cơ sở dữ liệu trông như thế nào trong những năm 90 và đầu những năm 00. Chắc chắn, cơ sở dữ liệu mã nguồn mở đã có ở đó nhưng chúng được coi như một “cơ sở dữ liệu đồ chơi”, phù hợp với một trang web nhỏ, một blog hoặc một cửa hàng điện tử rất nhỏ. Không ai lành mạnh sẽ sử dụng chúng cho bất cứ điều gì quan trọng.

Mọi thứ đã thay đổi theo thời gian và cơ sở dữ liệu nguồn mở đã trưởng thành. Nhiều hơn và nhiều hơn đang được tạo ra mỗi năm. Bây giờ chúng ta thấy sự chuyên môn hóa, cho phép người dùng chọn tùy chọn tốt nhất cho khối lượng công việc nhất định - chuỗi thời gian, phân tích, cột, NoSQL, quan hệ, khóa-giá trị - bạn có thể chọn bất kỳ cơ sở dữ liệu nào bạn cần và thông thường, có rất nhiều tùy chọn để chọn. Điều này dẫn đến việc mã nguồn mở ngày càng trở nên phổ biến hơn trong thế giới cơ sở dữ liệu. Các công ty hiện đang xem xét các hóa đơn của họ từ nhà cung cấp cơ sở dữ liệu độc quyền của họ và tự hỏi liệu họ có thể giảm nó một chút bằng cách sử dụng cơ sở dữ liệu nguồn mở miễn phí hay không.

Như thường lệ, có những ưu và khuyết điểm. Những điều bạn có thể muốn xem xét trước khi triển khai cơ sở dữ liệu nguồn mở là gì? Trong bài đăng trên blog này, chúng tôi sẽ chia sẻ một số mẹo mà bạn có thể muốn ghi nhớ khi định chuyển sang cơ sở dữ liệu nguồn mở.

Bắt đầu Nhỏ và Mở rộng

Nếu tổ chức của bạn không sử dụng cơ sở dữ liệu nguồn mở, rất có thể tổ chức đó cũng không có kinh nghiệm quản lý chúng. Mặc dù có thể thực hiện được thông qua các nhà tư vấn bên ngoài, nhưng có lẽ không phải là ý kiến ​​hay nếu chuyển toàn bộ môi trường của bạn vào cơ sở dữ liệu mã nguồn mở.

Thay vào đó, cách tiếp cận tốt hơn sẽ là bắt đầu với các dự án nhỏ. Có thể bạn cần xây dựng một số loại công cụ hoặc trang web nội bộ, có thể là một số loại công cụ giám sát - đó là cơ hội tuyệt vời để sử dụng cơ sở dữ liệu nguồn mở và có được trải nghiệm sử dụng nó trong môi trường thế giới thực. Điều này sẽ cho phép bạn tìm hiểu thông tin chi tiết về cơ sở dữ liệu - cách chẩn đoán nó, cách theo dõi hiệu suất của nó, cách điều chỉnh để cải thiện hiệu suất của nó.

Trên hết, bạn sẽ tìm hiểu thêm về các tùy chọn và triển khai có tính khả dụng cao. Làm việc với nó cũng giúp hiểu được sự khác biệt giữa cơ sở dữ liệu độc quyền mà bạn sử dụng và cơ sở dữ liệu nguồn mở mà bạn đã triển khai cho các dự án nhỏ hơn. Theo thời gian, bạn sẽ thấy cơ sở dữ liệu nguồn mở trong tổ chức của mình tăng lên đáng kể cùng với kinh nghiệm của các nhóm của bạn.

Tại một số điểm, sau khi thu thập đủ kinh nghiệm để chạy cơ sở dữ liệu nguồn mở, bạn có thể quyết định kéo cần gạt và bắt đầu một dự án di chuyển. Một tùy chọn khác, cũng khá khả dĩ, là bạn sẽ chuyển dần các hoạt động của mình sang cơ sở dữ liệu mã nguồn mở trên cơ sở từng dự án. Cuối cùng, các ứng dụng hiện có của bạn sử dụng RDBMS độc quyền sẽ không còn được dùng nữa và cuối cùng được thay thế bằng phiên bản mới của phần mềm, dựa trên cơ sở dữ liệu nguồn mở.

Chọn Cơ sở dữ liệu Phù hợp cho Công việc

Chúng ta đã đề cập rằng cơ sở dữ liệu nguồn mở thường khá chuyên biệt. Bạn có thể chọn một kho dữ liệu phù hợp cho các mục đích sử dụng khác nhau - chuỗi thời gian, kho tài liệu, kho khóa-giá trị, kho cột, tìm kiếm văn bản. Điều này, kết hợp với mẹo trước, cho phép bạn chọn chính xác loại cơ sở dữ liệu mà dự án nhỏ của bạn yêu cầu. Giả sử bạn muốn xây dựng một hệ thống giám sát cho môi trường của mình.

Bạn có thể muốn xem xét cơ sở dữ liệu chuỗi thời gian như Prometheus hoặc TimeScaleDB để cung cấp năng lượng cho ứng dụng giám sát của mình. Có thể bạn muốn triển khai một số loại giải pháp phân tích / dữ liệu lớn. Bạn sẽ phải thiết kế một số loại quy trình ETL để trích xuất dữ liệu từ RDBMS chính của bạn và tải nó vào một giải pháp mã nguồn mở. Có rất nhiều tùy chọn được sử dụng như một kho dữ liệu. Tùy thuộc vào yêu cầu và dữ liệu, bạn có thể chọn từ nhiều loại cơ sở dữ liệu, ví dụ như Clickhouse, Cassandra, Hive và nhiều cơ sở dữ liệu khác.

Còn việc chuyển một số phần của ứng dụng từ RDBMS độc quyền sang giải pháp nguồn mở thì sao?

Cũng có các tùy chọn cho điều đó. Các kho dữ liệu như PostgreSQL hoặc MariaDB có rất nhiều tính năng liên quan đến việc di chuyển dễ dàng từ các kho dữ liệu như Oracle. Ví dụ, chúng đi kèm với hỗ trợ PL / SQL và các tính năng SQL khác có sẵn cho Oracle. Đây là một trợ giúp tuyệt vời - ít phải chuyển đổi mã hơn cùng với việc di chuyển từ Oracle sang các cơ sở dữ liệu khác, có nhiều khả năng các thủ tục và chức năng được lưu trữ của bạn cũng sẽ hoạt động chủ yếu và bạn sẽ không phải chi tiêu đáng kể. lượng thời gian để viết lại, kiểm tra và gỡ lỗi mã thể hiện logic cốt lõi của ứng dụng của bạn.

Bạn cũng không nên quên các nguồn lực mà bạn đã có trong nhóm của mình. Có thể ai đó có một số kinh nghiệm trong các kho dữ liệu nguồn mở phổ biến hơn? Nếu những điều đó phù hợp với yêu cầu của bạn và phù hợp với môi trường của bạn, bạn có thể sử dụng kiến ​​thức hiện có trong nhóm của mình và dễ dàng chuyển đổi sang thế giới nguồn mở.

Cân nhắc Yêu cầu Hỗ trợ

Việc di chuyển vào các kho dữ liệu mà bạn không có quá nhiều kinh nghiệm luôn khó khăn. Ngay cả khi bạn tiến hành các bước nhỏ, bạn vẫn có thể bị bắt bởi hành vi bất ngờ, tình huống bất ngờ, lỗi hoặc thậm chí chỉ là các tình huống vận hành mà bạn không quen thuộc.

Cơ sở dữ liệu nguồn mở thường có sự hỗ trợ cộng đồng tuyệt vời - danh sách email, diễn đàn, kênh Slack. Thông thường, khi bạn yêu cầu, ai đó sẽ cố gắng giúp bạn. Điều này có thể không đủ trong một số trường hợp. Nếu đúng như vậy, bạn nên tìm kiếm một khoản hỗ trợ trả phí. Có rất nhiều cách để đạt được điều này.

Trước hết, không phải tất cả các dự án nguồn mở đều được tạo ra như nhau. Các dự án lớn hơn, như PostgreSQL hoặc MySQL có thể đã phát triển một hệ sinh thái gồm các công ty tư vấn thuê các chuyên gia có thể tư vấn cho bạn. Nếu tùy chọn như vậy, vì bất kỳ lý do gì, không khả dụng hoặc không khả thi, bạn luôn có thể liên hệ với những người bảo trì dự án.

Thông thường, công ty phát triển kho dữ liệu sẽ sẵn lòng trợ giúp về giá cả.

Các công ty tư vấn độc lập có một lợi thế đáng kể - họ độc lập và họ sẽ đề xuất giải pháp dựa trên kinh nghiệm của họ, không dựa trên kho dữ liệu và các công cụ mà họ phát triển. Các nhà cung cấp thường sẽ thúc đẩy các giải pháp và môi trường của riêng họ. Mặt khác, các nhà cung cấp khá quan tâm đến việc tăng cường áp dụng kho dữ liệu của họ. Nếu bạn đang di chuyển từ một kho dữ liệu độc quyền, họ có thể đã ở trong tình huống đó vài lần trước đó, do đó họ sẽ có thể cung cấp cho bạn các phương pháp hay, giúp bạn thiết kế quy trình di chuyển, v.v. Đối với một công ty chưa có kinh nghiệm, việc tiếp cận các chuyên gia trong lĩnh vực di trú có thể là một tài sản tuyệt vời.

Bạn có thể thấy quyền truy cập vào hỗ trợ bên ngoài không chỉ hữu ích ở giai đoạn di chuyển. Đối phó với kho dữ liệu mới luôn phức tạp và việc tìm hiểu tất cả các khía cạnh của hoạt động tốn nhiều thời gian. Ngay cả sau khi di chuyển, bạn vẫn có thể được hưởng lợi từ việc có ai đó mà bạn có thể gọi điện, hỏi han và điều quan trọng nhất là học hỏi. Đào tạo, DBA từ xa, tất cả đều là những lựa chọn phổ biến trong thế giới cơ sở dữ liệu mã nguồn mở, đặc biệt là đối với những dự án lớn hơn, lâu đời hơn.

Tìm Hệ thống hoặc Công cụ để Trợ giúp

Cơ sở dữ liệu nguồn mở đi kèm với nhiều công cụ khác nhau, một số ít hoặc phức tạp hơn. Một số bổ sung thêm chức năng (tính sẵn sàng cao, sao lưu, giám sát), một số được thiết kế để giúp quản lý cơ sở dữ liệu dễ dàng hơn.

Điều quan trọng là phải tận dụng chúng (hợp đồng tư vấn có thể hữu ích ở đây để giới thiệu cho bạn công cụ quan trọng nhất cho kho dữ liệu nguồn mở mà bạn chọn) vì chúng có thể tăng đáng kể tốc độ hoạt động và hiệu suất của bạn và sự ổn định của toàn bộ thiết lập.

Một số công cụ miễn phí, một số công cụ yêu cầu giấy phép để hoạt động, bạn nên tìm hiểu kỹ và chọn những gì phù hợp với mình nhất. Chúng ta đang nói ở đây về bộ cân bằng tải, công cụ quản lý cấu trúc liên kết sao chép, công cụ quản lý IP ảo, giải pháp phân nhóm, ít nhiều nền tảng giám sát và quan sát chuyên dụng có thể theo dõi bất kỳ thứ gì bắt đầu từ các số liệu hiệu suất cơ sở dữ liệu điển hình thông qua việc đưa ra các dự đoán thông minh dựa trên dữ liệu cho chuyên ngành phân tích hiệu suất truy vấn.

Thế giới nguồn mở là nơi các công cụ như vậy phát triển mạnh - điều này cũng có ưu và nhược điểm. Công cụ “A” ​​thì dễ, tìm công cụ “THE” thì khó. Bạn có thể tìm thấy nhiều dự án trên GitHub, tất cả mọi người đều làm gần giống như những người khác. Chọn cái nào mới là phần khó. Đó là lý do tại sao, lý tưởng nhất là bạn sẽ có một hợp đồng hỗ trợ giúp đỡ hoặc bạn cũng có thể dựa vào các nền tảng quản lý sẽ giúp bạn quản lý nhiều khía cạnh của hoạt động trên cơ sở dữ liệu nguồn mở, bao gồm cả việc giúp bạn chuẩn hóa và chọn các công cụ chính xác cho điều đó.

Ngoài ra còn có các nền tảng như ClusterControl, được thiết kế để giúp những người chưa có kinh nghiệm nắm bắt đầy đủ sức mạnh của cơ sở dữ liệu nguồn mở. ClusterControl hỗ trợ nhiều loại kho dữ liệu mã nguồn mở khác nhau:MySQL và các hương vị của nó, PostgreSQL, TimeScaleDB hoặc MongoDB. Nó cung cấp giao diện người dùng thống nhất để truy cập các chức năng quản lý cho các kho dữ liệu đó, giúp dễ dàng triển khai và quản lý chúng. Thay vì dành thời gian thử nghiệm các công cụ và giải pháp khác nhau, sử dụng ClusterControl, bạn có thể dễ dàng triển khai môi trường có tính khả dụng cao, lên lịch sao lưu và theo dõi các chỉ số trong hệ thống.

Các công cụ như ClusterControl giảm tải cho nhóm của bạn, tăng khả năng hiểu những gì đang xảy ra trong cơ sở dữ liệu mà họ không quen thuộc như họ mong muốn.

Dành thời gian của bạn

Điều cần lưu ý là không cần phải vội vàng. Sự ổn định của môi trường và hạnh phúc của người dùng là điều tối quan trọng. Dành thời gian của bạn để chạy các bài kiểm tra, xác minh tất cả các khía cạnh của ứng dụng của bạn. Xác minh rằng bạn có sẵn các quy trình phục hồi thảm họa và tính sẵn sàng cao thích hợp.

Chỉ khi bạn chắc chắn 100% rằng bạn có thể chuyển đổi thành thạo, thì đã đến lúc bạn cần kéo cần gạt và chuyển sang cơ sở dữ liệu nguồn mở.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL # 1093 - Bạn không thể chỉ định bảng mục tiêu 'quà tặng' để cập nhật trong mệnh đề FROM

  2. Hướng dẫn thiết kế cơ sở dữ liệu để quản lý blog trong MySQL

  3. PyInstaller, tệp đặc tả, Lỗi nhập khẩu:Không có mô-đun nào có tên 'blah'

  4. Cách sao chép cơ sở dữ liệu bằng phpMyAdmin

  5. Làm thế nào để bạn tham gia vào cùng một bàn, hai lần, trong mysql?