dump-2012 - Базы данных - "Идеальное хранилище геоданных...
DESCRIPTION
TRANSCRIPT
![Page 1: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/1.jpg)
Идеальное хранилище геоданных для вашего
приложения
WWW.2GIS.RU
![Page 3: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/3.jpg)
Пару слово компании 2GIS
WWW.2GIS.RU
![Page 4: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/4.jpg)
Пару слово компании 2GIS
WWW.2GIS.RU
![Page 5: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/5.jpg)
Чего не будет
• Не будем касаться профессиональных GIS
систем
• Не будет сферических бенчмарков в вакууме
• Не скажу какое хранилище идеальное
WWW.2GIS.RUWWW.2GIS.RU
![Page 6: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/6.jpg)
Что будет
• Рассмотрим как обстоят дела с хранением
геоданных
• Определим, как выбрать хранилище
• Поделюсь, как сами храним геоданные
• Отвечу на вопросы, буду рад пообщаться
WWW.2GIS.RUWWW.2GIS.RU
![Page 7: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/7.jpg)
Типы данных - Point
WWW.2GIS.RU
![Page 8: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/8.jpg)
Типы данных - MultiPoint
WWW.2GIS.RU
![Page 9: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/9.jpg)
Типы данных – Polyline
WWW.2GIS.RU
![Page 10: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/10.jpg)
Типы данных – MultiPolyline
WWW.2GIS.RU
![Page 11: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/11.jpg)
Типы данных – Polygon
WWW.2GIS.RU
![Page 12: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/12.jpg)
Типы данных – MultiPolygon
WWW.2GIS.RU
![Page 13: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/13.jpg)
Операции отношений
WWW.2GIS.RU
![Page 14: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/14.jpg)
Порождающие операции
WWW.2GIS.RU
![Page 15: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/15.jpg)
Пространственные индексы
WWW.2GIS.RU
![Page 16: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/16.jpg)
Хранилище: А оно нам надо?
WWW.2GIS.RU
![Page 17: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/17.jpg)
Библиотеки и контейнеры
• C++: Boost Geometry, GEOS
• Python: GeoJango, Shapely
• JavaScript: OpenLayers, GeoScript
WWW.2GIS.RU
![Page 18: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/18.jpg)
«Компактность низкая производительность» Расставьте запятые
WWW.2GIS.RU
![Page 19: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/19.jpg)
SpatiaLite
WWW.2GIS.RU
Преимущества:
• Большой набор геопространственных функций
• Компактность и простота
• Кроссплатформенность и переносимость
![Page 20: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/20.jpg)
SpatiaLite
WWW.2GIS.RU
Недостатки
• Производительность
• Масштабируемость
![Page 21: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/21.jpg)
Oracle
WWW.2GIS.RU
![Page 22: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/22.jpg)
MS SQL Server >= 2008
• Points, LineStrings, Polygons
• Geometry, Geography
• Well-Known Text (WKT), Well-Known Binary (WKB)
• Intersects, Contains, Crosses, Touches
• Distance, Length, Area
• Multi-Level Grid Index
WWW.2GIS.RU
![Page 23: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/23.jpg)
MySQL
• MyISAM, InnoDB, NDB, Archive
• WKT, WKB
• Points, LineStrings, Polygons
• Buffer, Union, Difference и т.д.
• R-Tree indexes
WWW.2GIS.RU
![Page 24: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/24.jpg)
MySQL
• Индексы только в MyISAM
• Только MBR (Minimal Bound Rectangle)
• Rule-based оптимизатор
WWW.2GIS.RU
![Page 25: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/25.jpg)
PostgreSQL (PostGIS)
• Поддержка OpenGIS
• WKB, WKT, GeoJSON, Text, SVG, GML, KML
• R-Tree индексы
• Cost-based оптимизатор
WWW.2GIS.RU
![Page 26: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/26.jpg)
НеMnogo О Mongo
WWW.2GIS.RU
{ loc : { lon : 40.739037, lat: 73.992964 } };db.places.ensureIndex( { loc : "2d" } );
db.places.find( { loc : { $near : [50,50] , $maxDistance : 5 } } ).limit(20);
![Page 27: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/27.jpg)
НеMnogo О Mongo
box = [[40.73083, -73.99756], [40.741404, -73.988135]];db.places.find({"loc" : {"$within" : {"$box" : box}}});
WWW.2GIS.RU
![Page 28: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/28.jpg)
Neo4J
• Графовое представление данных
• Хороший набор инструментов
WWW.2GIS.RU
![Page 29: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/29.jpg)
Sphinx
• Точки и полигоны
• Geodist и Contains
WWW.2GIS.RU
![Page 30: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/30.jpg)
Наш опыт: Пробки
WWW.2GIS.RU
![Page 31: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/31.jpg)
Наш опыт: Пробки
Сбор точек, требования:
• Schemeless
• Хорошая производительность на запись
• Масштабирование
• Можем позволить себе потерять немного данных
WWW.2GIS.RU
![Page 32: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/32.jpg)
Наш опыт: Пробки
WWW.2GIS.RU
![Page 33: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/33.jpg)
Наш опыт: Пробки
Расчет пробок, требования:
• Хороший набор геопространственных функций
• Высокая скорость выборки данных
WWW.2GIS.RU
![Page 34: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/34.jpg)
Наш опыт: Пробки
WWW.2GIS.RU
![Page 35: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/35.jpg)
Summary
• Выбирайте геохранилище под задачу,
анализируя требования
• Делайте бенчмарки только своих задачах
• Не бойтесь использовать несколько решений в
одном проекте
• Иногда изобретать велосипед – путь наименьшей
боли и страданий
WWW.2GIS.RU
![Page 36: DUMP-2012 - Базы данных - "Идеальное хранилище геоданных для вашего приложения" Александр Родионов, Андрей](https://reader033.vdocuments.net/reader033/viewer/2022061116/546566a8af795939528b5d6e/html5/thumbnails/36.jpg)
СПАСИБО ЗА ВНИМАНИЕ!