Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Чернышев  Артём,2ГИСПути  миграции  перелётных  данных
Миграция  это  - ETL
Миграция  это  - ETLExtract
Миграция  это  - ETLExtract Transform
Миграция  это  - ETLExtract Transform Load
Откуда  я  знаю  про  миграциюData warehousing
Откуда  я  знаю  про  миграциюBusiness Intelligence
Откуда  я  знаю  про  миграциюBig Data Management
Покажу  на  примере
Самый  первый  пример
Самый  первый  пример• Есть  логи скачиваний  пакетов  с  сервера
Самый  первый  пример• Есть  логи скачиваний  пакетов  с  сервера• …  но  они  в  бинарном  виде  
Самый  первый  пример• Есть  логи скачиваний  пакетов  с  сервера• Нужен  отчёт  заданного  вида  в  excel• …  но  они  в ...
Самый  первый  пример• Есть  логи скачиваний  пакетов  с  сервера• Нужен  отчёт  заданного  вида  в  excel• …  но  они  в ...
Самый  первый  пример
Самый  первый  пример@ЧудесаСервер  доставлял  не  сразуДва горячих чая этому господину
Самый  первый  пример@ЧудесаИзменилась  периодичность
Самый  первый  пример@ЧудесаУвеличился  объём  данных
Самый  первый  пример@ЧудесаВид  отчёта  постоянно  менялся
Самый  первый  пример@ВыводыНикому  не  верь
Умей  отличить  заказчика  от  пользователяСамый  первый  пример@Выводы
Знай  роль  данных  в  бизнес-процессахСамый  первый  пример@Выводы
Мигрируй  чащеСамый  первый  пример@Выводы
Самый  первый  примерПериодичность
Самый  первый  примерПериодичность
Самый  первый  примерАктуальность
Самый  первый  пример• Понавставляли timestamp’ы  • Начали  лить  в  RDBMS• Разделили  миграцию  и  представление• Миграци...
Второй  пример
Второй  пример• Появились  клики
Второй  пример• Много  других  новых  метрик• Появились  клики
Второй  пример• Много  других  новых  метрик• Появились  клики• Необходима  связь  со  справочниками
Второй  пример• Много  других  новых  метрик• Появились  клики• Стало  больше  пользователей• Необходима  связь  со  справ...
Второй  пример
Второй  пример@ЧудесаMySql не  любит,  когда  много  данных
Второй  пример@ЧудесаДанные  стали  критичными  для  бизнеса
Второй  пример@ЧудесаБольше  данных  – больше  ошибок
Второй  пример@ВыводыВажные  данные  нужно  проверять
Второй  пример@ВыводыВажные  данные  нужно  надёжно  хранить
Второй  пример@ЧудесаУправлять  данными  в  коде
Второй  пример@ВыводыИспользуй  верные  инструменты
Второй  пример@ВыводыИспользуй  верные  инструментыОдин  источник
Второй  пример@ВыводыИспользуй  верные  инструментыОдин  источникОдно  назначение+
Второй  пример@ВыводыИспользуй  верные  инструментыОдин  источникОдно  назначение+=Простая  логика+
Второй  пример@ВыводыИспользуй  верные  инструментыОдин  источникОдно  назначение+=SQL - скриптПростая  логика+
Второй  пример@ВыводыИспользуй  верные  инструментыМного  источников
Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=
Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=ETL Tools (тысячи  их)
Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=ETL Tools (тысячи  их)
Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=ETL Tools (тысячи  их)
Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=ETL Tools (тысячи  их)
Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+
Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=Real - time+
Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=Message BrokerReal - time+
Второй  пример@ВыводыИспользуй  верные  инструментыВо  всех  остальных  случаяхПишите  код,  пожалуйста
Второй  примерДоступностьКогда  просятКогда  сможемVS
Второй  примерДостоверность
Второй  примерЦенность
Второй  пример• Миграцию  перевели  на  SSIS• Перешли  на  MS SQL Server• Смастерили  систему  проверок• Начали  формализо...
Чужой  пример
Чужой  пример• Жила-была  престарелая  CRM
Чужой  пример• Много  баз  дислокации• Жила-была  престарелая  CRM
Чужой  пример• Много  баз  дислокации• Жила-была  престарелая  CRM• Решили  сделать  новую
Чужой  пример• Много  баз  дислокации• Жила-была  престарелая  CRM• Решили  сделать  новую• С  одинокой  базёнкой
Чужой  пример• Много  баз  дислокации• Жила-была  престарелая  CRM• Решили  сделать  новую• С  одинокой  базёнкой• Соверши...
Чужой  примерСтарая  CRM Новая  CRMПакет  SSIS
Чужой  пример@ЧудесаDBA не  понимает  бизнес-логику
Чужой  пример@ЧудесаПроблемы  выявлялись  не  сразу
Чужой  пример@ЧудесаПроблемы  решались  долго
Чужой  пример@ВыводыИсполнитель  должен  быть  в  контексте
Чужой  пример@ВыводыМного  сущностей
Чужой  пример@ВыводыМного  сущностейМного  данных+
Чужой  пример@ВыводыМного  сущностейМного  данных+=Много  бизнес-логики+
Чужой  пример@ВыводыМного  сущностейМного  данных+=Промежуточная  базаМного  бизнес-логики+
Чужой  пример@ВыводыДелай  все  возможные  констрэйнты
Чужой  пример  Целостность
Хороший  пример
Хороший  пример• Жила-была  старая  карта
Хороший  пример• Так  же  много  баз  дислокации• Жила-была  старая  карта
Хороший  пример• Так  же  много  баз  дислокации• Жила-была  старая  карта• Сделать  новую  карту  с  одной  базой
Хороший  пример• Так  же  много  баз  дислокации• Жила-была  старая  карта• Сделать  новую  карту  с  одной  базой• Миграц...
Хороший  примерСтарая  карта Новая  карта
Хороший  пример@Кусок  кода
Хороший  пример@Всё  в  память
Хороший  пример@Переписал
Хороший  пример• Стали  выходить  из  прототипа
Хороший  пример• Изменили  модель  данных  на  EAV• Стали  выходить  из  прототипа
Хороший  пример• Изменили  модель  данных  на  EAV• Стали  выходить  из  прототипа• Нужно  было  переписать  миграцию
Хороший  пример…  и  написать  пакет  SSIS
Хороший  пример
Хороший  пример@Вывод
Итого@Требования
Итого@Требования• Периодичность
Итого@Требования• Актуальность• Периодичность
Итого@Требования• Доступность• Актуальность• Периодичность
Итого@Требования• Доступность• Актуальность• Периодичность• Достоверность
Итого@Требования• Доступность• Актуальность• Периодичность• Достоверность• Ценность
Итого@Требования• Доступность• Актуальность• Периодичность• Достоверность• Ценность• Целостность
Конец
Чернышев  Артём,2ГИСcai@2gis.ru@chernyshev_artВопросы?
Upcoming SlideShare
Loading in …5
×

CodeFest 2013. Чернышев А. — Пути миграции перелётных данных

1,055 views

Published on

http://2013.codefest.ru/doklad/44

  • Be the first to comment

  • Be the first to like this

CodeFest 2013. Чернышев А. — Пути миграции перелётных данных

  1. 1. Чернышев  Артём,2ГИСПути  миграции  перелётных  данных
  2. 2. Миграция  это  - ETL
  3. 3. Миграция  это  - ETLExtract
  4. 4. Миграция  это  - ETLExtract Transform
  5. 5. Миграция  это  - ETLExtract Transform Load
  6. 6. Откуда  я  знаю  про  миграциюData warehousing
  7. 7. Откуда  я  знаю  про  миграциюBusiness Intelligence
  8. 8. Откуда  я  знаю  про  миграциюBig Data Management
  9. 9. Покажу  на  примере
  10. 10. Самый  первый  пример
  11. 11. Самый  первый  пример• Есть  логи скачиваний  пакетов  с  сервера
  12. 12. Самый  первый  пример• Есть  логи скачиваний  пакетов  с  сервера• …  но  они  в  бинарном  виде  
  13. 13. Самый  первый  пример• Есть  логи скачиваний  пакетов  с  сервера• Нужен  отчёт  заданного  вида  в  excel• …  но  они  в  бинарном  виде  
  14. 14. Самый  первый  пример• Есть  логи скачиваний  пакетов  с  сервера• Нужен  отчёт  заданного  вида  в  excel• …  но  они  в  бинарном  виде  • Каждый  первый  понедельник  месяца
  15. 15. Самый  первый  пример
  16. 16. Самый  первый  пример@ЧудесаСервер  доставлял  не  сразуДва горячих чая этому господину
  17. 17. Самый  первый  пример@ЧудесаИзменилась  периодичность
  18. 18. Самый  первый  пример@ЧудесаУвеличился  объём  данных
  19. 19. Самый  первый  пример@ЧудесаВид  отчёта  постоянно  менялся
  20. 20. Самый  первый  пример@ВыводыНикому  не  верь
  21. 21. Умей  отличить  заказчика  от  пользователяСамый  первый  пример@Выводы
  22. 22. Знай  роль  данных  в  бизнес-процессахСамый  первый  пример@Выводы
  23. 23. Мигрируй  чащеСамый  первый  пример@Выводы
  24. 24. Самый  первый  примерПериодичность
  25. 25. Самый  первый  примерПериодичность
  26. 26. Самый  первый  примерАктуальность
  27. 27. Самый  первый  пример• Понавставляли timestamp’ы  • Начали  лить  в  RDBMS• Разделили  миграцию  и  представление• Миграция  по  расписаниюРабота  над  ошибками• Начали  общаться  с  пользователями
  28. 28. Второй  пример
  29. 29. Второй  пример• Появились  клики
  30. 30. Второй  пример• Много  других  новых  метрик• Появились  клики
  31. 31. Второй  пример• Много  других  новых  метрик• Появились  клики• Необходима  связь  со  справочниками
  32. 32. Второй  пример• Много  других  новых  метрик• Появились  клики• Стало  больше  пользователей• Необходима  связь  со  справочниками
  33. 33. Второй  пример
  34. 34. Второй  пример@ЧудесаMySql не  любит,  когда  много  данных
  35. 35. Второй  пример@ЧудесаДанные  стали  критичными  для  бизнеса
  36. 36. Второй  пример@ЧудесаБольше  данных  – больше  ошибок
  37. 37. Второй  пример@ВыводыВажные  данные  нужно  проверять
  38. 38. Второй  пример@ВыводыВажные  данные  нужно  надёжно  хранить
  39. 39. Второй  пример@ЧудесаУправлять  данными  в  коде
  40. 40. Второй  пример@ВыводыИспользуй  верные  инструменты
  41. 41. Второй  пример@ВыводыИспользуй  верные  инструментыОдин  источник
  42. 42. Второй  пример@ВыводыИспользуй  верные  инструментыОдин  источникОдно  назначение+
  43. 43. Второй  пример@ВыводыИспользуй  верные  инструментыОдин  источникОдно  назначение+=Простая  логика+
  44. 44. Второй  пример@ВыводыИспользуй  верные  инструментыОдин  источникОдно  назначение+=SQL - скриптПростая  логика+
  45. 45. Второй  пример@ВыводыИспользуй  верные  инструментыМного  источников
  46. 46. Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=
  47. 47. Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=ETL Tools (тысячи  их)
  48. 48. Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=ETL Tools (тысячи  их)
  49. 49. Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=ETL Tools (тысячи  их)
  50. 50. Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=ETL Tools (тысячи  их)
  51. 51. Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+
  52. 52. Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=Real - time+
  53. 53. Второй  пример@ВыводыИспользуй  верные  инструментыМного  источниковМного  назначений+=Message BrokerReal - time+
  54. 54. Второй  пример@ВыводыИспользуй  верные  инструментыВо  всех  остальных  случаяхПишите  код,  пожалуйста
  55. 55. Второй  примерДоступностьКогда  просятКогда  сможемVS
  56. 56. Второй  примерДостоверность
  57. 57. Второй  примерЦенность
  58. 58. Второй  пример• Миграцию  перевели  на  SSIS• Перешли  на  MS SQL Server• Смастерили  систему  проверок• Начали  формализовывать  требованияРабота  над  ошибками
  59. 59. Чужой  пример
  60. 60. Чужой  пример• Жила-была  престарелая  CRM
  61. 61. Чужой  пример• Много  баз  дислокации• Жила-была  престарелая  CRM
  62. 62. Чужой  пример• Много  баз  дислокации• Жила-была  престарелая  CRM• Решили  сделать  новую
  63. 63. Чужой  пример• Много  баз  дислокации• Жила-была  престарелая  CRM• Решили  сделать  новую• С  одинокой  базёнкой
  64. 64. Чужой  пример• Много  баз  дислокации• Жила-была  престарелая  CRM• Решили  сделать  новую• С  одинокой  базёнкой• Совершить  миграцию  поручили  DBA
  65. 65. Чужой  примерСтарая  CRM Новая  CRMПакет  SSIS
  66. 66. Чужой  пример@ЧудесаDBA не  понимает  бизнес-логику
  67. 67. Чужой  пример@ЧудесаПроблемы  выявлялись  не  сразу
  68. 68. Чужой  пример@ЧудесаПроблемы  решались  долго
  69. 69. Чужой  пример@ВыводыИсполнитель  должен  быть  в  контексте
  70. 70. Чужой  пример@ВыводыМного  сущностей
  71. 71. Чужой  пример@ВыводыМного  сущностейМного  данных+
  72. 72. Чужой  пример@ВыводыМного  сущностейМного  данных+=Много  бизнес-логики+
  73. 73. Чужой  пример@ВыводыМного  сущностейМного  данных+=Промежуточная  базаМного  бизнес-логики+
  74. 74. Чужой  пример@ВыводыДелай  все  возможные  констрэйнты
  75. 75. Чужой  пример  Целостность
  76. 76. Хороший  пример
  77. 77. Хороший  пример• Жила-была  старая  карта
  78. 78. Хороший  пример• Так  же  много  баз  дислокации• Жила-была  старая  карта
  79. 79. Хороший  пример• Так  же  много  баз  дислокации• Жила-была  старая  карта• Сделать  новую  карту  с  одной  базой
  80. 80. Хороший  пример• Так  же  много  баз  дислокации• Жила-была  старая  карта• Сделать  новую  карту  с  одной  базой• Миграцию  для  прототипа  делал  разработчик
  81. 81. Хороший  примерСтарая  карта Новая  карта
  82. 82. Хороший  пример@Кусок  кода
  83. 83. Хороший  пример@Всё  в  память
  84. 84. Хороший  пример@Переписал
  85. 85. Хороший  пример• Стали  выходить  из  прототипа
  86. 86. Хороший  пример• Изменили  модель  данных  на  EAV• Стали  выходить  из  прототипа
  87. 87. Хороший  пример• Изменили  модель  данных  на  EAV• Стали  выходить  из  прототипа• Нужно  было  переписать  миграцию
  88. 88. Хороший  пример…  и  написать  пакет  SSIS
  89. 89. Хороший  пример
  90. 90. Хороший  пример@Вывод
  91. 91. Итого@Требования
  92. 92. Итого@Требования• Периодичность
  93. 93. Итого@Требования• Актуальность• Периодичность
  94. 94. Итого@Требования• Доступность• Актуальность• Периодичность
  95. 95. Итого@Требования• Доступность• Актуальность• Периодичность• Достоверность
  96. 96. Итого@Требования• Доступность• Актуальность• Периодичность• Достоверность• Ценность
  97. 97. Итого@Требования• Доступность• Актуальность• Периодичность• Достоверность• Ценность• Целостность
  98. 98. Конец
  99. 99. Чернышев  Артём,2ГИСcai@2gis.ru@chernyshev_artВопросы?

×