Database
 sql >> Baza danych >  >> RDS >> Database

Co robi projektant baz danych?

Zadaniem projektanta baz danych jest przełożenie wymagań biznesowych klienta na model danych, który nie tylko prawidłowo przechowuje dane biznesowe, ale także wspiera procesy wykorzystujące dane.

Projektant bazy danych, czasami nazywany architektem baz danych lub specjalistą ds. danych, jest odpowiedzialny za projektowanie baz danych w organizacji. Starannie ocenia wymagania biznesowe i opracowuje modele danych. Następnie pojawiają się wstępne rozmowy z biznesem, aby zweryfikować zrozumienie danych i procesów biznesowych. Praca projektanta bazy danych obejmuje również przygotowanie dokumentacji pomocniczej podczas budowania fizycznej bazy danych.

Co to jest modelowanie danych?

Modelowanie danych to proces, w którym projektant bazy danych tworzy model danych obsługujący jego aplikację. Jego celem jest reprezentowanie interakcji obiektów bazy danych i rozwiązywania problemów biznesowych.

Model danych opisuje strukturę danych w tabelach bazy danych oraz relacje między nimi. Jest reprezentowany przez serię diagramów ER, które zawierają główne jednostki, ich atrybuty i relacje między jednostkami. Bardzo ważne jest zbudowanie odpowiedniego modelu danych od samego początku.

Modelowanie danych musi również uwzględniać elastyczność. Żaden model danych nie jest nigdy trwały, nawet po wdrożeniu bazy danych. Model danych musi być z czasem dostosowywany, aby odzwierciedlał nowe dane i nowe wymagania. Dlatego podczas projektowania ważne jest uwzględnianie elastyczności.

Modelowanie danych pomaga w łatwiejszym przełożeniu wymagań biznesowych na wymagania techniczne dotyczące budowania fizycznej bazy danych. Pomaga również znaleźć potencjalne problemy z wydajnością zapytań, zanim jeszcze utworzysz bazę danych. Z tych wszystkich powodów modelowanie danych jest bardzo ważne.

Rodzaje modeli danych

Podczas tworzenia nowej bazy danych praca projektanta bazy danych prowadzi przez co najmniej trzy główne etapy. Model danych przechodzi proces ewolucyjny, zaczynając od koncepcyjnego modelu danych. Następnie jest rozwijany w logiczny model danych. To z kolei jest dalej rozwijane w fizyczny model danych, później zaimplementowany za pomocą skryptów SQL.

Każdy typ modelu danych jest przeznaczony do interakcji z różnymi typami interesariuszy. Poniżej krótko opiszemy i wyjaśnimy zastosowanie tych modeli danych. Jeśli chcesz uzyskać bardziej szczegółowe wyjaśnienie, zapoznaj się z tym artykułem.

Koncepcyjny model danych

Koncepcyjny model danych to pierwszy budowany przez nas model danych. W koncepcyjnym modelu danych główne encje są zdefiniowane, zwykle przy użyciu diagramów ER. Dzieje się tak również, gdy uczestniczą główni interesariusze ze strony biznesowej.

Koncepcyjny model danych pomaga zidentyfikować i zdefiniować początkowy zakres problemu biznesowego, podmioty zaangażowane w rozwiązanie problemu oraz sposób ich interakcji. Te jednostki są ogólnymi reprezentacjami pojęć, takich jak zamówienie, sklep i pracownik.

Relacje między tymi bytami są zazwyczaj przedstawiane za pomocą linii łączących byty, które oddziałują w świecie rzeczywistym. Tak więc, na przykład, zamówienia, sklep i jednostki pracownicze powinny mieć relacje, które łączą się między nimi.

Logiczny model danych

Logiczny model danych opiera się na koncepcyjnym modelu danych. Stosowane są techniki normalizacji, takie jak 3NF (trzecia postać normalna). Zapewniamy, że wszystkie relacje między podmiotami są reprezentowane w naszym modelu danych. Ten krok jest kluczową różnicą między konceptualnym a logicznym modelem danych.

Fizyczny model danych

Fizyczny model danych jest ostateczną i najbardziej szczegółową wersją naszego modelu danych. W tym kroku definiujemy wszystkie tabele w naszej aplikacji. Definiujemy również relacje między tabelami, ustawiamy ich kardynalność, przekształcamy atrybuty encji w kolumny oraz wybieramy lub definiujemy typy danych dla każdej kolumny. Upewniamy się, że ustawiamy wartości domyślne lub ograniczenia na wartości kolumn, ograniczenia między tabelami i ustawiamy sortowanie.

Po zaprojektowaniu fizycznego modelu danych zwykle budujemy zestaw skryptów SQL, które definiują tę strukturę, aby utworzyć naszą bazę danych. Zamiast pisać wszystko ręcznie, znacznie lepiej jest użyć narzędzia do modelowania bazy danych, takiego jak Vertabelo Database Modeler.

Praca projektanta baz danych

Obowiązki projektanta baz danych nie ograniczają się do rozwoju technicznego i projektowania diagramów. Typowy dzień obejmuje przeglądanie zaległości w wymaganiach biznesowych i sprawdzanie, czy coś się zmieniło.

Dzień z życia projektanta baz danych

W przypadku zmian projektant bazy danych analizuje wymagania i spotyka się z firmą, aby wyjaśnić implikacje zmian w modelu danych i bazie danych. Po tych wyjaśnieniach projektant bazy danych aktualizuje model o zmiany. Może to obejmować zmianę pojedynczego typu danych, przeprojektowanie relacji encji i zastosowanie normalizacji, jeśli zmiana ma większy wpływ.

Jeśli istnieje metryka wydajności, która musi zostać spełniona, projektant bazy danych może być zmuszony do znalezienia i określenia indeksów do utworzenia. Jeśli istnieje proces ETL do zmapowania, może on/ona określić, jakie procedury składowane przeprowadzają transformację danych.

Projektant bazy danych musi wziąć pod uwagę konsekwencje zmian w zadaniach konserwacji bazy danych, takich jak tworzenie kopii zapasowych, przywracanie i przesyłanie dzienników. Jeśli zmiany są poważne, projektant bazy danych musi omówić to z zespołem administracyjnym bazy danych lub zespołem programistów, który monitoruje bazę danych. Innym obowiązkiem projektanta jest zdefiniowanie i utrzymanie słownika danych dla bazy danych.

Ryzyka i problemy stojące przed projektantem baz danych

Jak w przypadku każdej pracy, niektóre problemy są przewidywalne, więc możesz mieć naszkicowany plan. Ale są problemy, których nie można przewidzieć, a praca projektanta baz danych nie jest wyjątkiem.

Jedną z najbardziej ryzykownych rzeczy, jakie może zrobić projektant baz danych, jest przyjęcie założeń. Może to spowodować nieoczekiwane problemy w dalszej części projektu. W przypadku wątpliwości najlepiej wyjaśnić firmę, a nie iść do przodu. Widziałem to wiele razy, zarówno mnie, jak i moim współpracownikom.

Możemy poczynić małe założenia dotyczące typów danych lub ilości danych dla określonej tabeli. Jeśli jednak się mylimy, może to wpłynąć na fizyczny model danych i spowodować wiele przeróbek, aby osiągnąć docelowe wskaźniki wydajności.

Innym problemem jest założenie, że omówiłeś wszystko i że nigdy nie będzie błędów. Problemy zwykle pojawiają się pod koniec projektu, gdy wszystko jest już wdrożone.

Niektóre scenariusze wymagają korekt, nawet po wdrożeniu bazy danych. Może to być spowodowane wzrostem ilości przechowywanych danych, zmianami wymagań biznesowych lub potrzebą tworzenia nowych raportów. Zdarzenia te wpływają nie tylko na tabele, ale także na obiekty bazy danych, indeksy, prawdopodobnie typy danych, relacje i wiele innych rzeczy.

Wady i zalety bycia projektantem baz danych

Jak w przypadku każdej pracy, istnieją plusy i minusy w zależności od tego, jak patrzysz na rzeczy, co lubisz i jak chcesz żyć.

Zaletą jest to, że zawsze znajdziesz interesujące konteksty biznesowe, które można odwzorować w modelu danych i wbudować w bazę danych. To świetna praca dla ludzi, którzy potrafią się skupić i lubią rozwiązywać trudne problemy. To świetna praca, jeśli lubisz komunikować się i rozwiązywać problemy techniczne oraz jeśli potrafisz i chcesz zrozumieć kontekst biznesowy i technologiczny.

Jak w przypadku każdej trudnej umiejętności, wynagrodzenie jest całkiem niezłe. Jeśli pracujesz nad projektami z klientami z dużych firm, podróże służbowe mogą być bonusem, jeśli lubisz podróżować i poznawać nowych ludzi w nowych środowiskach.

Moim zdaniem wad nie jest wiele. Ale dla niektórych osób niektóre z rzeczy wymienionych w zaletach są w rzeczywistości wadami. Jeśli wolisz skupić się na swojej pracy i zminimalizować komunikację lub jeśli nie możesz lub nie chcesz podróżować z powodu ograniczeń rodzinnych, praca projektanta baz danych może nie być dla Ciebie odpowiednia.

Zostań projektantem baz danych!

Z pewną wiedzą techniczną w tej dziedzinie, pewnym doświadczeniem programistycznym i otwartością na komunikację, myślę, że każdy może zrobić karierę projektanta baz danych, nawet jeśli nie zaznaczysz wszystkich pól. Poniżej pokrótce wymieniono idealne wymagania dotyczące umiejętności projektanta baz danych.

  • Techniki modelowania i normalizacji danych.
  • Wiedza dotycząca zapytań do bazy danych i dostrajania wydajności.
  • Wewnętrzne elementy bazy danych specyficzne dla silnika bazy danych wymaganego przez klienta.
  • Wiedza o procesach ETL.
  • Wiedza na temat analizy biznesowej i raportowania.
  • Wiedza o ogólnej architekturze i projektowaniu oprogramowania.
  • Umiejętności zarządzania projektami.
  • Dobre umiejętności komunikacyjne.

Myślisz o zostaniu projektantem baz danych? Jeśli zauważysz, że odhaczasz niektóre pozycje z powyższej listy, nie wahaj się – wspieramy Cię! Niezależnie od tego, czy ubiegasz się o swoją pierwszą pracę jako projektant baz danych, czy po prostu chcesz zapoznać się z najważniejszymi tematami dotyczącymi tej roli, przygotowaliśmy listę pytań do rozmowy kwalifikacyjnej związanych z modelowaniem baz danych.

Dopiero zaczynasz modelowanie baz danych? Ważne jest, aby mieć narzędzie takie jak Vertabelo Database Modeler, które pomoże Ci w projektowaniu, udostępnianiu i wersjonowaniu modeli danych.

Mamy nadzieję, że artykuł Ci się spodobał! Zapraszam do przeglądania, aby uzyskać więcej informacji o niesamowitym świecie baz danych.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Potencjalne ulepszenia ASPState

  2. Jak usunąć kolumnę w SQL?

  3. Jak obliczyć różnicę między dwoma datami w T-SQL

  4. Projekt bazy danych

  5. SCD typu 3