Cài đặt Next Next thì dễ chứ cài đặt Custom mới khó à nhen 😂
Để mình giúp các bạn đón đầu xu thế ngành Data thì mình sẽ làm một chuỗi series các kiến thức từ siêu siêu cơ bản như cách cài đặt cho tới các kỹ thuật thực tế nhất luôn <3 Mong các bạn sẽ ủng hộ bằng cách chia sẻ nhiều hơn với mọi người nè <3
Many love from me ❤️
Ghét của nào trời cho của đó…
Chào mọi người, lại mà mình Tùng TTr đây. Chắc hẳn bạn nào từng học ngành IT nói chung thì sure kèo luôn “có chạy đằng trời” mà thoát khỏi môn Hệ quản trị Cơ sở dữ liệu 😂😂😂
Và cũng giống như anh em, mình cũng từng vất vả lê lếch qua cái môn này. Không hẳn vì nó lập trình khó mà vì lúc học cả mình và các bạn cùng khóa thường hay khó hình dung được cách các luồng dữ liệu kết hợp với nhau.. Ơ mà còn chưa nói tới việc lập trình mà công đoạn cài đặt và import dữ liệu mẫu vào nó còn lằng nhằng nữa cơ mà 😢
Ui mà đúng là “Ghét của nào trời cho của đó”. Trước mình đâu có giỏi môn này đâu, vậy mà bây giờ công việc thường ngày của mình lại gắn chặt với nó í chứ 😒
Ngành hot xìn xịt – Data “tada”, học ngay thôiii Gét Gô Gét Gô
Cá nhân mình cũng không tin nổi là trong 3 năm trở lại nay thôi, ngành data thực sự rất hot, bộ 3 “ông kẹ” Data Analyst, Data Engineer và Data Science không còn gì là xa lạ trong thị trường công việc IT.
Để giúp các bạn đón đầu xu thế, mình sẽ làm một chuỗi series các kiến thức từ siêu siêu cơ bản như cách cài đặt cho tới các kỹ thuật thực tế nhất luôn <3 Mong các bạn sẽ ủng hộ bằng cách chia sẻ nhiều hơn với mọi người <3
Thường thì mình thấy hầu hết các trường Đại học sẽ dùng công cụ của Microsoft luôn để giảng dạy cách truy vấn dữ liệu (hay còn gọi là “query”) (SSMS – SQL Server Management Studio). Trên thực tế thì…đa phần mọi người cũng đều dùng công cụ này luôn 😂 Uả chứ sao nữa, nó free mà lại còn là hàng official nữa. Nhưng mà “trên cùng một con sông thì không thể nào chỉ có một con cá”, trong quá trình bài viết này và video mình cũng giới thiệu với các bạn một công cụ trả phí khác mình đang dùng cũng xịn xò không kém nè <3 Các cách “Get it free” luôn.
Vì bài viết chủ yếu để mô tả rõ hơn những gì có trong Video nên nó có thể hơi dài hơn trong video :v nên nếu bạn nào muốn “Mì ăn liền hơn” thì hãy coi video nhé <3
Bắt đầu cài đặt
Đầu tiên chúng ta cần phân biệt rõ 2 thằng ông kẹ sau đây
- SSMS – SQL Server Management Studio
- SQL Server
I. SSMS
1. Hiểu sao cho đúng
Okay thằng đầu tiên SSMS đối với các bạn chuyên ngành IT thì có thể hiểu là một IDE (Integrated Development Environment) – môi trường tích hợp dùng để viết code để phát triển ứng dụng (ở đây là dùng để kết nối và thực hiện các lệnh truy vấn, quản lý tới Server lưu trữ dữ liệu). Còn nếu bạn bắt đầu học về lập trình nói chung hay môn “Hệ quản trị CSDL” nói riêng thì hình dung khi bạn đi câu cá (cá ở đây có thể hiểu là dữ liệu) ở hồ (hồ là Server lưu trữ dữ liệu) bằng cần câu (gõ lệnh lấy dữ liệu trên cái màn hình CMD á 🤣- nghe thì ngầu nhỉ) thì bạn dùng thuyền đánh bắt cá với lưới câu cá xịn xò có gắn động cơ và được nâng cấp thường xuyên (con thuyền này là SSMS đó).
2. Cầm tay hướng dẫn cách cài đặt
B1: Tải file cài đặt về 😂Hiển nhiên rồi. Link tải: Link nè 😊
B2: Follow mình theo thứ tự các hình dưới đây

Sau khi ấn Install, ta tiếp bước tiếp theo là …

Đợi cho nó cài xong 😂

Cài xong rùi nè ✨


Nói chung thì việc cài đặt SSMS rất là dễ luôn, hồi xưa nó được tích hợp kèm trong gói cài đặt Server SQL nhưng sau này tách riêng thành file cài đặt riêng nên rất là tiện lợi và giao diện cũng thân thiện hơn.
3. Một số điều hay ho trên cửa số “Connect to Server” 😂
✨ Server type – Sao nhiều lựa chọn thế nhỉ?
Một điều mà các thầy cô không bao giờ giải thích là ý nghĩa của các loại Server ở mục lựa chọn này. Ở đây mình sẽ giải thích sơ sơ cho các bạn hiểu tụi nó là gì 😊
| Loại server | Ý nghĩa | Ghi chú |
| Database Engine | – Có thể hiểu Db Engine là trái tim của Database Servers. – Như vậy nhờ có cái Engine này thì chúng ta mới có thể thêm, xóa, sửa, đọc dữ liệu từ CSDL (Database) 😎 | -Thường thì trên DH anh em tụi mình cũng chỉ chọn option này thui. -Cơ mà thực tế đa phần cũng vậy 😂 |
| Analysis Services | – Đây cũng là một Engine nhưng là Analytical data Engine – Thật ra thằng engine này được sử dụng không chỉ ở SQL Server mà còn ở nền tảng Cloud và Power BI – Vì vậy nên mới được gọi là Services í 😂 điệu thật. – Lý do phải phân ra nhiều Engine vậy là do chúng ta có 2 loại DB: OLTP và Data Warehouse (DW). | – Vì dùng để truy vấn dữ liệu từ model của DW nên chắc anh em ít khi gặp. – Yên tâm là trong series này mình sẽ chỉ cho anh em hết 😂 |
| (SQL Server) Reporting Services | SSRS | – Đây là dịch vụ cung cấp các công cụ để tạo và quản lý các báo cáo. – So với PBI thì nó khó sử dụng và chỉ dùng cho doanh nghiệp. – Nó vẫn cần cài đặt SQL Server để lưu trữ, render báo cáo và các dịch vụ liên quan. | – Rõ ràng SSRS đã trở nên lạc hậu so với PBI. – Các khác biệt giữ PBI và SSRS + PBI free, SSRS cần license SQL Server. + PBI là Cloud-based, SSRS là server-based. + PBI sử dụng linh hoạt hơn. + SSRS chỉ sử dụng dữ liệu cục bộ, còn PBI có thể kết nối với Cloud. + PBI có thể tích hợp AI |
| (SQL Server) Integration Services | – Đây là dịch vụ dùng để ETL (Extract – Tranform – Load) dữ liệu vào Data Warehouse. – Nó vẫn cần cài một con SQL Server trước lun. | – Nghe phức tạp chứ trong gói cài đặt SQL Server có sẵn option để bạn chọn cài đặt lun hà. – Mình thấy SSIS thường dùng trên Visual Studio hơn là ở SSMS |
Cá nhân mình thấy thì đã dùng tới SSMS thì tất cả loại Server từ cloud cho tới on-premise đến từ cây nhà lá vườn Microsoft thì đều chơi được với SSMS.
II. SQL Server
1. Server trong tầm tay
Thật đó, hồi xửa xừa xưa để mà cài đặt một con server thui thì rất là mất công sức, nhưng qua mỗi năm thì tới nay ai cũng có thể tự cài được một con server cục bộ trên máy tính cá nhân với full chức năng, chỉ khác là để sử dụng ngoài đời thật thì phải cài một con đặc biệt hơn với giá cũng siêu đặc biệt luôn 😂
Trên thị trường thì có rất nhiều hãng cung cấp Server on-premise và cloud ví dụ như Postgre, MySQL nè. Và có thể bạn chưa biết thì engine của từng thằng sẽ có những tính năng hay thậm chí những câu lệnh chức năng SQL riêng luôn í.
Có thể bạn biết rồi 😂 SQL Server là loại server lưu trữ dữ liệu và có thể truy vấn bằng ngôn ngữ SQL
Một chút điều hay ho ❤️
2. Cách cài đặt chi tiết
Đầu tiên điều chúng ta cần làm là chuẩn bị một tâm thế thật sẵn sàng 😂Thiệt đó hồi xửa xưa khi mà bộ cài đặt MS còn phức tạp thì chỉ cần chọn sai một cái là phải gỡ cài lại. Đó là chuyện xưa rồi còn giờ thì chuẩn bị cốc nước ngồi đợi và ấn Next Next thui hà 😎
B1: Tải file cài đặt bộ cài đặt 🤪Nghe nó rườm ra hen nhưng mà mình cũng không rõ tại sao nó lại vậy nữa 🤣 Link tải: Chọn bản Dev nhé
Sự khác biệt giữa các Edition trong cùng phiên bản SQL Server
| SQL Server edition | Định nghĩa |
| Enterprise | Này là piên bản Premium nên các tính năng là đỉnh của chóp, không giới hạn và vì vậy được Microsoft hỗ trợ end-to-end (kiểu 24/7) với đội ngũ nghiệp vụ của doanh nghiệp. Có cả bảo hiểm phần mềm luôn đó, ảo ma Canada chưa 😂 |
| Standard | Dành cho các doanh nghiệp vừa và nhỏ, các chức năng quản trị cũng thuộc dạng cơ bản thôi nhưng quan trọng là sử dụng có bản quyền thì có trục trặc gì mình vẫn khiếu nại được hoặc nhờ hỗ trợ được í |
| Web | Được dành chuyên cho các máy chủ host Web hoặc Web VAPs (Virtual Access Points) – Kiểu như các điểm truy cập để tăng khả năng mở rộng của Web khi có gia tăng đột biến về lượng truy cập. |
| Developer | Phiên bản dành cho Dev nghèo đỗ khỉ muốn test tất cả chức năng của bản Premium xịn xò. Có cái khác là nó không có bản quyền để chạy ở môi trường thực tế kiếm tiền (production). |
| Express editions | Là phiên bản tối giản nhất có thể, phù hợp với các máy yếu, các ứng dụng Desktop hoặc các chương trình có dữ liệu lưu trữ nhỏ. |
Nếu mấy bạn tò mò về sự khác nhau giữa các phiên bản (version) từng năm của SQL Server thì link nè.
Còn nếu mọi người muốn đào sâu hơn sự khác nhau giữa các bản Edition như ở bảng so sánh trên thì cũng có tài liệu luôn: Coi ở đây nè.
Okay nói nhiều rùi vào các bước tiếp theo luôn hen…
B2: Tải gói cài đặt về máy (SQL Server installation wizard – Có ai như tui không hồi đầu đọc wizard kiểu như Phù Thủy vậy 🤣)



Sau khi tải về thì đây là những gì bạn nhận được

Thấy cái file SETUP.exe không nè, mở file này lên thì sẽ qua bước tiếp theo 🤪(Thương thì tải xong thì Windows tự mở lên luôn).
B3: Giờ mới tới bước chính nè

Như các bạn thấy thì ở vùng bên phải có rất là nhiều mục để chọn:
- Plainning: Chủ yếu là các đường dẫn tới các tài liệu về các cài đặt hoặc yêu cầu cấu hình
- Installation: Phần công cụ cài đặt chính nè
- Maintenance: Các công cụ sửa chữa nếu trong quá trình cài đặt bị ngắt ngang dẫn tới lỗi
- Tools: Một số công cụ kiểm tra và theo dõi về các điều kiện dẫn tới lỗi cài đặt hay các chức năng đã cài trên server cục bộ
- Resources: Tài liệu tùm lum tùm la
- Advanced: Các cài đặt nâng cao đối với phiên bản phân cụm server (cluster)
- Options: Đường dẫn file cài đặt mà bạn đang mở (Để default i nhen)
Nhiều nhợ, nhưng mà chỉ cần: Vào Installation…

Chọn dòng đầu tiên “New SQL Server stand-alone installation or add features to an existing installation”

Chọn Developer và ấn Next >
Có tất cả thảy 3 phiên bản free: Evaluation, Developer, Express. Trong đó bản Evaluation là đầy đủ nhất nhưng nó giống kiểu bản dùng thử với thời hạn 180 ngày (cũng lâu hen nhưng mà thui dùng Developer cho lành).
Một vài điều hay ho❤️

Next thôi 🤪

Cứ chọn option là kiểm tra cập nhật kèm theo khi Windows cập nhật

Thiệt luôn là hồi xưa cứ hễ nó Warning chỗ nào là mình phải Fix cho được chỗ đó mới ấn Next được, giờ thì đỡ rùi 🤣

Chỗ warning này mình skip cũng được
Tại sao có Warning Firewall? Virus hay gì hả? Uả này hàng chính hãng mờ 🤔Thật ra lý do là khi SQL Server được cài trên máy, thì mọi nỗ lực kết nối vào SQL Server sẽ có thể bị block nếu như không cài đặt mở các cổng kết nối vào cho “tường lửa”.
Các cổng được sử dụng với Database Engine thường là TCP 1433, 4022, 135, 1434, UDP 1434.
Một chút kiến thức hữu ích nè ❤️
Nếu mọi người muốn fix lỗi này thì có thể làm theo các bước trong tài liệu sau đây. Nên chọn cách dùng PowerShell cho nhanh hen.
Bước tiếp theo nè

Đây là cái màn hình mà hồi Đại Học mình chả biết nên chọn gì, thường thì sẽ chọn hết vì nghĩ là mình sẽ học được hết mấy cái xịn xò nhưng nah, chả bao giờ đâu 😂
Okay nếu không ai nói cho bạn thì có mình nói cho bạn. Đầu tiên chúng ta sẽ đi qua các hạng mục cài đặc ở khu Instance Features – Cũng là những hạng mục chính đáng quan tâm:
- Nếu chỉ bắt đầu học SQL thì chỉ cần chọn mục đầu tiên: Database Engine Services (Trái tim của SQL Server)
- Nếu bắt đầu học về các kỹ năng phân tích dữ liệu nói riêng hay về kiến trúc của Data Warehouse thì chọn thêm mục Analysis Services
- Nếu bạn muốn làm sạch dữ liệu, thậm chí training (dạy học), evaluate (đánh giá) và deploy(xuất bản) một mô hình máy học trực tiếp trên server mà không cần di chuyển dữ liệu sang server khác hoặc một nguồn khác, nói cách khác là làm trực tiếp trên SSMS luôn thì hãy cài đặt gói: Machine Learning Services and Language Extensions với ngôn ngữ mà bạn quen thuộc (Ở đây có Python, R và Java). Ví dụ nè:
CREATE PROCEDURE [dbo].[py_generate_customer_scores]
AS
BEGIN
-- Input query to generate the customer data
DECLARE @input_query NVARCHAR(MAX) = N'SELECT customer, orders, items, cost FROM dbo.Sales.Orders'
EXEC sp_execute_external_script @language = N'Python', @script = N'
import pandas as pd
from sklearn.cluster import KMeans
# Get data from input query
customer_data = my_input_data
# Define the model
n_clusters = 4
est = KMeans(n_clusters=n_clusters, random_state=111).fit(customer_data[["orders","items","cost"]])
clusters = est.labels_
customer_data["cluster"] = clusters
OutputDataSet = customer_data
'
, @input_data_1 = @input_query
, @input_data_1_name = N'my_input_data'
WITH RESULT SETS (("CustomerID" int, "Orders" float,"Items" float,"Cost" float,"ClusterResult" float));
END;
GOCá nhân mình thấy thì thay vì để gói Java thì Scala sẽ “thời thượng” hơn. Nếu bạn nào muốn biết thêm về cách sử dụng dịch vụ Machine Learning này thì cho mình biết mình sẽ làm hẳn riêng một series này nè 😎
Many question hỏi chấm ???
- Nếu ứng dụng có chức năng truy vấn tìm kiếm dữ liệu kiểu chữ nhưng trong một nguồn dữ liệu văn bản không cấu trúc (unstructured text data) thì để đảm bảo tốc độ chúng ta sẽ không dùng cách viết thông thường như lệnh LIKE mà dùng gói Search Engine cài thêm: Full-Text and Sematic Extractions for Search. Để hiểu được kiến trúc của bộ Engine này chắc phải có bài riêng thôi vì nó rất là dài ý, nhưng để sử dụng thì thương đối dễ, mình sẽ có một video hướng dẫn sau hen.
Sematic search (tìm kiếm dựa vào ngữ cảnh) là cơ chế tìm kiếm nâng cấp hơn Full-text search. Ở trên mình có đề cập tới dữ liệu văn bản không cấu trúc nó khác với dữ liệu không cấu trúc hen, ở đây ví dụ như các bài post giống trên Fb nè, hay những mẫu tin nhắn bình luận, kiểu nó không có khung mẫu xác định như dữ liệu trong doanh nghiệp (thường theo một chủ đề, nghiệp vụ nhất định).
Một chút hay ho nè ❤️
- Data Quality Services: Cá nhân mình thấy thì có vẻ như cũng ít doanh nghiệp dùng dịch vụ này, nó có mặt cũng từ lâu rùi í và dùng cho hệ thống nền tảng tiếng Anh sẽ chính xác hơn, khi chọn gói cài đặt này thì chúng ta sẽ có thêm 1 ứng dụng riêng nữa với tên y chang. Mục đích là giúp mình tạo những kịch bản để chuẩn hóa dữ liệu, tối ưu và chống trùng lắp theo từng domain gôm nhóm lại thành những knowledge base (Mấy cái này tên hàn lâm thôi bạn cứ hiểu đơn giản là viết kịch bản để Engine nó chuẩn hóa dữ liệu) rồi khi có luồng dữ liệu mới vào ta sẽ có giao diện lọc sẵn, mình chỉ cần chấp nhận nhưng dữ liệu mới dùng hay từ chối import những dữ liệu sai bằng cách click chọn thui ✨. Như mình nói bây giờ chúng ta có những dịch vụ Cloud ngon hơn nhiều và cái quy trình này cũng được chuẩn hóa thành cái tên xịn xò khác là ETL rùi í nên mình nói sơ sơ vậy thui ha 😂
- Cuối cùng nếu bạn muốn truy vấn ở các kiến trúc phân tán thì bắt buộc phải cài gói: PolyBase Query Service for External Data. Cái vụ phân tán này hay nè, nhưng mà từ từ mình sẽ mách mấy bạn mấy cái hay ho về vụ này. Có thể nói nếu bạn có đinh hướng làm Data Engineer thì bắt buộc phải biết vụ này à nhen 😂
Okay bây giờ chúng ta sẽ tới phần Share Features:
Cơ mà những hạng mục cài đặt ở đây chủ yếu là cài thêm các công cụ hỗ trợ chúng ta làm các tác vụ nó nhẹ nhàng và trực quan hơn thui, cũng như là một số bộ SDK để tạo kết nối tới các ứng dụng bên ngoài (ODBC/OLE DB).
Hold up, có gói cài đặt Machine Learning Server (standalone) nghe cũng xịn xò mà hỉ 😂Ừ thì kiểu nếu bạn muốn tách riêng Server lưu dữ liệu với Server chạy Trí tuệ nhân tạo thì có thể chọn cài đặt cục này. Vì nó chuyên dành cho Machine Learning nên nó có bộ thư viện R và Python hoàn chỉnh nè, deploy thẳng luôn script Python lên các Service chạy trên Website (Cơ bản cái server này có cài đặt sẵn môi trường chạy Python luôn rùi nên chả cần thiết lập gì ở bên phần Web, đụng cái chạy lun í 😂). Nhưng do mình cũng chưa làm mấy cái Web Service này mà chủ yếu chạy Model Machine Learning riêng nó trả về kết quả thì dùng nên bạn nào dùng cái này rùi thì có thể cho mình biết thêm hen – Cần lắm sự giúp sức hahaha 😁
Chắc là hay ho nè ✨
Hiểu hết rùi hen, bậy giờ tiếp tục cài đặt thuiii


Chỗ này đặt tên Instance thui. Một Server thì sẽ có nhiều Instances, mỗi Instances thì bao gồm các CSDL (database) nên có thể hiểu Intances như một thư mục trong cái ổ cứng (Server) và chứa các file Excel vậy á 😁
Ở đây mình để default cho dễ, thực tế thì tuy vào nghiệp vụ, phòng ban và cả version là Test hay Production mà sẽ đặt tên á.

Đầu tiên là cái bảng ở trên, chủ yếu là các tài khoản cho các dịch vụ riêng biệt có thể truy cập từ SSMS. Ví dụ: SQL Server Agent giúp đặt lịch các tác vụ chạy theo lịch trình cụ thể như thực thi một Store Procedure nào đó vào sáng mỗi ngày lúc 5 giờ, …
Còn cái tick ở dưới thì nó liên quan về việc khởi tạo và ghi nhận file log ở hệ thống. Mình nên để mặc định là không chọn

Ở màn hình này bạn có thể tạo tài khoản để đăng nhập vào Server của mình. Ở đây mình chọn tài khoản theo máy nên chỉ cần ấn Add Current User. Nếu bạn chon Option Mix Mode dưới thì sau khi điền Password thì vẫn nhấn Add Current User.
Có thể bạn sẽ lăng tăng hỏi các Tab kế bên nhưng chủ yếu là các setup về nơi cài đặt, số lượng tối đa nhân CPU sẽ dùng để chạy xử lý đa luồng, lượng RAM để dùng và có bật FILESTREAM dùng để chứa dữ liệu phi cấu trúc như hình ảnh nè hay không.


Lưu ý là bạn hãy nhớ tên đăng nhập của mình nhen, chỗ tô xanh í

Chỗ này cứ ấn Install thui, không cần lăng tăng gì nữa đâu 😁


Yè ye thành công rùi ✨✨✨Nhấn Close nữa là xong
III. Kết bài
Nói chung là việc cài đặt thật ra bạn chỉ cần Next Next thui hà, bài viết hơi dài nên các bạn lười đọc thì có thể xem Video của mình hen. Bài viết tiếp theo mình sẽ giới thiệu cách thêm một bộ data mẫu siêu nổi tiếng và giải thích thiết kế, kiến trúc của bộ data đó để các bạn có thể dùng dễ dàng cho việc học SQL hơn hen.
Nhớ chia sẻ bài viết và Video đến mọi người nhennnnnn ❤️
