The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Google открыл код FlatBuffers, библиотеки для эффективной се..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от opennews (ok) on 17-Июн-14, 11:22 
Компания Google открыла (http://google-opensource.blogspot.ru/2014/06/flatbuffers-mem...) под лицензией Apache 2 библиотеку FlatBuffers (https://github.com/google/flatbuffers), предоставляющую средства для сериализации данных (http://ru.wikipedia.org/wiki/%D0%A1%D0%B...), отличающиеся высокой эффективностью работы с памятью.  FlatBuffers позволяет (http://google.github.io/flatbuffers/) напрямую обращаться к сериализированным данным, без их промежуточной распаковки и выделения дополнительных буферов. Код библиотеки написан на C++, но доступен и вариант для Java.


Бинарный формат сериализованных данных переносим между разными платформами и архитектурами и может быть использован как для записи в файлы, так и для передачи по сети. Дополнительно предоставляются средства преобразования в бинарный формат из JSON-представления. В качестве областей применения библиотеки называются игры и ограниченные в потреблении памяти приложения. Поддерживается работа на широком спектре платформ, включая Android, Windows, OS X и Linux.


URL: http://google-opensource.blogspot.ru/2014/06/flatbuffers-mem...
Новость: http://www.opennet.me/opennews/art.shtml?num=40017

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Dcow (ok) on 17-Июн-14, 11:22 
А что в сравнении с тем же Protocol Buffers от гугла?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +1 +/
Сообщение от Аноним (??) on 17-Июн-14, 11:29 
Why not use Protocol Buffers, or .. ?

Protocol Buffers is indeed relatively similar to FlatBuffers, with the primary difference being that FlatBuffers does not need a parsing/ unpacking step to a secondary representation before you can access data, often coupled with per-object memory allocation. The code is an order of magnitude bigger, too. Protocol Buffers has neither optional text import/export nor schema language features like unions.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

8. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  –2 +/
Сообщение от Аноним (??) on 17-Июн-14, 16:56 
Судя по всему, команда разработчиков FlatBuffers нашли в ProtocolBuffers фатальный недостаток: его написали не они :).
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

14. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Dcow (ok) on 17-Июн-14, 19:04 
Нуу, у нас проекте 70-80% времени это сериализация/десериализация....
Так что может оно и быстрее.
Надо глянуть какой код, сколько структуры занимают в сравнении, сколько время доступа к полям у класс....эх, где на все время то брать...
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

21. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Аноним (??) on 18-Июн-14, 00:02 
> Нуу, у нас проекте 70-80% времени это сериализация/десериализация....

Сурово. А что за проект такой? В смысле, чего можно делать для того чтобы тратить 70% на сериализацию?

Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

29. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Dcow (ok) on 18-Июн-14, 14:46 
Просто пишем хороший код)
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

15. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от dq0s4y71 (ok) on 17-Июн-14, 20:23 
И то, и другое делал Гугль, вроде как...
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

16. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от rob pike on 17-Июн-14, 20:36 
Россиянин россиянину - друг, товарищ и брат.
Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

19. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Аноним (??) on 17-Июн-14, 22:11 
дерьмовее протобуфа трудно что-то придумать, там оверхед на каждом шагу. Единственный его плюс - оно есть и как-то работает.
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

24. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от SprintSet on 18-Июн-14, 01:05 
Пытались внедрить. Остались на JSON - у нас нет бинарей, а протобуф не удобен до жути. Пусть идет в гугль.
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

26. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +1 +/
Сообщение от Аноним (??) on 18-Июн-14, 02:10 
> Пытались внедрить. Остались на JSON - у нас нет бинарей, а протобуф
> не удобен до жути. Пусть идет в гугль.

Парсинг и передача JSON оверхеднее даже протобуфа в разы. Так что видимо у вас не сильно много данных было.

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

27. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Аноним (??) on 18-Июн-14, 02:51 
> Пытались внедрить. Остались на JSON - у нас нет бинарей, а протобуф
> не удобен до жути. Пусть идет в гугль.

Парсинг и передача JSON оверхеднее даже протобуфа в разы. Так что видимо у вас не сильно много данных было.

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

30. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от жопка3 on 18-Июн-14, 16:01 
А чем неудобен показался?
Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

32. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Аноним (??) on 18-Июн-14, 19:56 
Аналог http://msgpack.org/
Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

31. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от жопка3 on 18-Июн-14, 16:02 
> дерьмовее протобуфа трудно что-то придумать, там оверхед на каждом шагу. Единственный его
> плюс - оно есть и как-то работает.

А можно подробней об оверхеде по сравнению с JSON?

Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

3. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от vitalif (ok) on 17-Июн-14, 11:39 
Гугл там что, сериализацией только и занимается? :-)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

18. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Аноним (??) on 17-Июн-14, 21:42 
сделали одно гогно, потом обнаружили что действительно сделали гогно. Пошли делать другое.
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

25. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от SprintSet on 18-Июн-14, 01:06 
Значит вы никогда не строили сервис-ориентированные системы под большой нагрузкой :))
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

4. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +2 +/
Сообщение от Ordu email(ok) on 17-Июн-14, 11:57 
Гугл... Такой гугл:

> For applications on Google Play that integrate this tool, usage is tracked. ... you are free to
> remove the version string but we would appreciate if you would leave it in.

Всё ему отследить надо.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  –5 +/
Сообщение от Аноним (??) on 17-Июн-14, 12:12 
Ну, а вы сомневались ? Гугл это практически АНБ, только АНБ денег не зарабатывает и работает по большей части на себя, но и немного на того дядю, но уже не из-за денег.
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

9. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +1 +/
Сообщение от Аноним (??) on 17-Июн-14, 16:58 
> Всё ему отследить надо.

Это еще что. Вы делаете в программе HTTP даунлоад. Приходит сервак гугли, забирает файл. И отдает вашей программе. Если захочет. Интересная платформа этот ваш ведроид - зонд на зонде и зондом погоняет. В смысле, гугл хочет знать что вы там качали. Даже если это посторонняя программа.

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

10. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +2 +/
Сообщение от Анон22 on 17-Июн-14, 17:09 
Пруфлинк пожалуйста
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

11. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Andrey Mitrofanov on 17-Июн-14, 17:16 
> Пруфлинк пожалуйста

Он путает гугли то ли с сониевским, то ли с нокиевским "ускорителем мобильного интернета". Если я сам ничего не потаю, головка-то маленькая.

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

13. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Igel (??) on 17-Июн-14, 18:41 
у гугля есть точно такой же мобильный "ускоритель".
включается он правда в определенные фазы луны...
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

23. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Аноним (??) on 18-Июн-14, 00:13 
> Он путает гугли

Нет, не путает. К сожалению. Гугл таки обнаглел в зондостроении за пределами самых диких фантазий.

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

28. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Andrey Mitrofanov on 18-Июн-14, 10:20 
> Нет, не путает. К сожалению. Гугл таки обнаглел в зондостроении за пределами
> самых диких фантазий.

Вы уже третий, кто не ответил на #10. Я подожду. ТОлько не про "ззонды вообще, а про ускорители интернетов от, да-а? Не стесняйтесь, оба трое.

Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

22. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Аноним (??) on 18-Июн-14, 00:09 
> Пруфлинк пожалуйста

Не получится: совершенно случайно обнаружено анализом логов. И логи я вам разумеется не дам.

Могу сказать как сие выглядит: к user agent программы дописывается нечто типа "AppEngine-Google; (+http://code.google.com/appengine; appid: <идентификатор программы>)". Называется эта заподлянка как несложно догадаться AppEngine и используется чуть более чем половиной ведроидных программ при скачке файлов по HTTP. И гугл при этом *знает* что вы качали. Ибо приходит забирать файл именно гуглевый сервант, а вовсе и не ваша программа.

Так что гугля имеет юзеров андроида в хвост и в гриву и делает это довольно фундаментально. Не знали? Вот, получите и распишитесь. Наверняка у них где-то есть описание как этот app engine работает.

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

6. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +2 +/
Сообщение от rob pike on 17-Июн-14, 14:04 
Kenton Varda задолбался мейнтейнить протобуфы, ушёл (из Гугла) и запилил свой Cap-n-Proto.
Wouter van Oortmerssen пришёл (в Гугл) и запилил свой Cap-n-Proto для быстрого обмена данных с игрушками потому что не нашёл в Cap-n-Proto опциональных полей, до юнионов не дочитал, а спросить - язык отсох, да и надо же как-то себя проявить на новом месте.
А юнионы в протобуфы тоже потом добавили, но в опенсорс еще не выложили.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

17. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от rob pike on 17-Июн-14, 21:11 
Преимущества перед Cap-n-Proto, с точки зрения автора FlatBuffers:
>We feel optionals have a lot of uses beyond just mere unions and forwards/backwards compatibility, however. Game objects can have a LOT of fields, many of which are often at their default value, and thus not stored on the wire. This gives significant compression. The zero-byte compression in Cap'n Proto is cool, but we prefer to not have to use additional buffers when reading. Optionals also give a lot of design freedom, i.e. you can add a field that you know is only needed for very few instances without fear of bloating your binaries, as an alternative to "subclassing", or indeed unions.
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

12. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +1 +/
Сообщение от Аноним (??) on 17-Июн-14, 17:17 
Вот еще одна библиотека http://kentonv.github.io/capnproto/
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

20. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Аноним (??) on 17-Июн-14, 23:55 
Код на джаве какой-то не очень... Мягко говоря. Наколеночное все.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

34. "Google открыл код FlatBuffers, библиотеки для эффективной се..."  +/
Сообщение от Аноним (??) on 22-Июн-14, 09:11 
По сравнению с кодом на С++, это еще по божески) А вообще руки нужно отбивать за такой код.
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру