sql >> Databáze >  >> RDS >> Database

Anatomie vývoje softwaru Role:Data Scientist

Když jsem před dvanácti lety napsal první články pro „Cracking the Code:Breaking Down the Software Development Roles“, učinil jsem vědomé a možná kontroverzní rozhodnutí nezahrnout do rolí správce databáze nebo architekta databáze. Rozhodnutí bylo učiněno, protože existovalo jen málo organizací, které se zabývaly rozsahem dat, které vyžadovaly tuto vyhrazenou roli v procesu vývoje softwaru. Architekt řešení by se mohl postarat o potřebu organizace navrhnout datovou strukturu jako součást jejich celkové role. Od té doby se však svět dat rozrostl.

Velká data

Dnes se potýkáme s větším objemem, větší rychlostí a dynamickou rozmanitostí zdrojů dat, které zpracováváme. Nemluvíme o typických relačních databázích, které jsou populární po celá desetiletí. Rozšíření dat vyžaduje soubor technik a dovedností, které jsou na rozdíl od historických přístupů k datům, které jsme používali.

Vícevláknové naše zpracování dat je vylepšením jednovláknových přístupů ke zpracování dat, které popularizovalo zpracování dat v 80. letech; nicméně i tyto přístupy, které se spoléhají na jeden počítač s více vlákny provádění, se zhroutí, když množství zpracování nezbytného k extrahování významu přesáhne kapacitu jednoho stroje.

Rise of Service-based Computing

V roce 1999 mohli uživatelé doma věnovat své volné výpočetní cykly na svých počítačích na hledání mimozemské inteligence prostřednictvím projektu [email protected] provozovaného prostřednictvím UC Berkeley. Nebylo to první použití široce distribuovaného počítání nebo grid computingu, ale je to projekt, který zachytil představivost uživatelů internetu po celém světě. Najednou měli možnost být těmi, kdo našli „ET“. Ve výstavbě projekt distribuoval obrovské množství dat pro zpracování do mnoha počítačů, které prováděly výpočty s daty, aby zjistily, zda existují zajímavé bity, které pravděpodobně nebyly jen šumem na pozadí. [email protected] byl jen jedním z distribuovaných počítačových projektů, které přinesly povědomí o druhu problémů, kdy jeden počítač nebude stačit.

IBM, Microsoft a další nyní nabízejí počítačové služby a služby strojového učení, které organizacím pomáhají vyrovnat se s daty, která zachycují, a dát jim smysl, aby nemusely mobilizovat armádu angažovaných dobrovolníků. Cílem platforem je poskytnout výpočetní výkon a strojové učení nezbytné k extrakci informací skrytých v objemech dat. Namísto toho, aby organizace musely budovat a nasazovat svá vlastní datová centra s vyhrazenými výpočetními zdroji, jsou zdroje pro transformaci dat na informace a význam k dispozici k pronájmu.

Nejde o data, ale o statistiky

I když je množství dat, které shromažďujeme, ohromující, nejsou to data, která jsou zajímavá. Zajímavé je, co vám mohou data říct – pokud je dokážete analyzovat. Jednotlivé údaje o výkonu motoru nejsou důležité, ale schopnost předvídat, kdy motor potřebuje údržbu nebo kdy pravděpodobně selže – to je důležité.

Datoví vědci se nezaměřují na ukládání dat, jako byli datoví architekti a správci databází. Místo toho se zaměřují na přeměnu dat na informace a v konečném důsledku na poznatky, které může firma využít k lepším rozhodnutím. To znamená hledat nové přístupy k analýze dat způsoby, které odhalují zajímavé poznatky, které může firma využít ve svůj prospěch.

Postavení na množinách a statistikách

Tradiční procesní vývojář softwaru je obeznámen s procedurálním přístupem k řešení problémů. Vývojáři, vedoucí pracovníci a architekti jsou dobře vyškoleni v metodách a výhodách procedurální konstrukce. Procedurální přístupy jsou jako automatizace neuvěřitelně poslušného, ​​ale ne originálního pracovníka. Počítač je informován o krocích (postupu), které má provést, v jakém pořadí a za jakých podmínek má operaci opakovat nebo rozdělit mezi více cest. Datoví vědci však nepracují pouze s procedurálními přístupy, ale také s logikou založenou na množinách. Styl myšlení se liší, protože hledá mezery a průsečíky. Funguje na základě vztahů rovnosti a nerovnosti mezi různými soubory informací.

I když se někteří vývojáři při své práci setkali s logikou založenou na množinách, datoví vědci se musí cítit pohodlně a plynule ve své schopnosti manipulovat se sadami informací.

Navíc, na rozdíl od jiných rolí v životním cyklu vývoje softwaru, potřebuje datový vědec specializované dovednosti mimo oblast vývoje softwaru. Vzhledem k tomu, že datoví vědci hledají poznatky o vztazích mezi různými částmi dat, potřebují pevný základ ve statistikách, aby mohli hledat a generovat statistické hodnoty, jako je korelace, aby odpovídali na otázky, které kladou, a nacházeli nepřesné vztahy mezi různými soubory dat.

Kam vlastně pozice směřuje?

Růst dat dosáhl bodu zlomu. Ať už jde o analýzu sociálních sítí, historii kliknutí nebo údaje o nákupech, organizace vidí skutečnou obchodní hodnotu v datech, která jsou uzamčena v jejich databázích, a datoví vědci jsou klíčem k odemknutí potenciálu těchto dat.

Zachytit tuto hodnotu znamená najmout lidi, kteří mají dovednosti propojit algoritmy zpracování s daty a využít výpočetní výkon k vytvoření těchto výsledků.

Hodný, zlý a ošklivý

Věda o datech exploduje právě teď s příchodem zařízení internetu věcí zaznamenávajících všechny druhy dat ze všech možných míst. To znamená skvělou příležitost – a více než jen několik výzev. Zde je jen několik z těchto výzev:

  • Dobré: Je tu skvělá příležitost najít nové způsoby, jak extrahovat statistiky z dat.
  • Dobré: Výpočetní a úložné zdroje lze zakoupit ve velkém množství.
  • Dobré: Po vědcích zabývajících se daty je velká poptávka a pravděpodobně tomu tak ještě nějakou dobu zůstane.
  • Špatné: Jak se vyvíjejí algoritmy a přístupy, budete se vždy cítit zastaralí.
  • Špatné: Všechna data je třeba vyčistit a tato práce zabere značné množství času.
  • Ošklivý: Pokusy a omyly budou znamenat spoustu „selhání“ a málo triumfů.

Na závěr

Role Data Scientist má rychle rostoucí potřeby a jiný soubor dovedností. Pokud se vám líbila hodina statistiky a rádi nalézáte vzory, které ostatní lidé nevidí, mohlo by to být pro vás to pravé.


  1. Jak upsert pandas DataFrame do PostgreSQL tabulky?

  2. sqlite:jak přidat celkový čas hh:mm:ss, kde je datový typ sloupce DATETIME?

  3. Použití výstupních parametrů uložené procedury v C#

  4. Jak třídit řádky HTML tabulky, které jsou volány z MySQL