Puncte:-1

Este posibil să găzduiți baza de date pe un server, dar datele reale pe altul?

drapel cn

Intenționăm să facem cercetări AI folosind un HPC. Acest HPC va folosi seturile de date pe care le-am creat. Aceste seturi de date sunt subseturi destul de mari ale întregului set de date (~1TB). Toate datele pe care le-am adunat din experimente vor fi stocate într-o bază de date SQL. Dorim să folosim interogări SQL pentru a prelua subseturi relevante din baza de date care sunt relevante la un moment dat - așa că pentru asta am dezvoltat un serviciu RESTful, care permite oamenilor să trimită interogări igienizate.

Există unele limitări care ne opresc în prezent configurarea.

Avem o gazdă pentru serviciul RESTful, dar folosirea spațiului de stocare de ~ 1 TB este o ultimă soluție și am prefera să găsim o modalitate alternativă de a face lucrurile. Mă întrebam dacă este posibil să găzduiești baza de date pe un server, dar datele reale se află pe un alt server? Astfel, atunci când cercetătorul trimite o interogare către serviciul RESTful, serverul SQL selectează ce fișiere să trimită, le returnează serviciului restful, serviciul restful returnează link-uri de descărcare către toate seturile de date.

Momentan, folosim MySQL pentru a stoca datele și o instanță de Flask pentru a permite cercetătorilor să trimită noi experimente și să le preia.

drapel cn
Întrebarea arată o lipsă de cunoștințe de bun simț pentru administratorii de sistem - iar OP a spus acest lucru clar. Acest lucru se reduce la recomandări de produse și elemente de bază ale predării, ambele în afara subiectului de pe acest site. Superuser.com este mai potrivit.
Puncte:3
drapel cn

Există trei componente aici

  • Flask, care vă deservește API-ul REST,
  • mysqld, care este instanța bazei de date care rulează și
  • fisierele de date a reușit de acea instanță a bazei de date.

Nu există niciun motiv pentru care Flask ar trebui să partajeze un server cu ceilalți doi și o mulțime de lucruri bune, motive de securitate pentru care nu ar trebui. Va fi perfect fericit, având în vedere ConnectionString corect pentru a se conecta la o instanță mysql care rulează pe un alt server.
Acesta este probabil cel mai bun loc pentru a vă „împărți” arhitectura.

Instanța bazei de date și fișierele sale de date ar trebui să fie „aproape” unul de celălalt posibil, adică cu cât mai puțin posibil să „ițină în cale” și să-ți destabilizați baza de date. (Într-adevăr, aș merge mai departe și aș sugera să le considerați ca o singură entitate, baza de date, și să uitați complet de „fișiere”).

Este bine să ai un server de baze de date cu dispozitive de disc atașate.

Alex Osheter avatar
drapel cn
Mulțumesc! Voi verifica dacă acest lucru este posibil. Din câte știu, furnizorul nostru are două niveluri - unul este un VM cu 1 TB de spațiu, iar celălalt este o soluție bazată pe ESS. Dacă este posibil să rulați o instanță de bază de date pe ESS, este destul de grozav. Dar nu știu dacă este posibil.
Puncte:1
drapel cn

Permiteți-mi să vă pun o întrebare - ce credeți că este orice SAN construit vreodată? O rețea de stocare înseamnă că datele se află pe o altă mașină, concepută special pentru asta. ISCSI este un protocol pentru expunerea stocării bazate pe blocuri (adică discuri virtuale, nu o partajare de fișiere). De ce crezi că există?

Deci, răspunsul evident este da.

Alex Osheter avatar
drapel cn
Ei bine, nu am auzit niciodată de SAN, așa că nu este atât de evident. Pentru un om de știință, acest lucru nu este _evident_. Ar fi grozav dacă ați putea extinde răspunsul dvs. - ce sunt SAN-urile? Cum funcționează? Este aceasta o soluție oferită de multe gazde? Este suportat de MySQL?
drapel cn
„Pentru un om de știință, acest lucru nu este evident” - acesta este un loc, conform regulilor site-ului, NUMAI pentru administratori, nu pentru oameni de știință. Un administrator de sistem care nu știe ce este un SAN... ei bine... așa că întrebarea este în afara subiectului aici.De asemenea, în calitate de om de știință, vă este rușine că nu încercați să găsiți ce este un SAN pe google.
drapel ua
Un SAN este o grămadă de discuri și un computer care nu are altceva de făcut decât să plaseze date între acele discuri și o rețea care are utilizatorul (cum ar fi motorul SQL) la celălalt capăt. Există o oarecare încetinire, dar este o modalitate excelentă de a obține seturi de date cu adevărat uriașe „online”. În zilele noastre, 1TB este destul de fezabil chiar și pe laptopul tău de acasă.
drapel cn
1 tb este fezabil chiar și pe o tabletă în zilele noastre.
Puncte:0
drapel de

Deci, practic, doriți să aveți datele dvs. pe un SQL-Server și un alt SQL-Server care extrage date de pe serverul SQL "principal" pentru inserări, actualizări, selectări și așa mai departe?

Dacă este cazul, atunci da. Puteți lega o bază de date de la un alt server la serverul dvs. MySQL.

Alex Osheter avatar
drapel cn
Nu. Există un singur server. Instanța MySQL rulează pe un server, dar datele din baza de date ar trebui să fie în altă parte.
SikorskyS60 avatar
drapel de
Deci, doriți să rulați mai multe instanțe de MySQL pe un singur server? Nu am încercat niciodată înainte, dar iată un [link](https://ubiq.co/database-blog/how-to-run-multiple-mysql-instances-on-same-machine/) care ar putea ajuta în acest caz:

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.