ElectricSQL решает проблемы синхронизации данных в реальном времени

Включение синхронизации данных в реальном времени долгое время было общеизвестно дорогим и сложным усилием. Но по мере того, как разворачивается золотая лихорадка ИИ, синхронизация в реальном времени больше не является хорошим, а необходим для приложений ИИ для поддержки устойчивой потоковой передачи, сотрудничества в реальном времени и быстрых, бесшовных пользовательских опыта.

Теперь Electric SQL говорит, что они делают это с помощью своего двигателя Postgres Sync, который решает проблемы частичной репликации, раздувания и доставки данных.

Как описано одним из соучредителей и генерального директора стартапа, Джеймс Артур, Electric SQL предлагает «другой способ выполнения передачи данных или извлечения данных для создания программных приложений»-что он называет одной из основных проблем разработки программного обеспечения: «Это влияет на опыт вашего разработчика, как много кодирования в сети, какова ваш пользовательский опыт».

Инфраструктура данных

С помощью Electric SQL стартап направлен на решение основной проблемы синхронизационных двигателей, предоставляя разработчикам уровень инфраструктуры данных, который может интегрироваться практически в любое программное обеспечение, потреблять репликацию из базы данных Postgres, а затем отфильтровать данные в локальные приложения. Это также полностью открытый исходный код, где сообщество из более чем более чем 2500 разработчиков с открытым исходным кодом в канале Discord проекта.

Но путь к решению синхронизации в реальном времени не был прямым.

Сегодня Electric SQL может определить себя как технологию государственной передачи — но это не то, как начался проект.

Вначале Артур говорит, что команда была сосредоточена на создании гео-распределенной базы данных следующего поколения, используя их технологии и алгоритмы в качестве уровня репликации для существующих баз данных, таких как Postgres, SQLite и т. Д.: «Затем мы видели, что вы можете использовать в использовании, этот шаблон локального программного обеспечения, где вы создаете приложения, где вы синхнеруют приложения, как локальное приложение.

Именно в тот момент, по словам Артура, команда поняла, над чем они работают, на самом деле идеально подходит для решения постоянных проблем синхронизации.

И поэтому они бежали с этим.

Много препятствий на пути к синхронизации в реальном времени

Прорыв в синхронизации в режиме реального времени был долго.

Дорогие, трудоемкие и ресурсоемкие, строительные синхронизированные двигатели традиционно были финансово невозможны и, следовательно, недоступны для всех, кроме нескольких глубоко карманов. «Это одна из самых известных проблем в разработке программного обеспечения», — объясняет Артур. «Это требуется буквально миллионы инженерных времени в долларах. Вам нужны старшие инженеры, которые знают, что они делают с распределенными системами, системами баз данных».

Конечно, деньги не были единственным препятствием, не давая синхронизации в режиме реального времени увидеть свет.

Доставка сообщений, например, была одной липкой проблемой. Рассмотрим: с помощью основной базы данных в облаке и меньшей копией в веб -браузере или мобильном приложении, поддержание двух синхронизации является медведем задачи. «И вы делаете это в прошлом общедоступном Интернете на пользовательских устройствах»,-добавляет Артур. «Это очень сложно».

Уведомления в реальном времени добавили дополнительные проблемы-и еще одну причину, чтобы вообще избежать синхронизации в реальном времени и предпочтительнее более простых систем без сохранения состояния, таких как API REST или GraphQL.

Среди этих проблем в отрасли также отсутствовала системная библиотека или рамочное решение. «Такие компании, как Figma и Linear, они инвестировали буквально миллионы долларов, делая это, потому что они хотели иметь возможность дифференцировать свои продукты с качеством своего совместного опыта пользователя», — отмечает Артур. «Но для большинства программных систем невозможно помещать столько инженерных инженеров в уровень инфраструктуры».

Прорывы, которые сделали возможным синхронизация в реальном времени

В связи с тем, что инженерные сложности и финансовые препятствия удушают инновации, большинство двигателей синхронизации, которые в конечном итоге были построены только в определенных областях. Обобщение двигателя синхронизации, которое могла бы использовать большую отрасль, оставалась, казалось бы, далекой цели.

Что наконец изменилось? Второй соучредитель и технический директор Arthur и ElectriccQL, Вальтер Балегас, прокомментируют его до двух больших шагов вперед.

Во-первых, последние достижения в области исследований значительно продвинули то, что возможно в сфере распределенных систем данных, в том числе, например, появление CRDT (без конфликтов тип данных). В более широком смысле, Артур говорит: «В понимании правильности синхронизации произошло изменение шага, как правильно синхронизироваться… и производить эти возможности в правильно полезное программное обеспечение».

Помимо конкретных исследований, постоянный марш технологического прогресса открыл новые возможности, которые делают синхронизацию в реальном времени жизнеспособным. «Если вы вернетесь 10 лет назад, вычислительные ресурсы и возможности чего -то вроде веб -браузера или чьего -либо мобильного телефона были действительно довольно низкими», — пояснил Артур.

Артур говорит, что с ограниченным хранилищем и вычислительностью не имеет смысла синхронизировать большие объемы данных или запустить логику вычисления на потребительских устройствах. Но сегодняшние высокоскоростные потребительские устройства высокого спецификации, связанные со значительными событиями в исследовательской базе, открыли способность принимать синхронизацию в реальном времени в целом.

Включение эпохи ИИ

На самом деле, синхронизация в реальном времени не просто технологически и финансово выполнимо-это необходимо.

Когда команда ElectricsQL начала строить, совместные системы в реальном времени доминировали на сцене. Теперь приложения ИИ являются горячим билетом — и Артур сказал, что ElectricsQL — это идеальный способ сохранить состояние синхронизации между рабочими процессами искусственного интеллекта в облаке и пользователями, работающими на локальных устройствах.

«Приложения ИИ по своей природе являются многоупонеными. Если у вас есть пользователь, разговаривающий с агентом ИИ, и агент ИИ что-то делает, оно будет обновлять государство под этим»,-объясняет он. «Вы должны держать пользователя в цикле того, что делают агенты».

Возьмите, например, такую ​​систему, как Chatgpt или Claude. Прямо сейчас, если сетевое подключение падает, так и поток. Для пользователя это означает, что если вы обновляете страницу, ваши данные исчезли. «В то время как с такой системой, как ElectricSQL, у вас есть устойчивый потоковой передачу токенов», — отмечает Артур. «Таким образом, вы всегда можете просто возобновить поток. Вы можете иметь несколько пользователей в одном сеансе, и вы можете синхронизировать его с несколькими устройствами, несколькими вкладками».

Создание синхронизации в реальном времени новой нормой

По мере того, как системы ИИ становятся более сложными и начинают заменять программное обеспечение предыдущего поколения, Артур подчеркивает, что такая возобновляемость и многопользовательские функции, основанные на команде, будут иметь решающее значение.

Но в то время как ElectricsQL говорит, что они до сих пор видят много повторяемости, и многие клиенты приходят к ним для создания приложений, Balegas признает, что для отрасли может потребоваться некоторое время, чтобы полностью встать на борту с синхронизацией в реальном времени: «Синхронизация в реальном времени часто рассматривалась как немного сложного другого мира для вашего обычного стека применения. И это одна из вещей, которые мы решили изменить с помощью ElectricSQL».

Хотя Balegas признает, что ElectricsQl представляет новую парадигму разработки программного обеспечения, он утверждает, что теперь это лучший способ создания приложений — и пришло время для отрасли отпустить свои старые привычки.

Trending Stories youtube.com/thenewstack Tech движется быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *