IT technologies in our life

Умные тоже наступают на грабли, но только для того, чтобы поднять их с земли, не нагибаясь.

«Татьяна Семенова»

Для установки Hypertable вам необходимо иметь root права на компьютере, и весь последуюший пример выполняеться с под пользователя root.

Также советую обратить внимание на фаервол, так как Hypertable работает посредствои TCP и UDP (те кто незнает где смотреть фаервол в Linux можете непариться, вероятнее всего он у вас разрешает всё :) и проблем не возникнет ).

Порты используемые Hypertable

Port Protocol Service
38030 TCP DFS Broker
38040 TCP Hyperspace
38040 UDP Hyperspace
38041 TCP Hyperspace
38050 TCP Master
38060 TCP Range Server
38080 TCP Thrift Broker
38090 TCP Monitoring UI

Hypertable можно собрать из исходников или воспользоваться пакетом собраным разработчиками. Мы пойдем самым простым путям и установим его из пакета.
Читать дальше »

Виды установок Hypertable

Май-18-2012 By admin

Hypertable можно установить в трех различных конфигурациях, такая многообразность получилась из-за поддержки нескольких способов хранения данных.

Standalone

Данный способ работы расчитан на приложения, требующие для работы Hypertable , но не требуют горизонтальной масштабируемости и поддержки MapReduce. Hypertable настраиваеться для запуска на одном компьютере и использует файловую систему ОС. Для улучшей производительности, на такие машины предлагают использовать SSD винчестеры.

Hadoop

Hadoop это фактически открытая реализация Google Filesystem и MapReduce. Он содержит все особенности, необходимые для эффективной работы Hypertable.

MapR

MapR это масштабируемая файловая система написаная на C + +, созданая по образцу Google File System и является 100% совместимой с API Apache Hadoop. Hypertable имеет встроеный MapR брокер, что позволяет ему напримую взаимодействует с серверами MapR. Hypertable в связке с MapR достигает максимальной производительности.

Hypertable

Май-18-2012 By admin

Hypertable это высокопроизводительная, масштабируемая база данных по образцу Bigtable, с открытым исходным кодом.
Hypertable похож на реляционную базу данных, тем что он представляет данные в виде таблиц, строк и столбцов, но таковой не являеться.
Основные отличия:

  1. Ключи являються UTF-8 строками
  2. Нет поддержки типов данных, значения интерпретируются как непрозрачные последовательности байтов
  3. Отсутствие операций JOIN
  4. Нет поддержки транзакций

Реляционная база данных предполагает, что каждый столбец, определенный в таблице схемы будут иметь значение для каждой строки, которая присутствует в таблице. NULL значения, как правило, представлен виде специального маркера (например, \ N). Первичный ключ и идентификатор столбца неявно связанные с каждой ячейкой на основе его физическое положение в макете.

На следующем рисунке показано, как таблица реляционной базы данных могжет выглядеть на диске.

Hypertable (и Bigtable) работают по принципу "Log Structured Merge Tree". Такой подход сглаживает структуру таблиц в упорядоченный список пар ключ/значение, каждый из которых представляет ячейку таблицы. Ключ включает в себя полный идентификатор строки и столбца, что обеспечивает полную адресную информацию. Ячейки NULL просто не включены в список, что позволяет хранить разреженные данные.

На следующем рисунке показано, как Hypertable представляет данные на диске.

GUI для работы с Postgresql

Май-11-2012 By admin

На мой взгляд самое удобное GUI для работы с Postgresql это pgAdmin III
Поддерживает платформы - MS Windows, GNU/Linux, FreeBSD, Mac OS X, OpenBSD, Solaris
Обладает полной поддержкой юникода, многопоточных запросов, всех типов данных Postgresql и русским интерфейсом :)

В официальном репозитории дебиана доступен сервер PostgreSQL версии 8.4. Но это не значит что нам необходимо сразу бросаться компилить пакет с нуля, мы можем поискать стороннюю репу и подключить её. Ведь вероятно что кто-то уже собрал его за нас :)

http://pgapt.debian.net/ - какраз тот репозиторий что нам необходим.
Читать дальше »

И не поспоришь

Апр-20-2012 By admin

Для создания индекса достаточно выполнить в консоле монги следуюшее:

1
db.stats_daily_domain.ensureIndex({ "date" : 1, "domain" : 1 },{ "name" : "_date_domain" });

{ "date" : 1, "domain" : 1 } - поля по которым следует строить индек и его направление
{ "name" : "_date_domain" } - название индекса

Для перестройки индексов используеться команда DBCC DBREINDEX.

1
2
3
4
5
6
DBCC DBREINDEX
(
table_name
[ , index_name [ , fillfactor ] ]
)
[ WITH NO_INFOMSGS ]

Читать дальше »

Не смотря на то что большое число операций в SQL Server 2000 автоматизированы, сопровождение индексов может быть значительной частью работы администратора БД. Если понизилось быстродействие – первое на что следует обратить внимание, фрагментация БД. Фрагментация БД возникает когда данные в БД меняются.
Читать дальше »