За гранью NoSQL: NewSQL на Cassandraodnoklassniki.ruДо недавнего времени в Одноклассниках около 50 ТБ данных, обрабатываемых в реальном времени, хранилось в Microsoft SQL Server. Многие знают, что для такого объема обеспечить быстрый и надежный, да еще и устойчивый к отказу ЦОД доступ, используя SQL СУБД, практически невозможно. Обычно в таких случаях используют одно из NoSQL хранилищ, но не всё можно перенести в NoSQL: некоторые сущности требуют гарантий ACID-транзакций.
Это ограничение подвело нас к необходимости использования NewSQL хранилища, то есть СУБД, предоставляющей отказоустойчивость, масштабируемость и быстродействие NoSQL-систем, но при этом сохраняющей привычные для классических систем ACID-гарантии. Работающих промышленных систем этого нового класса немного (сразу приходит на ум только Google Spanner), а доступных — и вовсе нет. Поэтому мы реализовали такую систему сами на любимой нами Java и запустили ее в промышленную эксплуатацию несколько месяцев назад.
Доклад про то, как устроено это хранилище будет интересен всем, кто следит за развитием технологий управления базами данных и имеет опыт работы с (No)SQL.
Как работают транзакции. Лекция 3Pavel Kravchenko, PhDПрезентации из курса лекций "Основы криптовалют", который читается для студентов ХНУРЕ на кафедре БИТ.
Lecture 2. mobile business strategyVitaliy PakThis document discusses mobile business strategies and the mobile environment. It covers various wireless technologies including WiFi, HiperLAN, Bluetooth, ZigBee, WirelessUSB, Ultra Wide Band, and WiMAX. It also discusses location-based services, approaches to mobile business like NTT DoCoMo's "MAGIC" strategy, and outlines a mobile business roadmap and value chain. Key factors in analyzing the mobile environment are discussed such as Porter's 5 Forces and SWOT analyses.
NoSQL - коротко о главном / Сергей Туленцев (TextMaster)OnticoВ последнее время сайты и веб-приложения растут всё быстрее, а задачи, стоящие перед БД, эволюционируют. Поэтому для (успешных) проектов традиционная реляционная СУБД часто не может удовлетворить все нужды. В ответ на эту проблему возникло большое количество разнообразных решений, очень различающихся по функциональности и характеристикам. При этом они все заносятся под один большой зонтик "NoSQL", что не способствует пониманию вещей. Запутанные веб-разработчики пытаются взять текущую модную и обсуждаемую NoSQL БД и приспособить её под свои нужды, не всегда понимая, нужную ли технологию они выбрали (референс к MongoDB is Web Scale http://www.youtube.com/watch?v=b2F-DItXtZs).
Целью доклада является упорядочение хаоса в головах разработчиков.
- Обзор популярных БД и их классификация (KV store, document store, columnar, etc).
- CAP-теорема и её применение к выбору БД (где-то параметры можно настроить, где-то подпереть сбоку костылем, где-то - увы).
- Типичные примеры применения.
- Антипаттерны применения (из личного опыта и тысяч прочитанных вопросов на stackoverflow :) ).
DBD lection 1. Intro in Database Design. In Russian.mikhaelsmirnovOverview all that needed in this course: literature, software, competentions. Plan of course on '15 studing year.
Понятия технологии разработки объектно-ориентированных информационных систем ...Aimurat AdilbekovПЛАН:
1. Причины неудачных проектов
2. Отсутствие моделей при разработке ПО
3. Лучшие практики разработки ПО
4. Что такое визуальное моделирование?
5. Основные понятия визуального моделирования
6. Классификация проектов по сложности
7. Основные понятия ООП
За гранью NoSQL: NewSQL на Cassandraodnoklassniki.ruДо недавнего времени в Одноклассниках около 50 ТБ данных, обрабатываемых в реальном времени, хранилось в Microsoft SQL Server. Многие знают, что для такого объема обеспечить быстрый и надежный, да еще и устойчивый к отказу ЦОД доступ, используя SQL СУБД, практически невозможно. Обычно в таких случаях используют одно из NoSQL хранилищ, но не всё можно перенести в NoSQL: некоторые сущности требуют гарантий ACID-транзакций.
Это ограничение подвело нас к необходимости использования NewSQL хранилища, то есть СУБД, предоставляющей отказоустойчивость, масштабируемость и быстродействие NoSQL-систем, но при этом сохраняющей привычные для классических систем ACID-гарантии. Работающих промышленных систем этого нового класса немного (сразу приходит на ум только Google Spanner), а доступных — и вовсе нет. Поэтому мы реализовали такую систему сами на любимой нами Java и запустили ее в промышленную эксплуатацию несколько месяцев назад.
Доклад про то, как устроено это хранилище будет интересен всем, кто следит за развитием технологий управления базами данных и имеет опыт работы с (No)SQL.
Как работают транзакции. Лекция 3Pavel Kravchenko, PhDПрезентации из курса лекций "Основы криптовалют", который читается для студентов ХНУРЕ на кафедре БИТ.
Lecture 2. mobile business strategyVitaliy PakThis document discusses mobile business strategies and the mobile environment. It covers various wireless technologies including WiFi, HiperLAN, Bluetooth, ZigBee, WirelessUSB, Ultra Wide Band, and WiMAX. It also discusses location-based services, approaches to mobile business like NTT DoCoMo's "MAGIC" strategy, and outlines a mobile business roadmap and value chain. Key factors in analyzing the mobile environment are discussed such as Porter's 5 Forces and SWOT analyses.
NoSQL - коротко о главном / Сергей Туленцев (TextMaster)OnticoВ последнее время сайты и веб-приложения растут всё быстрее, а задачи, стоящие перед БД, эволюционируют. Поэтому для (успешных) проектов традиционная реляционная СУБД часто не может удовлетворить все нужды. В ответ на эту проблему возникло большое количество разнообразных решений, очень различающихся по функциональности и характеристикам. При этом они все заносятся под один большой зонтик "NoSQL", что не способствует пониманию вещей. Запутанные веб-разработчики пытаются взять текущую модную и обсуждаемую NoSQL БД и приспособить её под свои нужды, не всегда понимая, нужную ли технологию они выбрали (референс к MongoDB is Web Scale http://www.youtube.com/watch?v=b2F-DItXtZs).
Целью доклада является упорядочение хаоса в головах разработчиков.
- Обзор популярных БД и их классификация (KV store, document store, columnar, etc).
- CAP-теорема и её применение к выбору БД (где-то параметры можно настроить, где-то подпереть сбоку костылем, где-то - увы).
- Типичные примеры применения.
- Антипаттерны применения (из личного опыта и тысяч прочитанных вопросов на stackoverflow :) ).
DBD lection 1. Intro in Database Design. In Russian.mikhaelsmirnovOverview all that needed in this course: literature, software, competentions. Plan of course on '15 studing year.
Понятия технологии разработки объектно-ориентированных информационных систем ...Aimurat AdilbekovПЛАН:
1. Причины неудачных проектов
2. Отсутствие моделей при разработке ПО
3. Лучшие практики разработки ПО
4. Что такое визуальное моделирование?
5. Основные понятия визуального моделирования
6. Классификация проектов по сложности
7. Основные понятия ООП
Lecture 5. Secure agent roaming for mobile businessVitaliy PakThis document discusses intelligent agent roaming for mobile commerce (M-commerce). It introduces some key challenges with M-commerce like security and lack of intelligence. Intelligent agents are proposed as a solution, but agent roaming introduces new security issues. The document then describes the SAFE transport protocol, which provides secure roaming for agents. SAFE uses supervised and unsupervised agent transport protocols, which involve agents getting permits from receptionists to safely roam between hosts while protecting sensitive data and functions.
Trend of 4th induatrial revolution linked application service technology base...Vitaliy PakThe document discusses trends in the 4th Industrial Revolution including the Internet of Things (IoT) and how lighting technology is evolving to enable the Internet of Lights (IoL). It outlines how LED lighting infrastructure can be leveraged for applications like intelligent lighting, Li-Fi broadband connections, and creating smart environments for homes, offices, retail stores, and cities. The goals of developing an IoL standard are also summarized as being IP-based, open, extensible, interoperable, secure, with consideration for performance, security, privacy, and energy efficiency.
Ai in farmingVitaliy PakArtificial intelligence has the potential to help address challenges facing the agricultural sector as the global population increases. New technologies like drones, driverless tractors, automated irrigation, and machine learning are helping farmers monitor crops and soils, apply inputs precisely, and increase yields. Startups are developing tools using computer vision, satellites, and deep learning to diagnose plant health, predict weather, and optimize resource use. These AI solutions aim to help farmers "do more with less" and help feed the world's growing population in a sustainable way.
Lecture 4. information delivery for mobile businessVitaliy PakThis document discusses mobile document summarization and browsing applications. It introduces the need for accessing large documents through mobile devices due to increasing mobile internet usage and fast-paced business decisions. Summarization and hierarchical displays are effective methods for browsing documents on small screens by condensing information and allowing users to expand subsections. Several top word processing applications for mobile are also reviewed, including Pages, Google Docs, iA Writer, WPS Office, and Microsoft Word.
Lecture 3. A methodology for M-Tansformation of small and medium enterprisesVitaliy PakThe document discusses the methodology for mobile transformation (M-transformation) of small and medium enterprises (SMEs). M-transformation is defined as the evolution of business practices through adopting mobile technologies and processes to enable mobility and pervasiveness. Key requirements for SME M-transformation include using ICT systems that are quick to deploy, easy to use, secure, reliable, and offer continuous return on investment. The methodology for M-transformation must be a staged process that balances technology adoption with business process changes, shows early benefits, and receives feedback to evolve over time.
Lecture 1. the definition of mobile businessVitaliy PakThe document discusses the definition and history of e-business and m-business. It defines m-business as applying business relationships and selling information/services using mobile devices. Motivations for m-business include flexibility, extending functionality to customers, and increasing revenue/market share. The document outlines various m-business applications and the technology/infrastructure that supports it, but also notes there are challenges to implementing m-business like changes required to business processes, security issues, and impact on consumers and transition costs for businesses.
Difference between Chinese and KoreanVitaliy PakThis document compares and contrasts Chinese and Korean culture across several domains:
- Origins - Koreans are native to the Korean peninsula and Manchuria, while Han Chinese make up 92% of China's population.
- Physical appearance - Koreans generally have flatter faces and smaller eyes compared to Chinese people, whose eyes are more angled downwards.
- Birthday traditions - Both cultures celebrate a child's first birthday with offerings and predicting the child's future based on what items they pick up. However, Koreans specifically prepare rice cakes and dress the child in colorful clothing.
- Wedding ceremonies - Korean weddings involve the groom gifting the bride's mother a goose and drinking a special wine from
IT in KoreaVitaliy PakThis document provides an overview of several major technology companies and platforms in South Korea. It discusses SK hynix, a leading memory chip manufacturer; Naver, a major internet portal and search engine; KakaoTalk, a popular mobile messaging application; the World Cyber Games esports competition; and T-money, the smart payment cards used on public transportation. The document highlights Korea's prominence in industries like semiconductors, internet services, mobile apps, gaming, and digital payments.
2. Основные понятия
ООМД. (Логическая) модель данных, которая
учитывает семантику объектов, применяемую в
объектно-ориентированном программировании.
ООБД. Перманентный, совместно используемый
набор (коллекция) .объектов, определенный
средствами ООМД.
ООСУБД. Система управления (диспетчер) ООБД.
3. Минимальная совокупность
требований к ООСУБД
1. Предоставлять функциональные средства базы
данных.
2. Поддерживать идентичность объектов.
3. Обеспечивать инкапсуляцию.
4. Поддерживать объекты со сложным состоянием.
4. Перманентные языки
программирования
Перманентный язык программирования – язык,
который позволяет пользователям сохранять
данные непосредственно при выполнении
программы (не предусматривая для этого особых
действий), после чего эти данные могут
использоваться во многих других программах.
Язык программирования базы данных - язык, в
котором используются некоторые идеи, взятые
как из модели программирования баз данных, так
и из концепций общепринятых языков
программирования.
5. Цели исследователей
перманентных языков
Повышение производительности
программирования за счет использования
более простой семантики.
Устранение произвольно выбранных
конструкций, применяемых при
преобразовании данных и их долговременном
хранении.
Создание механизмов защиты для всей
вычислительной среды.
6. Подходы к разработке ООСУБД
Введение средств работы с базой данных в
существующий объектно-ориентированный язык
программирования.
Предоставление расширяемых объектно-
ориентированных библиотек СУБД.
Внедрение конструкций объектно-ориентированного
языка базы данных в обычный базовый язык.
Дополнение существующего языка базы данных
объектно-ориентированными функциями.
Разработка нового языка базы данных или модели
данных.
7. Компоненты ООСУБД
1. Модель данных
2. Перманентность данных
3. Совместное использование данных
4. Надежность
5. Масштабируемость
6. Безопасность и целостность
7. Распределенность
8. Особенности обычной СУБД.
Программист отвечает за принятие решения о
том, когда должно выполняться чтение или
обновление объектов данных (записей)
Программист должен создать код преобразования
данных между конструкциями объектной модели
приложения и модели данных СУБД (например,
отношениями), которые могут быть совершенно
разными
Программист отвечает за выполнение
дополнительной проверки типов при чтении
объекта из базы данных
11. Методы подстановки
указателей
Подстановка указателей - прямое и обратное
преобразование идентификаторов объектов в
указатели оперативной памяти.
Основная цель подстановки указателей заключается
в оптимизации доступа к объектам
12. Классификация методов
преобразования указателей
1. Подстановка за счет копирования или
непосредственная подстановка
2. Методы предварительной и отложенной
подстановки
3. Прямая и косвенная подстановка
13. Этапы доступа к объекту в
обычной СУБД
1. СУБД определяет страницу во внешнем устройстве
хранения, содержащую требуемую запись
2. СУБД последовательно переносит требуемые
элементы записи из кэша в пространство памяти
приложения
3. Приложение может обновлять значения полей в
своем собственном пространстве памяти
4. Модифицированные приложением поля данных
средствами языка SQL переносятся назад в кэш СУБД
5. СУБД сохраняет обновленную страницу на внешнем
устройстве хранения
14. Этапы доступа к объекту в
ООСУБД
1. ООСУБД находит на внешнем устройстве хранения
страницу, содержащую требуемый объект, используя
его OID или индекс
2. ООСУБД может затем выполнить несколько
различных преобразований
подстановку ссылок (указателей) одного объекта на
другой;
введение в состав данных объекта информации
изменение формата представления данных, созданных
разных аппаратных платформах или языках
программирования
15. Этапы доступа к объекту в
ООСУБД
3. Приложение осуществляет непосредственный доступ
к объекту и обновляет его по мере необходимости.
4. Когда приложению потребуется сделать внесенные
изменения перманентными или просто выгрузить на
время страницу из кэша на диск, то перед
копированием страницы на внешнее устройство
хранения ООСУБД должна выполнить обратные
преобразования, аналогичные описанным выше
16. Перманентность
СУБД должна предоставлять поддержку хранения
перманентных (persistent) объектов,
сохраняющихся даже после завершения
пользовательского сеанса или прикладной
программы, во время которых они были созданы.
Схемы обеспечения перманентности:
Создание контрольных точек.
Сериализация
Явная подкачка объектов
17. Преимущества объектно-
ориентированных СУБД
Улучшенные возможности моделирования
Расширяемость
Устранение проблемы несоответствия типов
Более выразительный язык запросов
Поддержка эволюции схемы
Поддержка долговременных транзакций
Применимость для сложных специализированных
приложений баз данных
Повышенная производительность
18. Недостатки объектно-
ориентированных СУБД
Отсутствие универсальной модели данных
Недостаточность опыта эксплуатации
Отсутствие стандартов
Конкуренция со стороны СУБД других типов
Влияние оптимизации запросов на инкапсуляцию
Влияние блокировки на уровне объекта на
производительность
Сложность
Отсутствие поддержки представлений
Недостаточность средств обеспечения защиты
19. Проектирование объектно-
ориентированной базы данных
Методология концептуального и логического
проектирования базы данных, которая основана
на создании EER-модели, имеет определенное
сходство с объектно-ориентированным
моделированием данных (Object-Oriented Data
Modeling – OODM)
20. Сравнение объектной и
реляционной моделей
Объектное
моделирование
Логическое
моделирование
Существующие отличия
Объект Сущность
Объект содержит сведения о правилах
поведения
Атрибут Атрибут Нет
Связь Связь
Те же ассоциативные связи, но
наследование в модели ООМД
включает сведения о состоянии и
правилах поведения
Сообщения
В логической модели нет такого
понятия
Класс Тип сущности Нет
Экземпляр Сущность Нет
Инкапсуляция
В логической модели нет такого
понятия
21. Связи и ссылочная
целостность
В объектно-ориентированной модели данных связи
представлены с помощью ссылочных атрибутов,
которые обычно реализуются с помощью
идентификаторов OID.
В методологии все связи, отличные от
двухсторонних (например, трехсторонние),
преобразуются в двухсторонние.
24. Проектирование правил
поведения
Для полного проектирования объектно-
ориентированной базы данных одного только
EER-подхода недостаточно
Необходимо дополнить его некоторой
технологией определения и документирования
правил поведения каждого класса объектов
В объектно-ориентированном анализе
требования, предъявляемые к обработке данных,
реализуются путем создания набора методов,
уникальных для каждого класса
25. Три типа методов
конструкторы и деструкторы - вырабатывает
и удаляет новые экземпляры класса );
методы доступа - возвращают значение
атрибута или набора атрибутов некоторого
экземпляра класса;
методы преобразования - изменяют
(преобразуют) состояние экземпляра класса.