દરેક Mythex એપને પોતાનો ડેટાબેઝ કેમ મળે છે
જ્યારે તમે Mythex પર બનાવેલી એપને ડેટા સાચવવાની જરૂર પડે — સાઇન-અપ, બુકિંગ, ઓર્ડર — ત્યારે Mythex તે પ્રોજેક્ટને પોતાનો Postgres ડેટાબેઝ આપે છે. શેર કરેલા ડેટાબેઝમાં ટેબલ નહીં, કોઈના બાજુમાં સ્કીમા નહીં: એક અલગ ડેટાબેઝ, માંગ પર બનાવાયેલો, જે કોઈ વાપરતું ન હોય ત્યારે સૂઈ જાય છે. અમે તેને આ રીતે કેમ બનાવ્યું અને તેની કિંમત શું છે તે અહીં છે.
તમને શું મળે છે
જ્યારે તમે ડેટા માંગો (“waitlist ઈમેઇલ સાચવો”, “બુકિંગ સ્ટોર કરો”) અથવા /database કમાન્ડ વાપરો, ત્યારે Mythex:
- પ્રોજેક્ટ માટે એક સમર્પિત Postgres ડેટાબેઝ બનાવે છે (હાલ Postgres 17),
- કનેક્શન વિગતો તમારા વર્કસ્પેસ અને પબ્લિશ થયેલી એપમાં એન્વાયરનમેન્ટ વેરિએબલ તરીકે મૂકે છે, જેથી તે ક્યારેય તમારા કોડમાં દેખાય નહીં, અને
- એજન્ટને તમારા માટે ટેબલ બનાવવા અને ડેટા વાંચવા-લખવાની મંજૂરી આપે છે.
એ જ ડેટાબેઝ લાઇવ પ્રિવ્યૂ અને પબ્લિશ થયેલી એપ બંને વાપરે છે. તે 5 નિષ્ક્રિય મિનિટ પછી સૂઈ જાય છે અને આગલી ક્વેરી પર જાગે છે. નવા ડેટાબેઝ નાના શરૂ થાય છે અને લોડ હેઠળ વધી શકે છે, એક મર્યાદા સાથે જેથી કોઈ બેફામ ક્વેરી તેને અમર્યાદિત રીતે મોટો ન કરી શકે. વધુ માહિતી ડેટાબેઝ ડૉક્સ માં.
એક મોટો શેર કરેલો ડેટાબેઝ કેમ નહીં?
એક શેર કરેલો ડેટાબેઝ, જેમાં દરેક રો કઈ એપની છે તે કહેતો કૉલમ હોય, ચલાવવામાં સસ્તો અને સંચાલનમાં સરળ છે. અમે ચાર કારણોસર તે ન કરવાનું પસંદ કર્યું.
1. એવી આઇસોલેશન જેના પર તમારે ભરોસો કરવો ન પડે
AI-લખાયેલો કોડ ભૂલો કરે છે. શેર કરેલા ડેટાબેઝમાં, એક એપની ક્વેરીમાં ગુમ થયેલું WHERE app_id = … બીજા ગ્રાહકનો ડેટા વાંચી કે ઓવરરાઇટ કરી શકે. દરેક એપ માટે એક ડેટાબેઝ હોય તો, બીજા કોઈ ગ્રાહકનો ડેટા પહોંચમાં નથી — ભૂલ પોતાની એપમાં જ રહે છે.
2. તે અસલી Postgres છે, માલિકીનો સ્તર નહીં
તમારી એપ સામાન્ય Postgres સાથે સામાન્ય કનેક્શન સ્ટ્રિંગથી વાત કરે છે. Postgres સાથે કામ કરતી કોઈ પણ લાઇબ્રેરી, ORM કે ટૂલ અહીં કામ કરે છે. જો તમે તમારો પ્રોજેક્ટ એક્સપોર્ટ કરો અને બીજે ચલાવો, તો તે Postgres ડેટાબેઝની અપેક્ષા રાખે છે — જે દરેક હોસ્ટિંગ પ્રોવાઇડર આપે છે — Mythex-વિશિષ્ટ API નહીં.
3. દરેક એપ તેને જરૂરી રીતે ઘડી શકે છે
એક એપને bookings ટેબલ જોઈએ છે જેમાં સમય-સ્લોટ પર યુનિક કન્સ્ટ્રેઇન્ટ હોય; બીજી પ્રોડક્ટ્સ પર ફુલ-ટેક્સ્ટ સર્ચ ઇચ્છે છે. પોતાનો ડેટાબેઝ હોવાથી, દરેક એપની સ્કીમા અને માઇગ્રેશન તેની પોતાની બાબત છે. કંઈ પણ સૌથી ઓછા સામાન્ય-વિભાજક ડિઝાઇનમાં બેસાડવું પડતું નથી.
4. ખર્ચ વપરાશને અનુસરે છે
દરેક ડેટાબેઝ પોતાની રીતે સૂતો હોવાથી, કોઈ ન વાપરતી એપનો ખર્ચ લગભગ નહીં, અને વ્યસ્ત એપનો ખર્ચ તેની પોતાની લાઇન તરીકે દેખાય છે. પબ્લિશ થયેલા ડેટાબેઝનો વપરાશ ડેટાબેઝે ખરેખર માપેલા મુજબ બિલ થાય છે — આ બિલિંગ કેવી રીતે કામ કરે છે.
ગેરફાયદા
આ ડિઝાઇન મફત નથી:
- કોલ્ડ સ્ટાર્ટ. શાંત સમયગાળા પછી પહેલી ક્વેરી પર સૂતો ડેટાબેઝ જાગવામાં થોડી ક્ષણ લે છે. મોટાભાગની એપ માટે આ ભાગ્યે જ નોંધપાત્ર છે; એવી એપ માટે જેણે કોઈ પણ સમયે તરત જવાબ આપવો જ પડે, તે વિચારવા જેવું છે.
- જાગતા-છતાં-ખર્ચ. કોઈ તેને ક્વેરી કરતું હોય ત્યાં સુધી ડેટાબેઝ જાગતો રહે છે. જે એપ દર થોડી સેકન્ડે ડેટાબેઝ પોલ કરે, તે તેને આખો દિવસ જાગતો રાખે છે અને જરૂર પડ્યે ક્વેરી કરતી એપ કરતાં વધુ ખર્ચ કરે છે. જો તમારો વપરાશ અપેક્ષા કરતાં વધુ લાગે, તો મોટાભાગે આ જ કારણ હોય છે — AI ને પોલિંગ બંધ કરવા અને જરૂર પડ્યે ડેટા લોડ કરવા કહો.
- અમારા માટે વધુ ચાલતા ભાગો. હજારો ડેટાબેઝ બનાવવા, ટ્રૅક કરવા અને સાફ કરવા એક કરતાં વધુ કામ છે. તે અમારી જવાબદારી છે, તમારી નહીં.
જો તમે ડેટાબેઝમાં નવા હો
ડેટાબેઝ એ જગ્યા છે જ્યાં એપ યાદ રાખવાની જરૂર હોય તે રાખે છે. જો આ વિચાર નવો હોય, તો ડેટાબેઝ શું છે અને Postgres શું છે થી શરૂ કરો. જ્યારે તમે ડેટા સ્ટોર કરતું કંઈક બનાવવા તૈયાર હો, ત્યારે AI વડે એપ કેવી રીતે બનાવવી માં તે ઉમેરવાની રીત છે.