Perst
પર્સ્ટ એક ઓપન સોર્સ, ડ્યુઅલ લાઇસન્સ, ઓબ્જેક્ટ-ઓરિએન્ટેડ એમ્બેડેડ ડેટાબેઝ મેનેજમેન્ટ સિસ્ટમ (ODBMS) છે. જાવા પ્રોગ્રામિંગ લેંગ્વેજ અને સી #પ્રોગ્રામિંગ લેંગ્વેજ વર્ઝન બંને કોમ્પેક્ટ છે અને એન્ડ્રોઇડ અને વિન્ડોઝ ફોન (ડબલ્યુપી 7) ઓપરેટિંગ સિસ્ટમ્સ ચલાવતા સ્માર્ટ ફોન પર પર્સ્ટ લાગુ કરવામાં આવ્યું છે. હિસ્ટ્રી પર્સ્ટની શરૂઆત 2003માં રશિયામાં થઈ હતી. તે પ્રોગ્રામિંગ ભાષા સાથે ડેટાબેઝને ચુસ્ત રીતે એકીકૃત કરીને ઉચ્ચ પ્રદર્શન પ્રાપ્ત કરવા માટે ડિઝાઇન કરવામાં આવ્યું હતુંઃ પર્સ્ટ સીધા ભાષાના પદાર્થોમાં ડેટા સંગ્રહિત કરે છે. 2006માં ઇસાકાહ, ડબ્લ્યુ. એ. સ્થિત મેકઓબ્જેક્ટ એલ. એલ. સી. એ પર્સ્ટનો વિકાસ હાથ ધર્યો હતો. તે મફત ડાઉનલોડ ઓફર કરવાનું ચાલુ રાખે છે અને વ્યાપારી લાઇસન્સ વિકલ્પો ઉમેર્યા છે. પર્સ્ટ સૌપ્રથમ જાવામાં લખવામાં આવ્યું હતું, અને સી #પર પોર્ટ કરવામાં આવ્યું હતું. મૂળરૂપે ડેસ્કટૉપ-અને સર્વર-આધારિત સોફ્ટવેર માટે ડિઝાઇન કરવામાં આવ્યું હોવા છતાં, પર્સ્ટે સ્માર્ટફોન જેવા ઉપકરણો પર ચાલતી મોબાઇલ એપ્લિકેશનો માટે ડેટાબેઝ મેનેજમેન્ટ પ્રદાન કરવામાં પણ ઉપયોગ કર્યો છે. આ મોબાઇલ ઉપકરણોમાં સામાન્ય રીતે હાર્ડવેરની મર્યાદાઓ હોય છે, જેમાં મર્યાદિત રેમ અને થોડા સીપીયુ ચક્ર ઉપલબ્ધ હોય છે અને બિન-માનક (ડેટાબેઝ સિસ્ટમો માટે) સંચાલન જરૂરિયાતો (જેમ કે જાવા એમઇ માટે આધાર, અથવા વિન્ડોઝ ફોન 7 મોબાઇલ પ્લેટફોર્મમાં સિલ્વરલાઇટ) હોય છે. પર્સ્ટની હાલમાં ઉપલબ્ધ આવૃત્તિઓ. NET માટે પર્સ્ટ, જાવા માટે પર્સ્ટ અને પર્સ્ટ લાઇટ છે. જાવા અને પર્સ્ટ લાઇટ માટે પર્સ્ટ એક જ સોફ્ટવેર વિતરણમાં સંકલિત છે. ડોટ નેટ માટે પર્સ્ટ સમાન સ્રોત કોડ સાથે સી #આવૃત્તિઓ 1 અને 2 ને સપોર્ટ કરે છે. ચોક્કસ C #2 સુવિધાઓ (જેમ કે નમૂના વર્ગો) માટે આધાર સંકલન સમયે પ્રદાન કરવામાં આવે છે. તે પ્રમાણભૂત અને કોમ્પેક્ટ ડોટ નેટ માળખા તેમજ સિલ્વરલાઇટ બંને સાથે સુસંગત છે અને માઇક્રોસોફ્ટ વિન્ડોઝ ફોન 7 (ડબલ્યુપી 7) અને વિન્ડોઝ એમ્બેડેડ કોમ્પેક્ટ (અગાઉ વિન્ડોઝ સીઇ) બંને પર કામ કરી શકે છે. જાવા માટે પર્સ્ટ J2SE/J2EE આવૃત્તિઓ 1.3 અને 1.4, તેમજ J2SE/J2EE આવૃત્તિ 5 ને આધાર આપે છે. તે એન્ડ્રોઇડ સ્માર્ટફોન પર્યાવરણ સાથે સુસંગત છે. પર્સ્ટ લાઇટ એ જાવા અમલીકરણ માટેનું પર્સ્ટ છે જે જાવા એમઇ (જે2એમઇ) મોબાઇલ ઉપકરણ પ્લેટફોર્મ પર આધારિત ઉપકરણો (જેમ કે બ્લેકબેરી સ્માર્ટફોન) પર ચાલે છે. તેની મેમરી ફૂટપ્રિન્ટ પ્રમાણભૂત પર્સ્ટ કરતા લગભગ 30 ટકા નાની છે. વિગતવાર કદ પર્સ્ટ એન્જિનનું કદ સ્રોત કોડની 5,000 રેખાઓ છે, અને તેના રન ટાઇમ રેન્ડમ-એક્સેસ મેમરી (RAM) ની જરૂરિયાતો 30K થી 300K સુધીની છે.] ટ્રાન્ઝેક્શન પર્સ્ટ ટ્રાન્ઝેક્શન ઓટોમેટિક રિકવરી સાથે ACID ગુણધર્મો (અણુતા, સુસંગતતા, અલગતા, ટકાઉપણું) ને ટેકો આપે છે. ક્વેરીંગ પર્સ્ટ કન્ટેનર વર્ગના તત્વોને ફિલ્ટર કરવા માટે એસક્યુએલનો સબસેટ પ્રદાન કરે છે. સંગ્રહિત વસ્તુઓની પહોંચ માટે, પર્સ્ટ વિશિષ્ટ સંગ્રહ વર્ગોનો અમલ કરે છે જેમાં નીચેનાનો સમાવેશ થાય છેઃ બી-ટ્રી અનુક્રમણિકાઓ આર-ટ્રી અનુક્રમણિકાઓ ઇન-મેમરી ડેટાબેઝ કન્ટેનર વર્ગો જે ટી-ટ્રીઓ કે-ડી ટ્રી અનુક્રમણિકાઓ રેડિક્સ ટ્રી (પેટ્રિશિયા ટ્રાઇ) અનુક્રમણિકાઓ પર આધારિત છે ટાઇમ શ્રેણી વર્ગ નાના નિશ્ચિત-કદના પદાર્થો સાથે અસરકારક રીતે વ્યવહાર કરવા માટે, જેમ કે સ્ટોક અવતરણો જાડા અનુક્રમણિકાઓ (ઘણા ડુપ્લિકેટ્સ સાથે અનુક્રમણિકાઓ) અને બીટ અનુક્રમણિકાઓ (સંભવિત મૂલ્યોની મર્યાદિત સંખ્યા સાથેની કીઓ) માટે સંગ્રહની વિશેષ આવૃત્તિઓ સ્કીમા ઉત્ક્રાંતિ હાલની ડેટાબેઝ ડિઝાઇન (ડેટાબેઝ સ્કીમા) માં ફેરફારોને સરળ બનાવવા માટે, પર્સ્ટ "આળસુ" ડેટાબેઝ સ્કીમા ઉત્ક્રાંતિનો અમલ કરે છે. જ્યારે ડેટાબેઝમાંથી ઑબ્જેક્ટ ઇન્સ્ટન્સ લોડ કરવામાં આવે છે, ત્યારે તેના ક્લાસ ડિસ્ક્રીપ્ટરની સરખામણી એપ્લિકેશનમાં ક્લાસના ફોર્મેટ સાથે કરવામાં આવે છે. જો તેઓ સમાન ન હોય, અને પદાર્થને બદલવાનો હોય, તો પછી પદાર્થને રૂપાંતરિત કરવામાં આવે છે અને નવા સ્વરૂપમાં સંગ્રહિત કરવામાં આવે છે. "આતુર" યોજના સાથે ઉત્ક્રાંતિ સ્વરૂપમાં ફેરફારો એક જ સમયે ડેટાબેઝમાં પસાર થશે. વધારાની સુવિધાઓ કચરો સંગ્રહ ભાષા સંકલિત ક્વેરી (LINQ) XML આયાત/નિકાસ ઉપયોગિતાઓ માટે મલ્ટી-થ્રેડેડ સપોર્ટ માસ્ટર/સ્લેવ પ્રતિકૃતિ સપોર્ટ, સ્લેવ નોડ્સ પર ફક્ત વાંચવા માટેના પ્રશ્નો ચલાવવાના વિકલ્પ સાથે એસ્પેક્ટજે અને જેએએસિસ્ટ એસ્પેક્ટ-ઓરિએન્ટેડ પ્રોગ્રામિંગ ટૂલ્સ સાથે સંપૂર્ણ ટેક્સ્ટ સર્ચ એકીકરણ ઉદાહરણ અમલીકરણ પ્રોસ્કઆઉટ એ જાવા એમઇ વાતાવરણમાં પર્સ્ટ લાઇટનો ઉપયોગ કરવા માટે એક ડેમો મિડલેટ છે. આ પ્રદર્શન રમતગમતની ભરતી કરનાર માટે અલગ નોંધ લેવાની સુવિધાનું છે. મૂળરૂપે બ્લેકબેરી માટે લાગુ કરવામાં આવ્યું હતું, તે નોકિયા એસ 60 પર પણ તૈનાત કરવામાં આવ્યું છે. મેકઓબજેક્ટ. નેટ માટે પર્સ્ટનો ઉપયોગ કરીને સી. આર. એમ. સિસ્ટમની ડેમો એપ્લિકેશન પ્રદાન કરે છે, જેમાં સિલ્વરલાઈટમાં ડેસ્કટોપ બ્રાઉઝરમાં ચાલતા સંપૂર્ણ ટેક્સ્ટ-શોધી શકાય તેવા સંપર્ક ડેટાબેઝનો સમાવેશ થાય છે. અપ્પામુંડીના એન્ડી વિગલીએ આ ડેમો એપ્લિકેશનને વિન્ડોઝ ફોન પર પોર્ટ કરી અને બ્લોગ પોસ્ટિંગ્સની શ્રેણીમાં પ્રોજેક્ટનું વર્ણન કર્યું. લાઇસન્સિંગ વપરાશકર્તાઓ ફ્રી સોફ્ટવેર ફાઉન્ડેશન દ્વારા પ્રકાશિત જીએનયુ જનરલ પબ્લિક લાઇસન્સ (સંસ્કરણ 2 અથવા પછીનું) ની શરતો હેઠળ પર્સ્ટનું પુનઃવિતરણ અને/અથવા તેમાં ફેરફાર કરી શકે છે. જે વ્યક્તિઓ અથવા સંસ્થાઓ જી. પી. એલ. નું પાલન કરી શકતી નથી અથવા કરવા માંગતી નથી, તેમના માટે મેકઓબ્જેક્ટ પાસેથી વ્યાવસાયિક લાઇસન્સ ઉપલબ્ધ છે. સંદર્ભો મેકઓબ્જેક્ટ પર્સ્ટ પર બાહ્ય લિંક્સ-Java.Net મોબાઇલ અને એમ્બેડેડ કોમ્યુનિટી વેબસાઇટ પર પ્રોસ્કઆઉટ પૃષ્ઠો. ઓબ્જેક્ટ-ઓરિએન્ટેડ ડેટાબેઝ મેનેજમેન્ટ સિસ્ટમ્સ મફત ડેટાબેઝ મેનેજમેન્ટ સિસ્ટમ્સ એન્ડ્રોઇડ (ઓપરેટિંગ સિસ્ટમ) ડેવલપમેન્ટ સોફ્ટવેર એમ્બેડેડ ડેટાબેસેસ