Cât de mult - o abordare cu codec - este stocarea de serii serializate în sql

Vitaly Khomenko
1. Dacă te referi la numărul tău, atunci te poți da în ochi pentru faptul că ei și-au răspândit metodologiile de dezvoltare ca "lucrări - nu atingeți -> și iadul cu el" ca pe o ciumă în întreaga Runet;






2. Acele PC-uri sunt cele pe care le-am descris în pasul 1, cunosc acele PC-uri care scriu în mod normal, fără a folosi magia care este relevantă în PHP și încearcă doar să scrie un cod "curat";
3. Eu însumi scriu în PHP, dar nu mă consider eu unul dintre ei;
4. Am trecut deja la un stil de comunicare informal?
5. Dacă aceasta este o amenințare, atunci să ne confruntăm cu ea și vă voi spune totul (bine, dacă un astfel de băutură a dispărut);
6. Dacă nu sunteți de acord cu ceva - susțineți, pentru evaluarea dvs. emoțională nu am mers aici și dacă există ceva - să discutăm, cred că toți cei de aici ar fi încântați să aibă o conversație constructivă.

XpeH Petrovich. Oh, nu te întreba cineva, așa că toată lumea nu face parte din numărul lor) Ei bine, doar o armată invizibilă de programatori curbați, ca și goperii. Nimeni nu le vede, dar toți scriu și scriu.

1. Trebuie să mă las în ochi pentru faptul că cineva scrie prost? Cu același succes, vă dați în ochi rezultatul muncii "tovarășului în birou" și al celorlalți care scriu prost.
2. Toată lumea poate scrie înfricoșător. Dar, dintr-un anumit motiv, ați indicat numai fhthisani. Deci, acesta este rasismul! )
3. Nu mă cert nici măcar cu tine.
4. Fără pancake, acum voi purta o cravată și vă voi scrie scrisori certificate prin departamentul juridic.
5. Totul, nu mai mult! Glumeam)
6. Nu am nici o dorință să vă dovedesc ceva.

Stanislav Makarov Sunteți mai mult decât dreptate, dar tu și cu mine suntem conștienți de faptul că un client sau unul care este „mai sus“, de foarte multe ori nu iau în considerare ceea ce se va întâmpla - în cazul meu, partea principală a TK înregistrează ciudat mine (și, practic, 70 la suta) și de îndată ce încerc să dovedesc că „de sus“ este mai bine să investească acum și de a face bine (chiar dacă nu apar această nevoie) doar în cazul în care, spune el, „o fac acum pe genunchi,“ dreapta „a bazei de date este normalizat așa cum ar trebui, și-l arunca în seria serializată "(poate nu este utilă). Prin urmare, am o asemenea îngrijorare cu privire la stocarea acestor informații. Ei bine, da, nu există nici o configurare utilizator, dar chiar și în cazul în care informația este o matrice multidimensională - nu este la fel multidimensională și eterogenă că era imposibil să se normalizeze. Plus termeni. Normalizați complet la iad, bineînțeles, nu voiam, atomicitatea mai mult decât imagina.







Totul depinde de sarcină. Un exemplu este configurarea unui utilizator. Nu este practic nici un sens să-l stocăm în structura relațională. Nimeni nu va putea să facă statistici sau căutări în această configurație. Adăugarea unei noi proprietăți la config este să faceți caseta de selectare din șablon, vorbind figurat. O interogare a tras serializarea, a obținut matricea cu parametrii. PROFIT!

Trucul este că datele sunt încă normalizate. dar acestea sunt de tipul "nu foarte necesar", dar ar trebui să fie stocate, astfel încât prietenul senior a venit cu soluția "ingenios" descris mai sus) MongoDB a luat deja în considerare, voi trece la ea, pentru că este mai convenabil. și motorul de baze de date pe care-l avem, din păcate, MySQL, cu PostgreSQL lucrat puțin să o folosească în întregime (deși poate fi mutat)

Ei bine, dacă nu este nevoie să căutați aceste date, atunci de ce nu. Dar totuși nu este o idee proastă de a lua în considerare dimensiunea serializată dată, ca opțiune puteți folosi BLOB dacă nu sunt stocate într-un șir, ci în formă binară.

raiboon mă sperie de asemenea. în măsura în care înțeleg din mica mea experiență, cârjele au proprietatea de a deveni ca un bulgăre de zăpadă cu alte cârje. Proiectul opryatnenky în cele din urmă curat la început se transformă într-un rahat neînsoțit complet la sfârșitul anului, și în special în cazul meu - fie pentru că Dolby ism **, cum ar fi „Eu sunt șeful și voi proiecta și vei asculta“ sau din cauza neglijenței arhitectului, în cazul în care totuși el a decis să-l trimită pe PM'a cu abordările lui ridicole și să profite de abordarea ridicolă însuși. Un exemplu tipic este limbajul PHP în sine. array_search utilizate recent () și in_array (), ceva ce a trebuit să caute într-o matrice, dar am nevoie să știu unde este, și nu dacă există, în principiu, există. apoi sa dovedit că există un bug acum cinci ani, spun ei, PHP nu caută array_search (0, [array])

funcția recursivă a lui Tony are un mic bug. aceasta nu reușește atunci când o cheie este 0

PS. Aproximativ prin același principiu, aceștia au introdus prefixul array_ în toate funcțiile de lucru cu matrice, dacă vă amintiți - pentru că au ieșit din spațiul de nume și pentru a schimba cum este necesar deja, deoarece compatibilitatea înapoi.
ZY2. acest lucru este, bineînțeles, puțin subiectul, doar un strigăt al izbucnirii sufletului)

Un programator în duș.

Abordarea are loc atunci când aveți date nestructurate.
Dezavantajul acestei abordări este pur și simplu că nu puteți utiliza în mod normal, datele serializate în interogări + ar trebui să ia în considerare structura de date de înregistrare se modifică în timp (de exemplu, programul ar trebui să fie capabil să lucreze cu toate versiunile de date care sunt stocate în baza de date).







Trimiteți-le prietenilor: