Making SPACE: Secure and efficient runtimes for long-running agents
SPACE అనేది Perplexity యొక్క సురక్షితమైన, సమర్థవంతమైన శాండ్బాక్స్ ప్లాట్ఫారమ్, ఇది దీర్ఘకాలికంగా నడిచే ఏజెంటిక్ వర్క్ఫ్లోలకు మరియు వేగవంతమైన, వేరుచేయబడిన కోడ్ అమలుకు శక్తినిస్తుంది.
ఏజెంటిక్ వర్క్ఫ్లోలు మరింత దీర్ఘకాలికంగా మరియు మరింత స్వయంప్రతిపత్తితో పెరుగుతున్న కొద్దీ, AI ఏజెంట్లు పనిచేసే వాతావరణాలు వాటిని నడిపించే మోడళ్లంతే ముఖ్యం. ఏజెంట్లకు కోడ్ రన్ చేయడం, ఫైల్సిస్టమ్లను ఎడిట్ చేయడం మరియు గంటల తరబడి లేదా రోజుల తరబడి బహుళ-దశల పనులను అమలు చేయడం వంటి వాస్తవమైన పని చేయవలసి ఉంటుంది. వినియోగదారులు తమ పనులను పూర్తి చేయడానికి ఏజెంట్లకు అవసరమైన టూల్స్ మరియు ఫైల్లకు యాక్సెస్ ఉండాలని కోరుకుంటారు, అయితే ఏజెంట్లు రాజీ పడినా కూడా వారి సిస్టమ్లు సురక్షితంగా ఉంటాయని నమ్మకం ఉండాలి. ఇవన్నీ సాధ్యం చేసేది ఒక శాండ్బాక్స్: ఇది హోస్ట్, ఇతర టెనెంట్లు మరియు సున్నితమైన ఆధారాలు రక్షించబడుతున్నప్పటికీ, ఏజెంట్ స్వేచ్ఛగా పనిచేయగల ఒక వేరుచేయబడిన వాతావరణం.
సాంప్రదాయ కంటైనర్-ఆధారిత శాండ్బాక్స్ విధానాలు ఈ పనుల కోసం రూపొందించబడలేదు. అవి సాధారణంగా స్వల్పకాలిక, స్టేట్లెస్ జాబ్లను ఊహిస్తాయి మరియు వైఫల్యానికి ఒకే పాయింట్గా కెర్నల్ను కలిగి ఉంటాయి. దీనికి విరుద్ధంగా, ఏజెంట్ సెషన్లు దీర్ఘకాలికంగా మరియు స్టేట్ఫుల్గా ఉంటాయి: ఒక ఏజెంట్ గంటల కొద్దీ కాంటెక్స్ట్, వర్కింగ్ ఫైల్సిస్టమ్ మరియు రన్నింగ్ ప్రాసెస్లను కూడబెట్టుకుంటుంది, వాటిని సులభంగా పక్కన పడేయలేము మరియు మొదటి నుండి పునర్నిర్మించలేము. అంతేకాకుండా, లోపలి వర్క్లోడ్ డిఫాల్ట్గా నమ్మదగినదిగా ఉండకూడదు, దీనివల్ల బలమైన భద్రతా చర్యలు అవసరమవుతాయి. దీర్ఘకాలికంగా నడిచే ఏజెంట్ సెషన్లకు శత్రుపూరిత గెస్ట్ను వేరుచేయగల, దాని స్థితిని భద్రపరచగల మరియు ఇప్పటికీ పెద్ద ఎత్తున నిర్వహించగల సబ్స్ట్రేట్ అవసరం.
శాండ్బాక్స్ ఇంజనీరింగ్లో ప్రధాన సవాలు భద్రత, కార్యాచరణ మరియు సామర్థ్యం మధ్య తరచుగా ఉత్పన్నమయ్యే ఉద్రిక్తత నుండి వస్తుంది. ఉదాహరణకు:
విస్తృతమైన యాక్సెస్ను మంజూరు చేయడం వల్ల ఏజెంట్ ఎక్కువ సాధించగలదు కానీ మీరు నమ్మని వర్క్లోడ్కు సిస్టమ్లోని ఎక్కువ భాగాన్ని బహిర్గతం చేస్తుంది.
శాండ్బాక్స్ల మధ్య ఎక్కువ భాగస్వామ్యం చేయడం వల్ల సృష్టి వేగంగా జరుగుతుంది కానీ అటాక్ సర్ఫేస్ విస్తృతమవుతుంది.
మరింత తరచుగా స్నాప్షాట్ చేయడం వల్ల రికవరీ మెరుగుపడుతుంది మరియు రోల్బ్యాక్ వంటి ఫీచర్లు సాధ్యమవుతాయి కానీ దీనికి సమయం మరియు స్పేస్ అవసరం.
కోడ్ అమలు చేయడానికి, Agent Skills ఉపయోగించడానికి లేదా కంప్యూటర్ ప్రశ్నలలో Search as Code పైప్లైన్లను నిర్వహించడానికి అవసరమైన వాటిలాంటి ఏజెంటిక్ శాండ్బాక్స్లకు ఈ మూడూ అవసరం. మా ఉత్పత్తులకు శక్తినిచ్చే తదుపరి తరం ఏజెంట్ ఇన్ఫ్రాస్ట్రక్చర్ను ఇంజనీరింగ్ చేయడంలో మేము గత కొన్ని నెలలుగా తీవ్రంగా శ్రమించాము. ఈరోజు మేము SPACE (Sandboxed Platform for Agentic Code Execution)ను పరిచయం చేస్తున్నాము: ఇది సురక్షితమైన, నమ్మదగిన మరియు పెద్ద ఎత్తున సమర్థవంతమైన ఏజెంటిక్ వర్క్ఫ్లోల కోసం నిర్మించబడిన శాండ్బాక్స్ ప్లాట్ఫారమ్. గత నెలలో, Perplexity Computerకి శక్తినిచ్చే శాండ్బాక్స్ లేయర్గా మేము SPACEని రోల్ అవుట్ చేయడం ప్రారంభించాము. గత వారంలో, ఇది లక్షలాది శాండ్బాక్స్ సృష్తులను మరియు కోట్లాది రీకనెక్ట్లను సురక్షితంగా సపోర్ట్ చేసింది, దీని స్పిన్-అప్ సమయాలు మా మునుపటి పరిష్కారం కంటే 3-5 రెట్లు వేగంగా ఉన్నాయి.
ఈ వ్యాసం SPACE వెనుక ఉన్న ఆర్కిటెక్చరల్ మరియు డిజైన్ నిర్ణయాలను అందజేస్తుంది. నేటి నుండి, 100% Computer సెషన్లు ఇప్పుడు SPACEపై నడుస్తున్నాయి. మా వినియోగదారులకు మరియు డెవలపర్లకు అత్యుత్తమ ఏజెంటిక్ రన్టైమ్ను అందించడానికి ఈ ప్లాట్ఫారమ్ను మరింత ఎక్కువ ఉపరితలాలపై విస్తరించడానికి మేము ઉત્సాహంగా ఉన్నాము.
ఆర్కిటెక్చర్
ఉన్నత స్థాయిలో, సిస్టమ్ మూడు పొరలుగా నిర్వహించబడింది.
కంట్రోల్ ప్లేన్ అనేది సిస్టమ్ యొక్క మెదడు, ఇది ఏది ఉండాలి మరియు ఎక్కడ ఉండాలి అని నిర్ణయిస్తుంది. ఇది API గేట్వే మరియు క్లస్టర్-స్థాయి స్టేట్ మేనేజ్మెంట్ మాడ్యూళ్లను కలిగి ఉంటుంది.
నోడ్-స్థానిక సేవలు అనేవి కంట్రోల్ ప్లేన్ ప్రణాళికను అమలు చేయడానికి అవసరమైన స్థానిక యంత్రాలు. ఇవి శాండ్బాక్స్ లైఫ్సైకిల్, స్టోరేజ్, నెట్వర్కింగ్ మరియు వాటి వెనుక ఉన్న ప్రివిలేజ్డ్ ఆపరేషన్లను స్వంతం చేసుకుంటాయి.
శాండ్బాక్స్ అనేది వేరుచేయబడిన ఎగ్జిక్యూషన్ వాతావరణం. ఇది వర్చువల్ మెషీన్గా space-డేమన్తో జత చేయబడి అమలు చేయబడుతుంది: ఇది గెస్ట్ లోపల ఉండే బ్యాక్గ్రౌండ్ ప్రాసెస్, ఇది వర్క్లోడ్ కోసం ఫైల్సిస్టమ్, ప్రాసెస్ మరియు నెట్వర్క్ యాక్సెస్ను బ్రోకర్ చేస్తుంది.

కంట్రోల్ ప్లేన్
API గేట్వే అనేది ఎంట్రీ పాయింట్. ఇన్కమింగ్ అభ్యర్థనలు ప్రమాణీకరించబడతాయి మరియు అధికారికం చేయబడతాయి, ఆపై కావలసిన స్థితి యొక్క రికార్డులుగా అనువదించబడతాయి.
కంట్రోల్ ప్లేన్ డిజైన్ ద్వారా స్టేట్లెస్గా ఉంటుంది, శాశ్వత సమాచారమంతా షేర్డ్ డేటాబేస్కు ఆఫ్లోడ్ చేయబడుతుంది. ఇది శాండ్బాక్స్లపై క్లస్టర్-స్థాయి సమాచారాన్ని ట్రాక్ చేస్తుంది, ఉదాహరణకు అవి ఏ నోడ్కు కేటాయించబడ్డాయి, ఎక్కడ రన్ అవుతున్నాయి మరియు స్థిరమైన నిల్వకు బ్యాకప్ చేయబడ్డాయా లేదా అనేది. ఇది కావలసిన స్థితిని గమనించిన స్థిరత్వంతో నిరంతరం పోల్చుతుంది మరియు రెండింటినీ కన్వర్జెన్స్ వైపు నడిపిస్తుంది. ఆపరేషన్లు ఐడెంపోటెంట్, కాబట్టి కంట్రోల్ ప్లేన్ ఏదైనా క్రాష్, రీస్టార్ట్ లేదా పాక్షిక వైఫాలయం తర్వాత స్వయంచాలకంగా కోలుకోగలదు.
నోడ్-స్థానిక సేవలు
నోడ్-స్థానిక సేవలు టెంప్లేట్లను సిద్ధం చేయడం, శాండ్బాక్స్లను ప్రారంభించడం, నెట్వర్కింగ్ను వైరింగ్ చేయడం మరియు హోస్ట్-సైడ్ రన్టైమ్ సేవలను రన్ చేయడం వంటి వాస్తవమైన పనిని చేస్తాయి. ప్రతి నోడ్ దానిపై ఉంచబడిన ప్రతి శాండ్బాక్స్ను నిర్వహించే చిన్న సెట్ డేమన్లను రన్ చేస్తుంది, మరియు ఆ శాండ్బాక్స్ల లైవ్ స్టేట్ల కోసం నోడే నిజమైన మూలం.
శాండ్బాక్స్ మేనేజర్కు ఏ శాండ్బాక్స్లు రన్ అవుతున్నాయి, పాజ్ చేయబడ్డాయి, సస్పెండ్ చేయబడ్డాయి లేదా ఆపివేయబడ్డాయి అనేవి వాటి వాస్తవ వనరులతో సహా తెలుసు. ఇది అన్ప్రివిలేజ్డ్గా నడుస్తుంది మరియు అన్ని ప్రివిలేజ్డ్ పనిని నోడ్ మేనేజర్కు డెలిగేట్ చేస్తుంది, ఇది అంతర్లీన ప్రిమిటివ్లను బ్రోకర్ చేసే సింగిల్ రూట్ ప్రాసెస్. స్టోరేజ్ స్థానికంగా మరియు మన్నికగా నిర్వహించబడుతుంది: ప్రస్తుత శాండ్బాక్స్ స్థితుల స్నాప్షాట్లు నోడ్లో సేవ్ చేయబడతాయి, మరియు క్రాస్-నోడ్ ఆపరేషన్లను ప్రారంభించడానికి అవసరమైనప్పుడు వాల్యూమ్ మేనేజర్ స్నాప్షాట్లు మరియు టెంప్లేట్లను ఆబ్జెక్ట్ స్టోరేజ్కు మరియు నుండి తరలిస్తుంది. సేఫ్టీ గేట్లు శాండ్బాక్స్ దేనిని చేరుకోగలదో కాపలా కాస్తాయి: క్రెడెన్షియల్ మేనేజర్ प्रति-సేవ్ అధీకృత క్రింద క్రెడెన్షియల్ ఇన్జెక్షన్ను నియంత్రిస్తుంది, మరియు నెట్వర్క్ గేట్వే ప్రతి శాండ్బాక్స్ ఎగ్రెట్ పాలసీని అమలు చేస్తుంది.
శాండ్బాక్స్
శాండ్బాక్స్ స్వయంగా హార్డ్వేర్ ఐసోలేషన్ బౌండరీ వెనుక వినియోగదారు వర్క్లోడ్ను రన్ చేసే దాని స్వంత గెస్ట్ కెర్నల్తో కూడిన వర్చువల్ మెషీన్ (VM). ప్రతి శాండ్బాక్స్కు దాని సొంత కెర్నల్ ఉండటం వల్ల, రాజీ పడిన వర్క్లోడ్ వైఫల్యానికి ఒకే పాయింట్గా షేర్డ్ హోస్ట్ కెర్నల్పై ఆధారపడలేదు; అది తన గెస్ట్ కెర్నల్ను విజయవంతంగా దోపిడీ చేసినప్పటికీ, ఆ రాజీ ఇతర వర్క్లోడ్ల అంతటా వ్యాపించకుండా శాండ్బాక్స్ యొక్క VM బౌండరీకి మాత్రమే పరిమితం చేయబడుతుంది.
ప్రతి వర్చువల్ మెషీన్ లోపల ఒక space డేమన్ నడుస్తుంది, ఇది ప్లాట్ఫారమ్ గెస్ట్ లోపల నిర్వహించే ప్రతి చర్య లేదా మార్పును నియంత్రించే తేలికపాటి ఏజెంట్గా పనిచేస్తుంది. ఇది ఫైల్సిస్టమ్ యాక్సెస్ మరియు ప్రాసెస్ మేనేజ్మెంట్ను నిర్వహిస్తుంది. ఇది గెస్ట్ సిద్ధంగా ఉందో లేదో నివేదిస్తుంది మరియు కార్యాచరణను ట్రాక్ చేస్తుంది, తద్వారా శాండ్బాక్స్ ఎప్పుడు నిష్క్రియంగా మారిందో మరియు పాజ్ చేయవచ్చో లేదా తిరిగి పొందవచ్చో ప్లాట్ఫారమ్కు తెలుస్తుంది. ముఖ్యం ఏమిటంటే, space డేమన్ క్లైంట్లతో నేరుగా మాట్లాడదు కానీ ప్రైవేట్ ఇన్-VM ఛానెల్ ద్వారా హోస్ట్తో కమ్యూనికేట్ చేస్తుంది. ఇది గెస్ట్ పరస్పర చర్యలన్నింటినీ నియంత్రిత మార్గంలో ఉంచుతుంది మరియు శాండ్బాక్స్ యొక్క స్వంత నెట్వర్క్ను వర్క్లోడ్ యొక్క అవుట్బౌండ్ ట్రాఫిక్ కోసం పూర్తిగా రిజర్వ్ చేస్తుంది.
మూడు స్థంబాలు: భద్రత, కార్యాచరణ మరియు సామర్థ్యం
తరువాత, మేము భద్రత, కార్యాచరణ మరియు సామర్థ్యం అనే మూడు స్తంభాలలో SPACE అందించాల్సిన కీలకమైన లక్షణాలలోకి ప్రవేశిస్తాము. ముందుగా చెప్పినట్లుగా, ఈ మూడూ ఒకదానికొకటి వ్యతిరేకంగా లాగుతాయి. అయినప్పటికీ, నేటి మోడల్ సామర్థ్యాలకు సరిపోయే శక్తివంతమైన ఏజెంట్లకు మద్దతు ఇవ్వాలంటే మనం వాటిలో రాజీపడలేము. భద్రత అనేది నమ్మదగినది కాని, బహుశా శత్రుపూరితమైన వర్క్లోడ్ హోస్ట్, ఇతర టెనెంట్లు లేదా వినియోగదారు రహస్యాలకు హాని చేయకుండా నిరోధిస్తుంది. కార్యాచరణ ఏజెంట్లకు అవసరమైన రిచ్ లైఫ్సైకిల్ను అందిస్తుంది. పరిమితమైన మెమరీ, డిస్క్ మరియు కంప్యూట్ కింద ఇవన్నీ సరసమైన ధరలో ఉండేలా సామర్థ్యం చేస్తుంది.
భద్రత: డేటా మరియు సిస్టమ్లను రక్షించడం
శాండ్బాక్స్ల లోపల రన్ చేయబడిన పొరపాటు లేదా హానికరమైన కోడ్ కూడా మరెక్కడా హానికరమైన ప్రభావాలను కలిగి ఉండకుండా చూసుకోవడానికి శాండ్బాక్స్ ప్లాట్ఫారమ్లకు బలమైన భద్రత అవసరం. గట్టి ఎగ్రెట్ నియంత్రణను అమలు చేయకుండా మరియు శాండ్బాక్స్ నుండి రహస్యాలను దూరంగా ఉంచకుండా, ఏజెంట్ చేసే ఒకే ఒక్క తప్పు అడుగు వినియోగదారు కీలను లీక్ చేయవచ్చు లేదా పనిని బయటకు తీసుకెళ్లవచ్చు.

SPACE శాండ్బాక్స్ల భద్రతను నిర్ధారించడానికి లేయర్డ్ విధానాన్ని తీసుకుంటుంది. శాండ్బాక్స్ ఐసోలేషన్లో రెండు భాగాలు ఉన్నాయి, VM ఐసోలేషన్ మరియు హోస్ట్ OS ప్రాసెస్ ఐసోలేషన్. క్రాస్-శాండ్బాక్స్ యాక్సెస్ కోసం రెండూ ఉల్లంఘించబడాలి. శాండ్బాక్స్తో కమ్యూనికేషన్ ఖచ్చితంగా నియంత్రించబడుతుంది; ప్రాసెస్లు అంకితమైన ఛానెళ్ల ద్వారా మాత్రమే కమ్యూనికేట్ చేయగలవు. నెట్వర్క్ గేట్వే అన్ని ఎగ్రెట్ను దాని గుండా బలవంతంగా పంపుతుంది. (నమ్మదగినది కాని) శాండ్బాక్స్కు మరియు (నమ్మదగిన) ప్లాట్ఫారమ్కు మధ్య space డేమన్ మాత్రమే ఆమోదించబడిన ఛానెల్.
ఏజెంట్ దొంగిలించగల చోట క్రెడెన్షియల్స్ ఎప్పటికీ ఉండవు. క్రెడెన్షియల్ స్టోర్ శాండ్బాక్స్ బౌండరీ వెలుపల ఉంటుంది మరియు క్రెడెన్షియల్ లైఫ్సైకిల్కు బాధ్యత వహిస్తుంది. ఇది ప్లాగ్ చేయదగిన వాల్ట్ బ్యాకెండ్ ద్వారా రహస్యాలను నిల్వ చేస్తుంది మరియు తిరిగి పొందుతుంది, శ్రేణీకృత స్కోపింగ్ ఉపయోగించి క్రెడెన్షియల్స్ను పరిష్కరిస్తుంది, ఇన్జెక్షన్ పద్ధతి మరియు గడువు ముగింపు వంటి మెటాడేటాను నిర్వహిస్తుంది మరియు అన్ని యాక్సెస్లపై రేట్ పరిమితులు మరియు ఆడిట్ లాగింగ్ను అమలు చేస్తుంది. అవసరమైనప్పుడు, శాండ్బాక్స్లోకి నేరుగా ప్రవేశించడానికి బదులుగా, క్రెడెన్షియల్స్ నెట్వర్క్ లేయర్లో ఇన్జెక్ట్ చేయబడతాయి లేదా బ్రౌజర్ ఏజెంట్ ద్వారా ఆటో-ఫిల్ చేయబడతాయి.
డేటా రెస్ట్లో రక్షించబడుతుంది. బాహ్యంగా నిల్వ చేయబడిన డేటాను రక్షించడానికి SPACE BYOK (Bring Your Own Key) కి మద్దతు ఇస్తుంది. ఎన్క్రిప్షన్ కీలు కస్టమర్ కీ మేనేజ్మెంట్ సర్వీస్ నుండి వస్తాయి మరియు శాండ్బాక్స్లోకి ఎప్పటికీ ప్రవేశించవు. ఎంటర్ప్రైజ్ కీని రద్దు చేస్తే, వారి డేటా చదవడానికి వీలు లేకుండా పోతుంది.
కార్యాచరణ: ఏజెంటిక్ వర్క్ఫ్లోలకు శక్తినివ్వడం
ఏజెంటిక్ వర్క్ఫ్లోలకు మద్దతు ఇవ్వడానికి, శాండ్బాక్స్లకు రిచ్ లైఫ్సైకిల్ మద్దతు అవసరం. ఒక ఏజెంట్ ఒకేసారి అనేకంటిని స్పిన్ అప్ చేయవచ్చు మరియు వాటిలో ఏది బూట్ కావడానికి వేచి ఉండకూడదు కాబట్టి, అవి త్వరగా మరియు పెద్ద ఎత్తున సృష్టించబడాలి. సెషన్ నిమిషాల పాటు ఉండవచ్చు లేదా నెలల తరబడి రన్ కావచ్చు కాబట్టి, అవి అనిశ్చిత కాలం పాటు కొనసాగాలి. టాప్ మానవ ఇన్పుట్ వద్ద నిరోధించబడినప్పుడు వంటి దీర్ఘకాలాల పాటు, అవి శుభ్రంగా పాజ్ చేయగలగాలి. మరియు అవి ఫోర్కింగ్, రోల్బ్యాక్ మరియు క్రాష్ రికవరీకి మద్దతు ఇవ్వాలి, తద్వారా సెషన్ మొదటి నుండి ప్రారంభించడానికి బదులుగా బ్రాంచ్ కావచ్చు, చెడ్డ అడుగును అన్డు చేయవచ్చు లేదా లోపం తర్వాత పునఃప్రారంభించవచ్చు.
SPACE పైన పేర్కొన్న అన్నింటికీ మద్దతు ఇస్తుంది. ఇది పూర్తి శాండ్బాక్స్ లైఫ్సైకిల్ను స్పష్టమైన స్టేట్ మెషీన్గా మోడల్ చేస్తుంది, ఇది సృష్టించు, పాజ్, రెజ్యూమ్, సస్పెండ్ మరియు పునరుద్ధరించు వంటి ఆపరేషన్లను సాధ్యం చేస్తుంది.

ఈ సామర్థ్యాలలో చాలా వరకు అడుగున ఉన్న యంత్రాంగం స్నాప్షాట్లు. షెడ్యూలర్ క్రమం తప్పకుండా టిక్ చేస్తుంది మరియు రెండు రకాల స్నాప్షాట్లను క్యాప్చర్ చేస్తుంది: డిస్క్ స్నాప్షాట్లు (ఫైల్సిస్టమ్ యొక్క పాయింట్-ఇన్-టైమ్ కాపీలు) మరియు పూర్తి స్నాప్షాట్లు (మొత్తం పాజ్ చేయబడిన VM యొక్క చెక్పాయింట్లు). డిస్క్ స్నాప్షాట్లు తరచుగా క్యాప్చర్ చేయబడతాయి, అయితే పూర్తి చెక్పాయింట్లు తక్కువ తరచుగా ఉంటాయి. ప్రతిదీ నోడ్లో ఉంటుంది, మరియు రిటెన్షన్ శ్రేణి ద్వారా క్షీణిస్తుంది. ఈ స్నాప్షాట్లను ఇన్-సెషన్ రికవరీ కోసం ఉపయోగించవచ్చు; ఉదాహరణకు, విధ్వంసక ఆదేశాన్ని అన్డు చేయడానికి ఫైల్సిస్టమ్ను వెనక్కి మార్చడానికి డిస్క్ స్నాప్షాట్లను ఉపయోగించవచ్చు, మరియు కోల్డ్ డిస్క్కు బదులుగా ఇటీవలి రన్నింగ్ పాయింట్ వద్ద క్రాష్ అయిన శాండ్బాక్స్ పునఃప్రారంభించడానికి పూర్తి చెక్పాయింట్లు అనుమతిస్తాయి.
శాండ్బాక్స్ సస్పెండ్ చేయబడినప్పుడు, VM పాజ్ చేయబడుతుంది, పూర్తి స్నాప్షాట్ తీసుకోబడుతుంది మరియు పూర్తి స్నాప్షాట్ నుండి ఆర్టిఫ్యాక్ట్లు ఆబ్జెక్ట్ స్టోరేజ్కి అప్లోడ్ చేయబడతాయి. డేటాబేస్ రో స్నాప్షాట్ను ట్రాక్ చేస్తుంది మరియు ప్రతి ఆర్టిఫ్యాక్ట్ ల్యాండ్ అయిన తర్వాత మాత్రమే పునరుద్ధరించదగినదిగా మಾಗುತ್ತದೆ, కాబట్టి పాక్షికంగా అప్లోడ్ చేయబడిన స్నాప్షాట్ ఎప్పటికీ కరప్ట్ స్థితిలోకి పునఃప్రారంభించబడదు. పునరుద్ధరణ అనేది సస్పెండ్కి విరుద్ధమైనది. స్నాప్షాట్ అసలు నోడ్లో కాకుండా ఆబ్జెక్ట్ స్టోరేజ్లో ఉంటుంది కాబట్టి, ఏ నోడ్ అయినా శాండ్బాక్స్ను వెనక్కి తీసుకురాగలదు. షెడ్యూలర్ ఒక నోడ్ను ఎంచుకుంటుంది, ఆ నోడ్ ఆర్టిఫ్యాక్ట్లను డౌన్లోడ్ చేస్తుంది, టెంప్లేట్ పైన ఫైల్సిస్టమ్ డెల్టాను మళ్లీ వర్తింపజేస్తుంది మరియు క్యాప్చర్ చేయబడిన స్థితి నుండి VMని పునఃప్రారంభిస్తుంది.
సామర్థ్యం: సమయం మరియు స్పేస్ను ఆప్టిమైజ్ చేయడం
উপরಿನ ఫీచర్లను శూన్యంలో అమలు చేయడం సరిపోదు; గట్టి వనరుల పరిమితుల క్రింద కూడా అవి సాధ్యం కావాలి. నోడ్లో మెమరీ మరియు డిస్క్ పరిమితంగా ఉంటాయి, మరియు వినియోగదారులు ఏజెంట్లు వీలైనంత త్వరగా పనిచేయాలని కోరుకుంటారు, కాబట్టి లైఫ్సైకిల్ ఆపరేషన్లు సమయం మరియు స్పేస్ రెండింటిలోనూ చౌకగా ఉండాలి. శాండ్బాక్స్ సృష్టించబడిన ప్రతిసారీ, పాజ్ చేయబడిన ప్రతిసారీ లేదా బ్రాంచ్ చేయబడిన ప్రతిసారీ పూర్తి మెషిన్ ఇమేజ్ను కాపీ చేయడానికి మనకు స్థోమత లేదు.
ఒక కీలకమైన డిజైన్ ఎంపిక దీన్ని సాధ్యం చేస్తుంది: ఫైల్సిస్టమ్. SPACE శాండ్బాక్స్ స్టోరేజ్ కోసం ఆన్-నోడ్ ఫైల్సిస్టమ్గా btrfsని ఉపయోగిస్తుంది. Btrfs (B-tree filesystem) కాపీ-ఆన్-రైట్ ఫైల్సిస్టమ్ను ఇంటిగ్రేటెడ్ లాజికల్ వాల్యూమ్ మేనేజ్మెంట్తో మిళితం చేస్తుంది. దీని వల్ల కొన్ని ప్రయోజనాలు ఉన్నాయి:
రెఫ్లింక్ కాపీలు వేగంగా ఉంటాయి, ఎందుకంటే మీరు అంతర్లీన ఎక్స్టెంట్లను షేర్ చేస్తారు, కాబట్టి మెటాడేటాను మాత్రమే కాపీ చేయాల్సి ఉంటుంది.
మీరు కొత్త రూట్ను మాత్రమే సృష్టిస్తారు కాబట్టి స్నాప్షాట్లు అటామిక్ మరియు వేగంగా ఉంటాయి.
మారినదాన్ని మాత్రమే మీరు నిల్వ చేస్తారు కాబట్టి కనిష్ట నిల్వ అవసరం.
దీని ఫలితంగా, శాండ్బాక్స్లు త్వరగా సృష్టించబడతాయి మరియు పునరుద్ధరించబడతాయి. ప్రతిసారీ మొదటి నుండి శాండ్బాక్స్ను సృష్టించడానికి బదులుగా, డిస్క్పై సాధారణ టెంప్లేట్లు ఇప్పటికే మెటీరియలైజ్ చేయబడిన పాడ్ల వెచ్చని పూల్ను మేము ఉంచుతాము, మరియు టెంప్లేట్ ఇప్పటికే సరిపోయే పాడ్కు బైండ్ చేయడం ద్వారా అభ్యర్థనను నెరవేరుస్తాము. ఆ శాండ్బాక్స్కు దాని స్వంత రైటబుల్ రూట్ ఫైల్సిస్టమ్ను ఇవ్వడం అనేది పూర్తి కాపీకి బదులుగా కాపీ-ఆన్-రైట్ క్లోన్ అవుతుంది. ఏ వెచ్చని పాడ్ సరిపోనప్పుడు, మేము డిమాండ్పై టెంప్లేట్ను మెటీరియలైజ్ చేస్తాము; ఒకే ఇమేజ్ కోసం ఏకకాలంలో వచ్చే అభ్యర్థనలను একক డౌన్లోడ్గా కుదిస్తాము, తద్వారా ఒకే రకమైన అభ్యర్థనల బర్స్ట్ ఒకే రకమైన పని బర్జాగా మారదు.
ఫలితంగా ఏజెంటిక్ రన్టైమ్ ఒకే సమయంలో శక్తివంతమైనది, తేలికపాటిది మరియు అత్యంత వేగవంతమైనది. మేము SPACEని రోల్ అవుట్ చేసినప్పుడు, అదే ప్రొడక్షన్ ట్రాఫిక్పై మా మునుపటి శాండ్బాక్స్ ప్రొవైడర్తో పాటు దీన్ని రన్ చేసాము. లాంచ్ వారం అంతటా, SPACE డిస్ట్రిబ్యూషన్ అంతటా మూడు నుండి ఐదు రెట్లు వేగంగా శాండ్బాక్స్లను సృష్టించింది. ప్రత్యేకించి, మధ్యస్థ సృష్టి లేటెన్సీ 185 మిలిసెకండ్ల నుండి 60 మిలిసెకండ్లకు పడిపోయింది (3.1x మెరుగుదల), మరియు 90వ శాతాపు లేటెన్సీ 447 మిలిసెకండ్ల నుండి 89 మిలిసెకండ్లకు పడిపోయింది (5.0x మెరుగుదల). ఇతర పనితీరు మరియు వనరుల వినియోగ సూచికలలో కూడా మేము ఇలాంటి ఆర్డర్-ఆఫ్-మాగ్నిట్యూడ్ మెరుగుదలలను గమనించాము.

ఇది రోలింగ్ డిస్క్ స్నాప్షాట్లను తీసుకోవడాన్ని కూడా సులభతరం చేస్తుంది, ఎందుకంటే అవి వేగంగా ఉంటాయి, స్పేస్ సమర్థవంతమైనవి మరియు శాండ్బాక్స్ను పాజ్ చేయవలసిన అవసరం లేదు. మరియు, సమర్థవంతమైన డెల్టా స్టోరేజ్ ఈ స్నాప్షాట్లను నిల్వ చేయడానికి అవసరమైన స్పేస్ను తగ్గిస్తుంది.
ముగింపు
సంక్లిష్టమైన సిస్టమ్లను డిజైన్ చేసేటప్పుడు, ఐసోలేషన్లో ఆప్టిమైజ్ చేయడానికి ఒకే లక్ష్యాన్ని ఎంచుకోవడం ఆకర్షణీయంగా ఉంటుంది. కానీ ఫ్రాంటియర్ ఏజెంట్ల డెవలపర్లు సమాన కొలతలో భద్రత, కార్యాచరణ మరియు సామర్థ్యాన్ని కోరుకుంటారు. SPACEతో, మేము మూడు స్తంభాలలోనూ పరేటో మెరుగు సాధించడానికి బయలుదేరాము.
ప్రతి వ్యక్తిగత డిజైన్ ఎంపిక ఒకేసారి బహుళ లక్ష్యాలకు సేవ చేయగలదు, ఈ సున్నితమైన సమతుల్యతను సాధ్యం చేస్తుంది. ప్రతి-శాండ్బాక్స్ VMలు ప్రతి వర్క్లోడ్కు దాని নিজস্ব కెర్నల్ను ఇస్తాయి, బలమైన ఐసోలేషన్ ద్వారా భద్రతను బలపరుస్తాయి మరియు స్నాప్షాట్లు ఆధారపడే క్లీన్ చెక్పాయింట్ బౌండరీని కూడా అందిస్తాయి. Btrfs స్నాప్షాటింగ్, ఫోర్కింగ్ మరియు ఏజెంటిక్ రన్టైమ్లకు అవసరమైన ఇతర ఆపరేషన్ల సమర్థవంతమైన అమలును ప్రారంభిస్తుంది. space డేమన్ గెస్ట్-హోస్ట్ బౌండరీని సీల్ చేస్తూ, ఏజెంట్ల కదలిక స్వేచ్ఛను సంరక్షిస్తూ, గెస్ట్ పరస్పర చర్యలన్నింటినీ నియంత్రిత హోస్ట్-సైడ్ మార్గంలో ఉంచుతుంది. సెంట్రల్ నెట్వర్క్ గేట్వే గెస్ట్కు ఎప్పటికీ రహస్యాలను బహిర్గతం చేయకుండా ఎగ్రెట్ మరియు క్రెడెన్షియల్ ఇన్జెక్షన్ను మధ్యవర్తిత్వం చేస్తుంది.
ఈ మరియు ఇతర డిజైన్ నిర్ణయాల ఫలితంగా పెద్ద ఎత్తున వాస్తవ ప్రపంచ ఏజెంట్ ఆర్కెస్ట్రేషన్ను ప్రారంభించే ప్లాట్ఫారమ్ తయారైంది. SPACE పనితీరు లేదా భద్రతలో రాజీ పడకుండా, దీర్ఘకాలికంగా నడిచే, స్టేట్ఫుల్ ఏజెంట్లు ఏకపక్ష సంక్లిష్టత లేదా వ్యవధి గల పనిని సురక్షితంగా ఎదుర్కోగల సబ్స్ట్రేట్ను అందిస్తుంది.
నేడు, SPACE ఇప్పటికే మిలియన్ల కొద్దీ Perplexity Computer సెషన్లకు శక్తినిస్తోంది. Linux మైక్రోVMల నుండి Windows గెస్ట్ల వరకు వినియోగదారు స్వంత స్థానిక మెషీన్ వరకు ఏ సెట్టింగ్లోనైనా శాండ్బాక్స్లను ప్రొవిజనింగ్ చేయడానికి మరియు నియంత్రించడానికి SPACE ఒక ఏకీకృత పొరగా సేవ చేయాలని మేము భావిస్తున్నాము. డెవలపర్లు వినియోగదారులు ఎక్కడ పనిచేస్తే అక్కడ పనిచేసే AI ఉత్పత్తులను రవాణా చేయడానికి వీలుగా SPACEని ఈ కొత్త సెట్టింగ్లలోకి నెట్టడానికి మేము తీవ్రంగా కృషి చేస్తున్నాము.
రేపటి ఫ్రాంటియర్ ఏజెంట్లను నడిపించే కంప్యూట్ లేయర్ను రూపొందించడానికి మీరు ఆసక్తిగా ఉంటే, మా join our team కి ఆహ్వానిస్తున్నాము.