GotAI.NET

Форум: Проблемы искусственного интеллекта

 

Регистрация | Вход

 Все темы | Новая тема Стр.1 (1)   Поиск:  
 Автор Тема: Protocol Buffers от Гугля
Valr
Сообщений: 136
Protocol Buffers от Гугля
Добавлено: 09 июл 08 7:12
Цитата из http://lenta.ru/news/2008/07/08/google/
"Google 7 июля предложил всем желающим использовать язык Protocol Buffers, позволяющий описывать данные эффективнее, чем общепринятый XML, пишет InformationWeek.
Файл с данными в Protocol Buffers меньше XML-файла в 3-10 раз. Кроме того, разбор этих данных происходит быстрее в 20-100 раз.
В отличие от XML, Protocol Buffer не пердназначен для чтения пользователем. Кроме того, для понимания данных, необходим отдельный .proto-файл, в котором определяется формат сообщения.
Формат Protocol Buffers был разработан в 2001 году и используется самим Google практически везде, где требуется хранение структурированной информации. Изначально он был разработан для формирования запросов и откликов серверов, на которых хранится поисковый индекс."

Я еще не много об этом нашел, в частности, в Protocol Buffers применяется бинарный формат данных.
Из последнего абзаца цитируемого сообщения следует, что Гугл предпочел поддержку Protocol Buffers SQL серверам. Вот это меня заинтересовало.

Ссылка на первоисточник http://code.google.com/apis/protocolbuffers/docs/overview.html
[Ответ][Цитата]
shuklin
Сообщений: 2053
На: Protocol Buffers от Гугля
Добавлено: 09 июл 08 15:24
То что не придется каждый раз переизобретать велосипед радует. Начиная с 95го Сам многократно переизобретал Binary XML для решения разных задач. Наличие стандарта и отлаженных Open Source реализаций будет значительно экономить время в таких случаях. Однако "В отличие от XML, Protocol Buffer не пердназначен для чтения пользователем." значительно ограничивает сферу применения. Вспомнить для примера Microsoft Structured Storage который применяли в предыдущих версиях MS Office для формата файлов - тоже в некотором смысле иерархическая OO БД на подобие XML но в бинарном виде с открытым API
Теперь можно посмотреть что стало с форматом файлов в последней версии офиса.

Не ясно как у Гугла обстоит дело с XQuery и с XSLT. Возможно было бы правильнее разработать специальный архиватор для сжатия текстового XML и позволить работать со сжатым форматом напрямую, например похоже это сделали Microsoft в chm для HTML

Я обычно применяю следующий формат

тег - 4 байта
размер блока данных - 4 байта
данные с указанным размером
следующий тег ...

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

содержимое блока данных определяется тегом. Если тег определяет сложный объект, то внутри блока данных идет такая же теговая структура, внутри некоторых тегов которой могут быть дополнительные вложенные теги - вобщем то тот же самый XML

здесь http://www.shuklin.com/ai/ht/ru/ai00003f.aspx на рис.1 описано как на основе такой структуры я хранил нейроны в ранних версиях Cerebrum а на рис.2 нарисовано, как это дело можно связать в сеть.
[Ответ][Цитата]
Valr
Сообщений: 136
На: Protocol Buffers от Гугля
Добавлено: 10 июл 08 11:07
Цитата:
Автор: shuklin
Я обычно применяю следующий формат
тег - 4 байта
размер блока данных - 4 байта
данные с указанным размером
следующий тег ...
в блоке данных так же можно определить такую же теговую структуру.
...
описано как на основе такой структуры я хранил нейроны
...

Судя по контексту, речь идет о формате хранения данных. Поясните, а чем вас не устроили существующие БД. Вы создаете сетевую БД, заново решая проблемы блокировок, транзакций, индексации. Неужели это все в существующих БД реализовано настолько плохо, что лучше самому все переписать с нуля, оторвав массу времени и сил от основной цели проекта?
[Ответ][Цитата]
shuklin
Сообщений: 2053
На: Protocol Buffers от Гугля
Добавлено: 10 июл 08 13:33
Цитата:
Автор: Valr
Поясните, а чем вас не устроили существующие БД. Вы создаете сетевую БД, заново решая проблемы блокировок, транзакций, индексации.

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

Цитата:
Автор: Valr
Неужели это все в существующих БД реализовано настолько плохо, что лучше самому все переписать с нуля, оторвав массу времени и сил от основной цели проекта?


Лучше, но не потому что существующие реализации плохи, а потому что далеки идеологически от требуемой. Сделать надстройку над существующей СУБД, чтобы привести ее интерфейс к требуемому - тот же объем работы, если не больший, ведь будут давить существующие традиции и существующая культура разработки на выбранной СУБД.
Говоря более формально, не устраивает то колличество метапереходов по Турчину, которые нужно выполнить для преобразования виртуальной машины, предоставляемой реализованной СУБД к той ВМ которая требуется для разработки. Это же все придется реализовать и реализация потребует затрат производительности.

PS.1 Существующая реализация моей СУБД допускает работу в качестве надстройки над некоторым хранилищем данных третьего производителя. Возможно я даже выпущу драйвер хранилища для какой-то промышленной СУБД. На данный момент рассматриваю 2 кандидатуры Беркли БД и Майкрософт Джет Блу.

PS.2 У работы по созданию собственной СУБД обнаружилась собственная ценность. Удалось получить результаты новые для ООБД-строения.
[Ответ][Цитата]
Valr
Сообщений: 136
На: Protocol Buffers от Гугля
Добавлено: 10 июл 08 14:46
Цитата:
Автор: shuklin
PS.2 У работы по созданию собственной СУБД обнаружилась собственная ценность. Удалось получить результаты новые для ООБД-строения.

Если ваша БД будет иметь практические преимущества, то человечество и будущий ИИ будет благодарен вам, ну еще и какому-то Гуглу.
[Ответ][Цитата]
 Стр.1 (1)