Notes on Google Megastore
More notes
Google Megastore
P.S. Megastore is the data engine supporting the Google Application Engine.
понедельник, 16 мая 2011 г.
Are Cloud Based Memory Architectures the Next Big Thing?
Who are the Major Players in this Space?:
With that bit of background behind us, there are several major players in this space (in alphabetical order):
Coherence - is a peer-to-peer, clustered, in-memory data management system. Coherence is a good match for applications that need write-behind functionality when working with a database and you require multiple applications have ACID transactions on the database. Java, JavaEE, C++, and .NET.
GemFire - an in-memory data caching solution that provides low-latency and near-zero downtime along with horizontal & global scalability. C++, Java and .NET.
GigaSpaces - GigaSpaces attacks the whole stack: Compute Grid, Data Grid, Message, Colocation, and Application Server capabilities. This makes for greater complexity, but it means there's less plumbing that needs to be written and developers can concentrate on writing business logic. Java, C, or .Net.
GridGain - A compute grid that can operate over many data grids. It specializes in the transparent and low configuration implementation of features. Java only.
Terracotta - Terracotta is network-attached memory that allows you share memory and do anything across a cluster. Terracotta works its magic at the JVM level and provides: high availability, an end of messaging, distributed caching, a single JVM image. Java only.
WebSphere eXtreme Scale. Operates as an in-memory data grid that dynamically caches, partitions, replicates, and manages application data and business logic across multiple servers.
With that bit of background behind us, there are several major players in this space (in alphabetical order):
Coherence - is a peer-to-peer, clustered, in-memory data management system. Coherence is a good match for applications that need write-behind functionality when working with a database and you require multiple applications have ACID transactions on the database. Java, JavaEE, C++, and .NET.
GemFire - an in-memory data caching solution that provides low-latency and near-zero downtime along with horizontal & global scalability. C++, Java and .NET.
GigaSpaces - GigaSpaces attacks the whole stack: Compute Grid, Data Grid, Message, Colocation, and Application Server capabilities. This makes for greater complexity, but it means there's less plumbing that needs to be written and developers can concentrate on writing business logic. Java, C, or .Net.
GridGain - A compute grid that can operate over many data grids. It specializes in the transparent and low configuration implementation of features. Java only.
Terracotta - Terracotta is network-attached memory that allows you share memory and do anything across a cluster. Terracotta works its magic at the JVM level and provides: high availability, an end of messaging, distributed caching, a single JVM image. Java only.
WebSphere eXtreme Scale. Operates as an in-memory data grid that dynamically caches, partitions, replicates, and manages application data and business logic across multiple servers.
Ярлыки:
IMDG
Q&A with Tangosol's Cameron Purdy and Peter Utzschneider
Q&A with Tangosol's Cameron Purdy and Peter Utzschneider:
"Their functionality and the data that they depend on must all be continuously available, surviving failures of servers, networks and even data centers."
"We can now detect a remote garbage collection within milliseconds, and dynamically reshape the cluster's traffic to avoid overheating that node."
"The self-tuning algorithms, flow control and traffic shaping features have propelled us years ahead of the technology curve, and help to explain how Coherence is the lowest latency, highest throughput and most scalable clustered data management system in existence."
"This 3.2 release is also notable because it is the first release that we have focused specifically on cluster latency, largely related to specific requests from telecom and financial services customers."
"In my experience, switching to Infiniband form GigE is a big win. But also, I've seen a strictly linear, by-the-ruler, scaling to nearly 400 cache nodes"
"Their functionality and the data that they depend on must all be continuously available, surviving failures of servers, networks and even data centers."
"We can now detect a remote garbage collection within milliseconds, and dynamically reshape the cluster's traffic to avoid overheating that node."
"The self-tuning algorithms, flow control and traffic shaping features have propelled us years ahead of the technology curve, and help to explain how Coherence is the lowest latency, highest throughput and most scalable clustered data management system in existence."
"This 3.2 release is also notable because it is the first release that we have focused specifically on cluster latency, largely related to specific requests from telecom and financial services customers."
"In my experience, switching to Infiniband form GigE is a big win. But also, I've seen a strictly linear, by-the-ruler, scaling to nearly 400 cache nodes"
Ярлыки:
IMDG,
Oracle Coherence
вторник, 26 апреля 2011 г.
Есть желающие стать Junior Java Developer в EPAM?
Лаборатория пока не распределённых систем, а учебная. Ответственен в том числе за подготовку Junior Java Developer (D1). Новость следующая - в период 15июня-15сентября в харьковском офисе EPAM будет работать так называемая Pre-prodaction program:
1. Как попасть?
- прислать мне на Golovach.Ivan@gmail.com резюме (главное: Ваш уровень английского, что писали/изучали в институте)
- выполнить ряд заданий (на написание нескольких сот строк кода на Java), которые я вышлю в ответ на резюме
- выслушать мои замечания на выполненные задания и исправить решения
// по сути дела проверятся Ваши: базовые знания + способность изменить решение в свете новых требований
2. Что будет происходить?
- в период 15июня-15сентября Вы работаете в харьковском офисе EPAM на full-time на боевом проекте под моим руководством
- получаете на время обучения зп - 250$
- слушаете и применяете теор материал, который я Вам начитываю: Spring Core, Spring MVC, Hibernate, RDBMS fundamentals, web-app fundamentals.
- по окончанию срока обучения (15 сентября) Вы сдаете экзамен
- по результатам экзамена (15 сентября) Вы либо отчисляетесь, либо я передаю Вас на другие проекты в другие команды с переходом в статус Junior Java Developer (D1)
- в зависимости от результатов экзамена Вы получаете повышение зп
3. Что Вы с этого будете иметь?
- гарантированную зп на время обучения
- фундаментальные знания от System Architect
- опыт работы в реальном проекте с реальным стеком технологий (JSF+Spring+Hibernate+Oracle)
- возможность продолжить работу в одной из крупнейших IT компаний
P.S. Если у Вас есть знакомые заинтересованные в быстром старте в карьере в IT - передайте новость им.
1. Как попасть?
- прислать мне на Golovach.Ivan@gmail.com резюме (главное: Ваш уровень английского, что писали/изучали в институте)
- выполнить ряд заданий (на написание нескольких сот строк кода на Java), которые я вышлю в ответ на резюме
- выслушать мои замечания на выполненные задания и исправить решения
// по сути дела проверятся Ваши: базовые знания + способность изменить решение в свете новых требований
2. Что будет происходить?
- в период 15июня-15сентября Вы работаете в харьковском офисе EPAM на full-time на боевом проекте под моим руководством
- получаете на время обучения зп - 250$
- слушаете и применяете теор материал, который я Вам начитываю: Spring Core, Spring MVC, Hibernate, RDBMS fundamentals, web-app fundamentals.
- по окончанию срока обучения (15 сентября) Вы сдаете экзамен
- по результатам экзамена (15 сентября) Вы либо отчисляетесь, либо я передаю Вас на другие проекты в другие команды с переходом в статус Junior Java Developer (D1)
- в зависимости от результатов экзамена Вы получаете повышение зп
3. Что Вы с этого будете иметь?
- гарантированную зп на время обучения
- фундаментальные знания от System Architect
- опыт работы в реальном проекте с реальным стеком технологий (JSF+Spring+Hibernate+Oracle)
- возможность продолжить работу в одной из крупнейших IT компаний
P.S. Если у Вас есть знакомые заинтересованные в быстром старте в карьере в IT - передайте новость им.
Ярлыки:
private
Получил четвертую звезду!
Всем привет.
Я с 11 апреля работаю в харьковском офисе EPAM на должности Lab Lead в звании System Architect (D4).
Я с 11 апреля работаю в харьковском офисе EPAM на должности Lab Lead в звании System Architect (D4).
Ярлыки:
privat
четверг, 21 апреля 2011 г.
Intel® Threading Building Blocks – Documentation
Intel® Threading Building Blocks – Documentation::
- Release Notes [TXT 6KB]
- Getting Started Guide [PDF 122KB]
- Tutorial [PDF 573KB]
- Reference Manual [PDF 1.1MB]
- Design Patterns [PDF 264KB]
- Release Notes [TXT 6KB]
- Getting Started Guide [PDF 122KB]
- Tutorial [PDF 573KB]
- Reference Manual [PDF 1.1MB]
- Design Patterns [PDF 264KB]
пятница, 1 апреля 2011 г.
checkdeadlock.org - первый релиз
В продолжении к предыдущему посту. Т.к. домашний компьютер постоянно включенным оказалось очень неудобно, разместил на hosting.ua проект checkdeadlock.org. На этом хостинге нет контейнера сервлетов, поэтому пришлось написать свой небольшой сервер, который работает на 8080 порту (т.к. я не root, то доступ к 80 мне пока закрыт. Нужно будет поговорить по этому поводу с саппортом. Но пока и так неплохо).
Ярлыки:
Concurrency,
deadlock
суббота, 26 марта 2011 г.
Нахождение взаимных блокировок потоков при статическом анализе кода
Всем доброго вечера.
Когда Иван читал у нас, на мех-мате в Каразина свой спецкурс у меня появилась навящевая идея по поиску дедлоков без запуска программы, только на основании ее кода. Было сделано несколько попыток найти какой-то внятный алгоритм. К настоящему моменту я достаточно неплохо, как мне кажется, продвинулся в этом направлении.
Чтобы не усложнять до предела работу по парсингу кода на Java или C я написал простой язык для описания потоков.
Когда Иван читал у нас, на мех-мате в Каразина свой спецкурс у меня появилась навящевая идея по поиску дедлоков без запуска программы, только на основании ее кода. Было сделано несколько попыток найти какой-то внятный алгоритм. К настоящему моменту я достаточно неплохо, как мне кажется, продвинулся в этом направлении.
Чтобы не усложнять до предела работу по парсингу кода на Java или C я написал простой язык для описания потоков.
Ярлыки:
Concurrency,
deadlock
среда, 16 марта 2011 г.
среда, 9 марта 2011 г.
вторник, 8 марта 2011 г.
habrahabr: Обзор NoSQL систем
Обзор NoSQL систем
Cassandra, HBase, Riak, Scalaris, Voldemort, CouchDB, MongoDB, Neo4j, Redis, Tokyo Cabinet
Cassandra, HBase, Riak, Scalaris, Voldemort, CouchDB, MongoDB, Neo4j, Redis, Tokyo Cabinet
понедельник, 7 марта 2011 г.
A Note on Distributed Computing
A Note on Distributed Computing
Abstract
We argue that objects that interact in a distributed system need to be dealt with in ways that are intrinsically different from objects that interact in a single address space. These differences are required because distributed systems require that the programmer be aware of latency, have a different model of memory access, and take into account issues of concurrency and partial failure.
We look at a number of distributed systems that have attempted to paper over the distinction between local and remote objects, and show that such systems fail to support basic requirements of robustness and reliability. These failures have been masked in the past by the small size of the distributed systems that have been built. In the enterprise-wide distributed systems foreseen in the near future, however, such a masking will be impossible.
We conclude by discussing what is required of both systems-level and application level programmers and designers if one is to take distribution seriously.
Abstract
We argue that objects that interact in a distributed system need to be dealt with in ways that are intrinsically different from objects that interact in a single address space. These differences are required because distributed systems require that the programmer be aware of latency, have a different model of memory access, and take into account issues of concurrency and partial failure.
We look at a number of distributed systems that have attempted to paper over the distinction between local and remote objects, and show that such systems fail to support basic requirements of robustness and reliability. These failures have been masked in the past by the small size of the distributed systems that have been built. In the enterprise-wide distributed systems foreseen in the near future, however, such a masking will be impossible.
We conclude by discussing what is required of both systems-level and application level programmers and designers if one is to take distribution seriously.
Подписаться на:
Сообщения (Atom)