Trang 1 trên tổng số 3 123 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 22 kết quả

Đề tài: Không ai có bài trao đổi sao

  1. #1
    Ngày gia nhập
    07 2006
    Bài viết
    121

    Mặc định Không ai có bài trao đổi sao

    Cậu nào có thể chỉ cho mình thế nào là một CSDL không vậy ?

  2. #2
    Ngày gia nhập
    08 2006
    Nơi ở
    Hải Phòng
    Bài viết
    218

    Nói theo đúng định nghĩa thì lằng nhằng, khó hiểu nói chung là khó " gặm " nên mình nêu lên quan niệm của mình về nó: Khi bạn lập trình thì dữ liệu là đối tượng tác động của chương trình. Một chương trình bất kì đều thực hiện ba thao tác: lấy dữ liệu, xử lý dữ liệu, xuất dữ liệu. Đối với dữ liệu nhỏ không phức tạp thì bạn có thể tổ chức nó vào mảng, danh sách, tệp..., nhưng đối với những dữ liệu lớn thì việc tìm kiếm, lưu trữ gặp rất nhiều khó khăn, đôi khi dữ liệu quá phức tạp khiến không thể cài đặt nổi (cái này thường gặp khi cài đặt các thuật toán ). Để đỡ nhọc thân ta sẽ tống toàn bộ công việc lưu trữ, tìm kiếm cho CSDL, ta chỉ cần mô tả dữ liệu nó phải lưu trữ và ra lệnh lấy, trả thông tin thông qua các câu truy vấn, hoặc các đối tượng. Thông tin do CSDL lưu trữ thường dưới dạng file như *.mdb... Trong chương trình của ta CSDL được thể hiện dưới dạng các đối tượng.

  3. #3
    No Avatar
    khanga6tm Khách

    Oành! em xin chấp nhận là em đang làm CSDL nhưng bảo định nghĩa nó thì chịu, đúng phong cách của SV việt ai bảo gì làm nấy thôi!

  4. #4
    Ngày gia nhập
    08 2006
    Nơi ở
    Hà Nội
    Bài viết
    112

    Trích dẫn Nguyên bản được gửi bởi hailoc12
    Nói theo đúng định nghĩa thì lằng nhằng, khó hiểu nói chung là khó " gặm " nên mình nêu lên quan niệm của mình về nó: Khi bạn lập trình thì dữ liệu là đối tượng tác động của chương trình. Một chương trình bất kì đều thực hiện ba thao tác: lấy dữ liệu, xử lý dữ liệu, xuất dữ liệu. Đối với dữ liệu nhỏ không phức tạp thì bạn có thể tổ chức nó vào mảng, danh sách, tệp..., nhưng đối với những dữ liệu lớn thì việc tìm kiếm, lưu trữ gặp rất nhiều khó khăn, đôi khi dữ liệu quá phức tạp khiến không thể cài đặt nổi (cái này thường gặp khi cài đặt các thuật toán ). Để đỡ nhọc thân ta sẽ tống toàn bộ công việc lưu trữ, tìm kiếm cho CSDL, ta chỉ cần mô tả dữ liệu nó phải lưu trữ và ra lệnh lấy, trả thông tin thông qua các câu truy vấn, hoặc các đối tượng. Thông tin do CSDL lưu trữ thường dưới dạng file như *.mdb... Trong chương trình của ta CSDL được thể hiện dưới dạng các đối tượng.
    Sinichi đang hỏi về định nghĩa một CSDL, vấn đề cậu nêu ở trên được hiểu như thao tác - lập trình với CSDL.

    Database: Là một tập hợp những dữ liệu được chuẩn hoá theo một tiêu chuẩn
    nào đó, có thể do các tổ chức quốc tế định ra quy ước, hoặc các tập đoàn định nghĩa CSDL, hoặc cũng có thể do chính bản thân user định nghĩa. mdb chỉ là một trong rất nhiều kiểu dữ liệu MS đặt chuẩn ra. Nôm na là như vậy.

    Thực ra, khi chúng ta làm việc với CSDL, những ngôn ngứ được sử dụng, hầu hết đều có thể support với những kiểu dữ liệu chuẩn. Lấy ví dụ: Có thể sử dụng VB để access và work với Microsoft Access... Với những hệ quản trị CSDL thuộc một hãng thứ ba, ngoài việc cung cấp các tool dành riêng, thì việc build thêm một số các tool khác nhằm tương tác với CSDL thì đều thuộc hệ thống quản lý CSDL đó. Lấy ví dụ: Oralce không hiểu định dạng file Excel, mà chỉ hiểu và cho phép Load vào với kiểu flat-file, không thể dùng tool trong Oracle load trực tiếp các file Excel, mà phải chuyển đổi *.xcl sang định dạng flat....

    Những vấn đề như hailoc nêu trên: search, import, export, data link... thực tế, không khó đối với một người làm việc chuyên nghiệp về DB. Một người làm về DB thông dụng các hệ quản trị CSDL như SQL Server.. đều có thể tự xây dựng cho mình các procedure, trigger chính bằng các tool trong SQL Server support. Và không ai dại gì đi định nghĩa lại data bằng những ngôn ngữ (dù cho nó có support đi chăng nữa). Cái khó khăn cho một người làm về DB chính là project triển khai, các y/c từ phía khách hàng, ví dụ: Họ không thích quản lý password bằng authentication có sẵn trong hệ quản lý CSDL, không thích nhập liệu vào bằng chính hệ thống đó, mà yêu cầu quản lý password cho user bằng một program nhúng khác vào hệ thống đó, nhập liệu vào bằng program do họ y/c build bằng một program khác... Thực tế không có nhiều contract được y/c như thế, là bởi vì dùng chính bản thân hệ quản trị dữ liệu bao giờ cũng tốt hơn là dùng sản phẩm của một hãng thứ ba..

  5. #5
    No Avatar
    khanga6tm Khách

    Oành! Em công nhận bài viết của bác hay thực. chiều sâu và đầy kinh nghiệm chắc chuyên gia về CSDL roài! khâm phục khâm phục !

  6. #6
    Ngày gia nhập
    07 2006
    Bài viết
    121

    Mặc định Không ai có bài trao đổi sao

    Vậy khi nào mới cần xây dựng CSDL ?

  7. #7
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,750

    Trích dẫn Nguyên bản được gửi bởi trantuananh24hg
    Database: Là một tập hợp những dữ liệu được chuẩn hoá theo một tiêu chuẩn
    nào đó, có thể do các tổ chức quốc tế định ra quy ước, hoặc các tập đoàn định nghĩa CSDL, hoặc cũng có thể do chính bản thân user định nghĩa. mdb chỉ là một trong rất nhiều kiểu dữ liệu MS đặt chuẩn ra. Nôm na là như vậy.
    Cái này giống với Khái niệm một Hệ sơ sở dữ liệu chuẩn.

    Một cơ sở dữ liệu(Database) đơn giản là một tập hợp các thông tin về một chủ đề một cách khoa học(hiện hay thường được bố trí dưới dạng Table) có liên quan với nhau tạo thành một cơ sở cho các thao tác như truy tìm thông tin, đưa ra kết luận, thêm vào các bản ghi(record) .... Một cơ sở dữ liệu thường được lưu trữ gồm nhiều bản ghi, mỗi bản ghi gồm một hoặc nhiều field khác nhau.

    Một cuốn sổ ghi nợ, một sổ ghi chép của một người kế toán, một cuốn sổ của ông quản lý nhân sự của công ty, một bảng điểm của học sinh hay sinh viên .... Tất cả những thứ này được coi là một cơ sở dữ liệu. Trong đó (lấy ví dụ là một bảng điểm) :

    Toàn bộ thông tin về Sinh viên A: (Mã sinh viên, Họ tên, Ngày sinh, Nơi sinh, điểm môn Toán A1, điểm môn toán A2, điểm một tin Đại cương ... Tổng điểm, ghi chú ...) được gọi là một record của cơ sở dữ liệu bảng điểm sinh viên. Mã sinh viên, Họ tên, Ngày sinh, điểm môn .... mỗi cái này được gọi là field.

    Trên máy tính cũng vậy chỉ khác vị trí lưu trữ mà thôi, và trên máy tính việc thực hiện các thao tác nhanh hơn so với trên giấy. Vì vậy mà hình thành nên các hệ cơ sở dữ liệu chuẩn cho một cơ sở dữ liệu trên máy tính, như Microsoft SQL, MySQL, .... giúp cho người sử dụng nó có thể tạo nhanh ra một cơ sở dữ liệu, và không cần phải hình thành các công cụ để thực hiện các thao tác cơ bản ...

    Nói như vậy chắc bạn hình dung được: như thế nào là một cơ sở dữ liệu, và khi nào cần phải dùng nó rồi nhỉ.

    Rất mong nhận được đóng góp bổ xung.
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  8. #8
    Ngày gia nhập
    08 2006
    Nơi ở
    Hà Nội
    Bài viết
    112

    Trích dẫn Nguyên bản được gửi bởi Dreaminess

    Một cuốn sổ ghi nợ, một sổ ghi chép của một người kế toán, một cuốn sổ của ông quản lý nhân sự của công ty, một bảng điểm của học sinh hay sinh viên .... Tất cả những thứ này được coi là một cơ sở dữ liệu. Trong đó (lấy ví dụ là một bảng điểm) :

    Toàn bộ thông tin về Sinh viên A: (Mã sinh viên, Họ tên, Ngày sinh, Nơi sinh, điểm môn Toán A1, điểm môn toán A2, điểm một tin Đại cương ... Tổng điểm, ghi chú ...) được gọi là một record của cơ sở dữ liệu bảng điểm sinh viên. Mã sinh viên, Họ tên, Ngày sinh, điểm môn .... mỗi cái này được gọi là field.

    Trên máy tính cũng vậy chỉ khác vị trí lưu trữ mà thôi, và trên máy tính việc thực hiện các thao tác nhanh hơn so với trên giấy. Vì vậy mà hình thành nên các hệ cơ sở dữ liệu chuẩn cho một cơ sở dữ liệu trên máy tính, như Microsoft SQL, MySQL, .... giúp cho người sử dụng nó có thể tạo nhanh ra một cơ sở dữ liệu, và không cần phải hình thành các công cụ để thực hiện các thao tác cơ bản ...
    CSDL mà Dreaminess đã nói, là một trong rất nhiều những ví dụ về data. Hãy hình dung thế này nhé, một hệ thống quản trị CSDL là một hệ thống nằm giữa tầng hệ điều hành và end-user. Toàn bộ các thông tin - tức là data đó, sẽ được hệ thống này quản lý. Việc hệ quản trị dữ liệu đó ra sao, chúng ta không cần bàn tới, tại sao không cần phải bàn tới? Là bởi vì tất cả những công việc như tạo, xóa, thêm, sửa, viết program nhúng để làm một việc j đó, hoặc để điều khiển một form nào đó, đều đã tuân theo chuẩn của hệ quản trị CSDL đó rồi. Vấn đề chúng ta bàn luận ở đây, theo tôi sẽ gồm những thành phần chính sau:
    - Kế hoạch triển khai dữ liệu
    - Chính sách phân phối
    - Thiết lập kênh kết nối
    ....
    Bởi vì, thử hình dung xem, trong một Production/Development Database (Production: Dành cho sản phẩm mang tính thương mại, Development: Dành cho sản phẩm mang tính ứng dụng thử nghiệm) thì không thể nào chỉ có một quyển sổ ghi chép, 1 tài liệu tập hợp thông tin nào đó. Lấy ví dụ: 1 Database quản lý của một DN sẽ bao gồm: Departments, Employees, Location, Job_History, Regions... Đó là những table dành cho Human Resource. Vậy trong môi trường tập đoàn đa quốc gia, tính chất online là tất yếu. Online có rất nhiều nghĩa, trong mô hình CSDL, online được hiểu đại khái như Database luôn ở tình trạng online - Server luôn chạy, nhằm cung cấp cho user thực hiện query hay thao tác với các table trong account của mình hoặc của ngừoi khác (nếu là dba).

    Ở mức cơ bản, chúng ta nên tìm hiểu về cấu trúc file, bởi vì thực tế, file chính là data, mà data - thông tin lại chính là huyết mạch của DN. Tìm hiểu về data, về cấu trúc cơ sở dữ liệu, về các kiểu queus, cấu trúc cây nhị phân... để có thể nắm vững được cách thức bố trí và sắp xếp data đó trong một môi trường nhất định nào đó.

    Ở mức cao hơn, chúng ta tìm hiểu sâu hơn về một hệ quản trị CSDL, về kiến trúc của hệ quản trị đó, về các khái niệm được định nghĩa với mỗi một object (table chỉ là một trong rất nhiều các object), cách thức quản lý các object này....

    Và khi đã có kha khá kiến thức trong tay, thì tự mình build một DB, thực hiện và làm quen dần với công việc - công việc tôi đang theo đuổi: DBA.

  9. #9
    Ngày gia nhập
    08 2006
    Nơi ở
    Hà Nội
    Bài viết
    112

    Phù! May quá, post xong bài rồi, mới sực nhớ ra đây là site chuyên về C, vậy mà mình lại tham gia bàn tán về CSDL, tưởng mod banned nick, ai dè nhìn thấy cái box Thảo luận chung\CSDL... Hế hê, mod mà banned nick --> kiện

  10. #10
    Ngày gia nhập
    08 2006
    Nơi ở
    Hà Nội
    Bài viết
    112

    Hê hê! 11h rồi, chuẩn bị đi ngủ, nhưng trước khi đi ngủ, post thêm một bài chút. Hy vọng là không múa rìu qua mắt thợ.

    Database: Như tất cả chúng ta đều đã biết, đã có sự hình dung về nó, tôi xin phép, không bàn thêm về nó. Điều tôi muốn post tiếp ở đây chính là về kiến trúc của một hệ quản trị CSDL.

    Thông thường kiến trúc của một hệ quản trị CSDL sẽ được chia ra làm 2 thành phần chính:
    1/ Physical Structure
    2/ Logical Structure

    1/ Physical Structure:

    Cấu trúc physical của một hệ quản trị CSDL thường chứa trong nó những thành phần chính: Thành phần chứa các thông tin được thiết lập khi Create một Database - ta tạm gọi là Creation Data File. Thành phần này - rất rắc rối, khổ thế, cấu trúc bên trong của Creation Data File tôi không bàn đến (bởi vì tôi đã học xong cái này đâu mà dám bàn? ), thành phần thứ 2 chính là Data Control File.. và thành phần thứ 3, cực kỳ quan trọng: Data Redo Log File..

    2/ Logical Structure:
    Tùy theo từng hệ quản trị CSDL riêng biệt, Logical Structure được bố trí theo chuẩn của hãng - tập đoàn nào sở hữu hệ quản CSDL đó, nhưng nói chung Logical Structure thường được phân bố theo mô hình Hierachical Structure, thành phần trên cùng sẽ bao gồm 1 hoặc nhiều thành phần dưới nó, mà thành phần nhỏ nhất được gọi là một Block - khác với Block của OS.

    Đi kèm cùng với Physical Structure và Logical Structure, chúng ta sẽ có thêm một khái niệm gọi là Instance - hiểu nôm na như bắt đầu một phiên làm việc của 1 database, trong Instance này có rất nhiều những thứ đáng tìm hiểu, tùy theo từng hệ quản trị CSDL, mà những initialization parameter (tham số đầu vào - thiết lập cho từng segement cụ thể, phân bổ đến từng table...), những Background Processes (tiến trình ngầm) nào được đề cập tới và được thiết lập - set ra sao.


    Bài trả lời trước ở trên của tôi có nhắc tới khái niệm Online, thực tế, nếu ai đã từng làm việc với DB, chắc hẳn các bạn cũng hình dung ra khái niệm này - OLTP : Online Transaction Processing. Ví dụ cụ thể là những phiên giao dịch trong Ngân hàng.. Tranfering for money..

Các đề tài tương tự

  1. Trao đổi liên kết, trao doi logo, Text Link với các webforumblog (free)
    Gửi bởi nguyenlam14990 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 31
    Bài viết cuối: 13-03-2012, 11:53 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn