Smart Websites
איך שמנו בסיס נתונים וקטורי בתוך הדפדפן של הלקוח והורדנו את עלויות השרת לאפס
מדריך מעשי לשימוש ב-OPFS וב-SQLite Wasm בדפדפן. כך תוכלו לאחסן וקטורים ומודלי AI קטנים אצל הלקוח ולהשיג חיפוש סמנטי מיידי ב-0 מילישניות.
TL;DR
שימוש ב-OPFS (Origin Private File System) יחד עם SQLite Wasm מאפשר להריץ חיפוש סמנטי ומודלי AI ישירות בדפדפן הלקוח. הפתרון הזה מוחק את זמן ההמתנה של השרת, עובד ב-0 מילישניות ומוריד את חשבון ה-Cloud שלכם לאפס.
דמיינו את יובל. יובל מנהל אתר לייעוץ משפטי בתל אביב עם קטלוג של 15,000 מסמכים, תקדימים וחוזי שכירות. ב-2026, המשתמשים שלו כבר לא מחפשים מילות מפתח יבשות. הם שואלים שאלות מורכבות בעברית כמו "מה התקדים לגבי תיקון פיצוץ צנרת בדירה מושכרת ברוטשילד?".
כדי לענות על זה, יובל שילם בכל חודש מאות דולרים לחברות שרתים ולמנועי Vector DB ענניים. כל שאילתה דרשה פנייה לשרת, השוואת וקטורים והחזרת תשובה. זה היה איטי. זה היה יקר.
אז החלטנו להעביר את כל בסיס הנתונים הווקטורי ישירות לתוך הדפדפן של הלקוח.
הבעיה: 1.8 שניות עיכוב וחשבון API מנופח
בכל פעם שמשתמש הקליד מילה בתיבת החיפוש, המערכת של יובל ביצעה קריאת API לשרת מרוחק. השרת הפך את הטקסט לווקטור, תישאל מאגר נתונים חיצוני, והחזיר את התוצאות.
התוצאה הייתה מעצבנת:
- זמן תגובה ממוצע של 1.8 שניות לכל חיפוש.
- עלות שהלכה וגטלה ככל שכמות המשתמשים עלתה.
- חוויה מנותקת אם הקשר האינטרנט של הלקוח בטלפון לא היה יציב.
היה ברור שחייבים לשנות תפיסה. השרת לא צריך לעבוד קשה אם למחשב של הלקוח יש זיכרון מעבד פנוי.
הניסיון הראשון שנכשל: IndexedDB קרס תחת העומס
המחשבה הראשונה שלנו הייתה פשוטה: נוריד את בסיס הנתונים לדפדפן ונשמור אותו ב-IndexedDB.
זה עבד מעולה על 50 מסמכים. אבל כשהעלנו את כל 15,000 המסמכים של יובל יחד עם ה-Embeddings שלהם, הדפדפן נחנק.
IndexedDB אינו מיועד לקריאות רצופות וכבדות של קבצים בינאריים גדולים. כל חיפוש וקטורי גרם לקיפאון של פריים או שניים במסך. הלשונית פשוט קפאה.
- הגדרה · OPFS
Origin Private File System (OPFS) הוא שטח אחסון פרטי ומהיר בתוך הדפדפן, המאפשר גישה ישירה ובלעדית לקבצים ברמת הדיסק המקומי דרך Web Workers.
הפתרון: OPFS יחד עם SQLite Wasm
בשביל לפתור את צוואר הבקבוק, עברנו לטכנולוגיה חדשה יותר שנתמכת באופן מלא בכל הדפדפנים ב-2026: OPFS בשילוב SQLite Wasm.
הנה איך שזה עובד:
- בפעם הראשונה שהמשתמש נכנס לאתר, קובץ SQLite זעיר (כמה מגה-בייטים בודדים) מורד ברקע.
- הקובץ נשמר בתוך ה-OPFS של הלקוח.
- מנוע SQLite שקומפל ל-WebAssembly (Wasm) רץ בתוך Web Worker נפרד.
- החיפוש הווקטורי מתבצע מקומית לחלוטין על גבי המעבד של המשתמש.
0ms
זמן המתנה לשרת בחיפוש סמנטי מקומי
מקור: ניסוי מעבדה JustBetter, 2026
כך נראית ההשוואה בין השיטות:
| פרמטר | חיפוש בשרת ענני (Traditional) | אחסון ב-IndexedDB | OPFS + SQLite Wasm |
|---|---|---|---|
| זמן תגובה | 1,200ms - 2,500ms | 300ms - 800ms | 0ms - 12ms |
| עלות שרת ל-10k שאילתות | ~$45 | $0 | $0 |
| עבודה באופליין | לא אופציונלי | חלקי | מלאה לחלוטין |
| עומס על זיכרון הדפדפן | אפסי | גבוה (גורם לתקיעות) | אפסי (רץ ב-Worker) |
ההבדל הדרמטי נובע מכך ש-OPFS מעניק ל-SQLite ערוץ גישה ישיר בצינור סנכרוני (SyncAccessHandle). הנתונים נשלפים מהדיסק המקומי בדיוק כמו אפליקציה שמורצת על המחשב.
רוצים ליישם את זה? הקפידו להריץ את ה-SQLite Wasm אך ורק בתוך Web Worker. אם תריצו אותו על ה-Main Thread, הדפדפן לא ירנדר את העמוד בזמן העיבוד.
התוצאה: חיפוש ב-0 מילישניות וחיסכון מלא במשאבים
התוצאות באתר של יובל היו מיידיות.
כעת, כשהמשתמש מקליד שאילתה, מודל AI קטן (מבוסס Transformers.js) מייצר את הווקטור בדפדפן בתוך 5 מילישניות. מיד לאחר מכן, SQLite Wasm שולף את המסמכים המתאימים מ-OPFS.
אין פנייה לשרת. אין המתנה לרשת. אין עלויות API.
המשתמש מקבל תוצאות רלוונטיות עוד לפני שהוא סיים להקליד את המילה האחרונה בחיפוש.
💡
העברת האחסון והחיפוש הווקטורי לדפדפן הלקוח אינה רק חיסכון כספי — היא משנה לחלוטין את חווית החיפוש והופכת אותה למיידית.
הלקח לבעלי אתרים
שרתים הם רכיב יקר. ככל שהאתר שלכם מציע מערכות חיפוש מורכבות יותר, כך החשבון החודשי שלכם גדל.
ב-2026, המכשיר של הלקוח שלכם נהנה ממעבד חזק ומזיכרון מהיר. אין שום סיבה לשלם על עיבוד שרת עבור נתונים שאינם משתנים בכל שנייה.
אם אתם מנהלים קטלוג מוצרים, מאגר מאמרים, או כלי חיפוש משפטי — הטמעה של OPFS ו-SQLite Wasm היא הדרך הנכונה ביותר לבנות אתר מהיר, יציב וחסכוני.
שאלות נפוצות
כל מה שעוד רצית לדעת
מה זה OPFS ולמה הוא מהיר יותר מ-IndexedDB?
האם כל מנוע חיפוש סמנטי יכול לרוץ בתוך הדפדפן?
מה קורה אם המשתמש מוחק את ה-Cache של הדפדפן?
כתב
אדיר בן יעקב · Adir Ben Yaakov
מקים JustBetterSite, סוכנות בניית אתרים ושיווק דיגיטלי בתל אביב. מתמחה ב-GEO (Generative Engine Optimization) — בנייה של אתרים שמופיעים בתשובות של ChatGPT, Claude, Perplexity ו-Gemini, לא רק בגוגל.
עוד עליי →להמשך הקריאה
מאמרים קשורים
Smart Websites
חיפוש וקטורי בדפדפן: מדריך מעשי לחיפוש סמנטי ב-0 מילישניות
למדו איך להטמיע חיפוש וקטורי סמנטי שרץ ישירות בדפדפן המשתמש. טכניקה שחוסכת עלויות שרת, מבינה כוונת גולש ומספקת תוצאות חיפוש מיידיות.
המשךSmart Websites
Navigation API מול רואוטרים של SPA: למה נפטרתי מ-React Router
השוואה טכנית מנומקת בין Navigation API נייטיבי לבין רואוטרים כבדים של SPA. כך תשיגו מעברי עמודים אולטרה-חלקים בלי לפגוע בביצועים, ב-SEO ובסריקת AI.
המשךSmart Websites
5 טעויות קריטיות בחיבור שרת MCP לאתר העסקי ב-2026
סוכני AI כבר לא מגרדים את האתר שלכם — הם מדברים איתו ישירות. למדו מאיזה 5 טעויות בהטמעת פרוטוקול MCP כדאי להימנע כדי לאפשר לסוכנים לקבוע תורים ולבצע רכישות.
המשך