Pull to refresh

Обзор возможностей онлайн баз данных, на примере использования Caspio Bridge

Reading time8 min
Views2.2K
1. Что такое онлайн базы данных?
Онлайн база данных – это, зачастую, web-приложение, которое позволяет хранить, манипулировать и публиковать данные, без знаний программирования и web-дизайна. Под публикацией, понимается автоматическая генерация HTML страниц для поиска/просмотра/редактирования данных хранящихся в БД. Приложения данной категории, опять же, чаще всего, основаны на моделях SaaS и PaaS. Для работы нужен только современный браузер. Другими словами, любая домохозяйка, обладая базовыми навыками работы с компьютером, может создать, например, справочник рецептов, и опубликовать его на своей домашней странице. С возможностью поиска, сортировки, редактирования, загрузки результатов.

Но домохозяйки, конечно же, не являются типичными пользователями таких приложений. Основная задача онлайн баз данных — это хранение данных и публикация этих данных в Интернете. Типичный пользователь — это журналист пишущий статьи в онлайн газете. Данный тип приложений обладает рядом приимуществ, но есть и некоторые нюансы. Пользователь получает возможность за 5-10 минут опубликовать информацию в интернете, но за это он расплачивается одним интересным ограничением: нельзя с помощью приложения, сделать то, что приложение делать не умеет :). Т.е. может возникнуть потребность, в каких-то сугубо индивидульных плюшках, которые с помощью онлайн баз данных решить не получиться. Некоторые читатели могут сказать: — «В век, когда программирование, постепенно, превращается, из искусства в ремесло, когда программистов, с каждым годом, становиться все больше, зачем еще один велосипед? Зачем, нам эти ваши онлайн базы данных? Дескать, вам нужно, получить данные из базы данных и отобразить их на web-странице? Сделайте это сами. Это не сложно. Что, не умеете программировать? Наймите программиста. Задача тривиальна, и реализуется достаточно просто». И, конечно же, в чем-то будут правы. Правы, потому что зачастую лучше написать что-то самому, учесть собственные потребности, и при необходимости самому вносить нужные изменения, чем пользоваться готовым продуктом. Ни одна платформа, онлайн баз данных, не идеальна. Ни одна платформа не предоставит Вам той функциональности, которая нужна именно Вам. Приложения, написанные для собственных нужд, всегда (по крайней мере, еще очень долго) будут иметь преимущества над коробочными версиями программ. И, тем не менее, онлайн базы данных обладают огромным потенциалом. В чём же, преимущества подобного подхода? К преимуществам, можно отнести отсутствие необходимости, в каком-либо администрировании и программировании. Пользовательские данные, хранятся на серверах компании, которая предоставляет данную услугу. А это значит: не нужно покупать или арендовать дорогостоящие сервера, покупать лицензии для ПО, думать о создании архивных копий данных, оплачивать хостинг. В конце концов, не нужно даже писать что-то самому, или приглашать программиста. Все уже готово. Достаточно импортировать данные, если их еще нет в базе, создать, страницу поиска, и опубликовать эту страницу в своем блоге. Весь процесс займет минут 10-15. При всех преимуществах данного подхода, есть, конечно же, и своя ложка дегтя. И даже не одна. Данные хранятся не на собственном сервере. Все бы ничего, но вы не имеете прямого доступа к собственным данным. Только через интерфейс приложения, или службу поддержки. Отсутствует возможность получить дополнительную функциональность. Вы не сможете изменить стандартное поведение приложение. На основе ваших данных, вы будете получать уже полностью сформированную HTML разметку. Очевидно, что у каждого подхода (самостоятельная разработка сайта и использование онлайн базы данных) есть свои преимущества и недостатки. В заключение этой части, хотелось бы привести список и ревю некоторых онлайн баз данных: Backpack, Caspio Bridge, Dabble DB, HostedDatabase, Google base, QuickBase, LazyBase, Logiforms, Qrimp, TrackVia, Wufoo, Zoho Сreator

Ревю:
Review: 4 online databases let you structure and share your data
Caspio Offers Flexible and Fast Online Database Development for Business Users
Archive for Shareable Databases
Choosing data driven app? Jump start from the right foot.
What is your system key feature?


2. Caspio Bridge
Caspio Bridge (далее Bridge) — это платформа, для создания пользовательских web-приложений, без знания программирования. Например, Caspio 2008 Voter Guide и Caspio Recipe Guide. Собственно, девиз Caspio — «No more programming». Типичные пользователи Bridge – это люди, зачастую не являющиеся программистами: журналисты, публикующие свои статьи в онлайн изданиях, корпоративные пользователи, нуждающиеся в быстром создании каких-либо поисковых форм и т.д. Люди, в той или иной степени, знакомые с программированием, могут получить некоторые дополнительные преимущества. А именно: возможность работать с данными с помощью Web-сервиса, возможность добавлять собственный JavaScript и дополнительную HTML разметку, доступ к стилям в расширенном режиме, и изменение существующих стилей с помощью CSS.

Все рисунки в статье кликабельны.

Ну и для полноты картины, и что бы топик не сочли рекламой :), хотелось бы привести несколько рассуждений журналиста Дерека Уиллиса (Derek Willis), на тему «Что лучше для простого американского журналиста: использовать онлайн базы данных, или же программировать самому, в частности использовать Django и Ruby on Rails».
Trial By Caspio;
Six Reasons To Look Past Caspio;
Caspio dustup;
Delivering data: Which solution fits best?

Это всего лишь, частное мнение авторов, которое разделяют далеко не все. Клиентами Caspio являются как малые предприятия и неприбыльные организации, так и корпорации находящиеся в рейтинге Fortune-500, цифровые медиа-компании, государственные учреждения и учебных заведений. Компания утверждает, что более 70% крупнейших американских газет используют Caspio Bridge. Компания была основана в 2000 году Фрэнком Замани (Frank Zamani), который сейчас является президентом и генеральным директором. Первая версия Caspio Bridge была выпущена в 2001 году. Штаб-квартира компании расположена в Маунтин-Вью (Mountain View), штат Калифорния.


3. Возможности
Bridge предлагает такие возможности, как: web–формы для добавления/редактирования данных, автоматические оповещения по электронной почте при изменении данных, страницы поиска, загрузка и хранение файлов, загрузка результатов поиска, создание аутентификации основанной на пользовательских данных, экспорт и импорт данных, локализация, основанные на CSS стили, создание WML-форм ввода для мобильных устройств, Сascading lookups, CAPTCHA, поиск записей находящихся на заданном расстоянии от заданной точки, и многое другое. С возможностями, появившимися в последней версии, можно ознакомиться здесь. Страницы, создаваемые в Bridge, носят название datapages (по сути это web-формы). Datapage – это конечный продукт работы Bridge. Интерфейс Bridge многопользовательский. Права на чтение, изменение, удаление объектов, могут быть назначены как отдельному пользователю, так и группе. Данный подход позволяет работать в Bridge целому отделу, имея всего один аккаунт, особенно с учетом того, что количество пользователей не ограничено.


Системные требования:
Для того, что бы начать работать с Bridge, достаточно одного из нижеперечисленных браузеров и широкополосного подключения к Интеренет. Скоростное подключение нужно только для работы с интерфейсом Bridge. Для работы, со сгенерированными Datapages, скорость подключения, не является критической.

Браузеры поддерживаемые Bridge UI:
  • Firefox 2.0 и выше;
  • Gecko based браузер версии 1.8.1 и выше;
  • Safari 3.1 и выше;
  • Internet Explorer 6.0 и выше;

Изначально Bridge задумывался, как некоторый аналог Microsoft Access, только для Web. Как следствие, интерфейс Bridge выполнен в стиле а-ля Access’97.

4. Использование
С некоторыми готовыми решениями, на базе Caspio Bridge, можно ознакомиться онлайн: раз, два, три, четыре, пять. Чем же может помочь Bridge, при публикации данных в Web? Как говорится «лучше один раз увидеть...». В разделе Training and Resources доступно несколько дополнительных видеороликов. Рассмотрим небольшой пример. Журналист написал обзор новой книги. Данная книга, через некоторое время, должна появиться в библиотеках. Что бы облегчить, читателям статьи, поиск книги, автор решил создать поисковую форму, для поиска адресных данных библиотек. Список библиотек храниться в MS Access файле. Весь процесс публикации данных можно разбить на три этапа: импорт данных, создание страницы, публикация.

a) Импортируем таблицы с адресами библиотек (Libraries). В этой таблице содержится список американских библиотек, и их адреса. Предполагается, что у пользователя уже есть таблица с гео-координатами для каждого ZIP кода (ZipCodesUSA), а в таблице Libraries указан ZIP код для каждой библиотеки. Это не совсем стандартный случай, и скорее всего гео-координат, для нужных ему данных, у пользователя не будет. В этом случае, можно заказать дополнительную услугу, по определению координат для заданных адресов.

b) После импорта, переходим к созданию нашей страницы (некоторые шаги визарда пропущенны). Откроем DataPage wizard. На первом шаге визарда, можно задать: тип создаваемой страницы, источник данных для страницы, имя страницы, стиль и локализацию страницы.

На следующем шаге, выберем поля, которые будут служить критериями поиска. Так же, обратите внимание на вычисляемые поля «Distance search». При добавлении одного из этих полей, появится возможность искать записи находящиеся на заданном расстоянии. С помощью Logical operator, мы можем указать должны ли соблюдаться все условия поиска или хотя бы одно.

На следующем шаге мы можем сконфигурировать, как поля должны отображаться на странице. На скриншотах показано конфигурирование «Cascading ListBox» и «Distance search».



Каждое поле, может быть отображено, в виде некоторого HTML элемента.

После конфигурирования страницы поиска, перейдем к созданию страницы результатов.
Доступны три вида отображения результатов поиска: Tabular, List, Grid.

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

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

Если пользователь будет изменять данные, можно добавить автоматические оповещения по e-mail, после изменения записи.

После настройки текста оповещения, сохраним изменения.

c) Перейдем к процессу публикации созданной страницы. Существует несколько способов публикации: Embeded, Direct, Frame. Direct – просто ссылка, с параметром, который идентифицирует запрашиваемую страницу. Frame – то же, что и Direct, но вместо ссылки предоставляется кусок HTML разметки с iframe тегом. Embeded – JavaScript скрипт для интеграции страницы данных в Вашу существующую web-страницу. Здесь же, можно задать тип соединения (HTTP/HTTPS), указать, что нужно блокировать нешифрованные подключения.

После нажатия кнопки «Deploy», страница будет опубликована.

Давайте посмотрим, что же у нас получилось. Так как наша страница была созданна в папке с аутентификацией, при первом обращении нужно будет ввести учетные данные. Логин: Habr. Пароль: Habrahabr.
Откроем страницу и введем учетные данные пользователя.

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

Далее страница с результатами.

При необходимости можно просмотреть более подробную информацию о библиотеке и отредактировать номер телефона.




5. Caspio ExpressDB

Так же, несколько слов, хотелось бы сказать о другом приложении Caspio – ExpressDB. Видео здесь. ExpressDB является надежным сервисом базы данных для всех интерактивных форм. Любая web-форма может быть подключена к ExpressDB всего за несколько кликов. Это значит, что все данные отправленные пользователями вашей страницы, будут сохранены в базу без какого-либо участия с вашей стороны. Или же такой пример. У человека вообще нет никакого сайта. Например, это пекарь. Каждое утро, ему нужно получать заказы на выпечку хлеба, булок и круасанов, от местных жителей. Принимать заказы по телефону, или просить клиентов, заходить в пекарню самостоятельно – неудобно. С помощью ExpressDB достаточно просто решить эту проблему. Пекарь создает новую таблицу в ExpressDB, для хранения заказов. Причем, для удобства, можно создать отдельные таблицы для домов/улиц, если предположить что у пекарни много клиентов. Затем он создает PDF файл с формой заказа, данные из которой, отправятся в его таблицу, и рассылает этот файл клиентам. Теперь для того что бы сделать заказ, клиенту достаточно заполнить и отослать форму, а пекарю утром просмотреть поступившие заказы. ExpressDB обладает намного меньшим функционалом, чем Caspio Bridge. Фактически, перед этим приложением ставится все несколько задач: сохранить данные переданные пользователем, предоставить возможность просмотра и загрузки данных с сервера.



Заключение
Читая Хабр, я не встречал статей, посвященных онлайн базам данных. Захотелось восполнить этот пробел, и написать статью, которая бы помогла, составить первое представление о данном направлении ПО.

Tags:
Hubs:
Total votes 8: ↑7 and ↓1+6
Comments6

Articles