jump to navigation

Bazy danych bez SQL 11/25/2009

Posted by Mikołaj Morzy in bazy danych, nauka.
2 comments

Gdy się pracuje w bazach danych, warto słuchać, co ma do powiedzenia Michael Stonebraker. Szczególnie, gdy bierze się za obronę systemów zarządzania bazami danych przed różnymi zakusami, np. przed powrotem do pre-relacyjnej ery pod postacią MapReduce. Tym razem na łamach blogu Communications of the ACM Stonebraker ostro atakuje zwolenników porzucenia tradycyjnych systemów zarządzania bazami danych na rzecz baz danych „NoSQL”, czyli różnego rodzaju składnic danych w stylu rozproszonych tablic haszowych lub składnic dokumentów. Stonebraker twierdzi, że nie istnieją żadne racjonalne przesłanki aby rezygnować z dobrodziejstw oferowanych przez tradycyjne bazy danych (przetwarzanie transakcyjne, zorientowany na zbiory język zapytań, zarządzanie współbieżnością, wielowersyjność, spójność i odtwarzanie po awarii) w celu niewielkiego przyspieszenia działania bazy danych. Opierając się na pracy „OLTP Through the Looking Glass, and What We Found Theretwierdzi, że głównymi powodami opóźnień we współczesnych bazach danych są: zapis logu (dziennika), zakładanie blokad, zakładanie blokad na obiektach współdzielonych w pamięci (ang. latches) oraz zarządzanie buforem danych. W efekcie, nie można znacząco przyspieszyć działania bazy danych bez usunięcia jednego z tych mechanizmów, a co za tym idzie, bez poświęcenia jednej z fundamentalnych usług systemu zarządzania bazą danych (np. usunięcie zapisu logu uniemożliwi odtwarzanie po awarii i zapewnianie trwałości transakcji, usunięcie blokad uniemożliwi implementację pesymistycznych algorytmów zarządzania współbieżnością, itd.)

Cały wpis (autor zapowiada, że pojawi się jeszcze druga część) jest bardzo ciekawy i wart lektury.

Jak zarobić $1 000 000 nie ruszając się sprzed biurka? 11/25/2009

Posted by Mikołaj Morzy in nauka, teoria.
1 comment so far

W zasadzie nawet nie 1 milion, ale 6 lub 7 milionów dolarów (7, jeśli bardzo się pospieszycie). Clay Mathematics Institute of Cambridge (Cambridge w stanie Massachusetts) wpadł na ciekawy pomysł świętowania nowego millennium. Zebrał trochę pieniędzy (rzeczone $7 000 000), wybrał siedem milenijnych problemów matematycznych i zaoferował okrągły $1 000 000 za rozwiązanie każdego z problemów. Oczywiście, wyraźnie widać tu wpływ Dawida Hilberta i jego słynnych 10 problemów matematyki, ogłoszonych w trakcie Międzynarodowego Kongresu Matematyków w Paryżu w 1900 roku. Hilbert później rozszerzył listę do 24, a następnie zmniejszył do 23 problemów. Jak pokazała historia, rozwiązanie wielu problemów z listy Hilberta popchnęło matematykę znacząco do przodu a konkurencja między naukowcami ścigającymi się w rozwiązywaniu kolejnych problemów zaowocowała wieloma nieoczekiwanymi rozwiązaniami (np. rezultatami prac podjętych w odpowiedzi na tezy Hilberta były dwa wielkie twierdzenia Goedla: twierdzenie o niezupełności i twierdzenie o niedowodliwości niesprzeczności). Z oryginalnej listy Hilberta na dzień dzisiejszy:

  • 10 problemów zostało definitywnie rozstrzygniętych,
  • 8 problemów zostało częściowo rozstrzygniętych lub rozwiązania są dyskusyjne (przede wszystkim ze względu na wielość interpretacji samego sformułowania problemu przez Hilberta),
  • 5 problemów do dziś nie zostało rozstrzygniętych (w tym najsłynniejszy problem, czyli Hipoteza Goldbacha: każda liczba parzysta większa niż 2 da się przedstawić jako suma dwóch liczb pierwszych).

Problemy podane przez CMIC to nowy zestaw (powtarza się tylko problem Hipotezy Riemanna). Nie muszę dodawać, że nie są to problemy z gatunku takich, które można zabrać ze sobą do toalety zamiast sudoku. Jako informatyka cieszy mnie, że na liście znalazł się także problem P != NP (o którym pisałem już wcześniej).

Pełna lista problemów jest następująca:

  1. hipoteza Bircha i Swinnerton-Dyera
  2. hipoteza Hodge’a
  3. równania Naviera-Stokesa
  4. problem P != NP
  5. hipoteza Pointcare’go (w zasadzie rozwiązana, ale trudny charakter Grigorija Perelmana uniemożliwia mu odebranie nagrody)
  6. hipoteza Riemanna
  7. pole Yanga-Millsa

Szczegółowe reguły i zasady konkursu są dostępne na stronach Clay Mathematics Institute.

11/22/2009

Posted by Mikołaj Morzy in zagadki.
2 comments

Znajomy przesyła zagadkę. Co prawda w postaci łańcuszka (jeśli zgadniesz, to dopisz się do listy i prześlij list dalej), ale nie będziemy wspierać takiej formy dystrybucji internetowej. Prezentuję samą zagadkę, akurat w sam raz, żeby rozruszać szare komórki po niedzielnym obiedzie:

 

  • 2+3=10
  • 7+2=63
  • 6+5=66
  • 8+4=96
  • 9+7=?

Off topic 11/16/2009

Posted by Mikołaj Morzy in nauka.
add a comment

Ten odnośnik krążył ostatnio po Internecie i zdobył sobie dużą popularność, więc istnieje spore prawdopodobieństwo, że już to widzieliście. Jeśli jednak nie, to zdecydowanie warto się zapoznać. W trakcie lekcji biologii i fizyki w szkole uczymy się o atomach, cząsteczkach, komórkach i częściach komórki, ale łatwo można odnieść wrażenie, że istnieje ogromna przepaść między omawianymi bytami. O ile świat atomów i cząsteczek jest nieprawdopodobnie mały, o tyle następne „cegiełki” budulcowe materii ożywionej i nieożywionej są zdecydowanie większe (np. mitochondria, łańcuchy DNA, białka) i brakuje „tego czegoś w środku”, co wypełniłoby tę lukę. W Centrum Nauczania Genetyki Uniwersytetu Utah powstała bardzo przejrzysta wizualizacja rozmiarów bardzo małych rzeczy.Podróż zaczynamy od rozmiaru ziarnka kawy, a kończymy na pojedynczym atomie węgla.
cell-size-and-scalePodobnie, ciekawym doświadczeniem jest podróż w kierunku rzeczy bardzo dużych. Ten zbiór porównań rozmiarów pokazuje, jak się ma rozmiar naszej planety do Słońca, Polluxa, Arcturusa, Aldebarana, Betelgeuse (z której pochodził Ford Prefect) oraz Antaresa. Jesteśmy tylko bladą niebieską kropką w bezmiarze kosmosu, lub, innymi słowy, wszechświat jest bardzo, bardzo duży:

Kolejna dawka humoru hermetycznego 11/09/2009

Posted by Mikołaj Morzy in humor.
add a comment

humorZ okazji leniwie płynącej niedzieli postanowiłem podzielić się z czytelnikami kolejną dawką hermetycznego humoru. Nie znalazłem wystarczającej liczby żartów dotyczących stricte baz danych i eksploracji danych, więc duża część z poniższych żartów dotyczy ogólnie pojmowanej informatyki i programowania. Nie wszystkie są bardzo dobre, niektóre są takie sobie, ale parę jest bardzo śmiesznych. Swoje własne propozycje umieszczajcie w komentarzach.

  • Shakespeare nie znał odpowiedzi na swoje pytanie, ale dla informatyka odpowiedź jest oczywista: 2B | ~2B = FF.
  • Dlaczego informatycy zawsze mylą Halloween i Boże Narodzenie? Ponieważ Oct 31 = Dec 25
  • Optymista twierdzi, że szklanka jest w połowie pełna. Pesymista twierdzi, że szklanka jest w połowie pusta. Programista twierdzi, że szklanka jest dwa razy za duża.
  • Na świecie są trzy typy ludzi: (1) ci, którzy rozumieją rekurencję, (2) ci, którzy nie rozumieją rekurencji, (3) ci, którzy uważają, że na świecie są trzy typy ludzi: (1) ci, którzy rozumieją rekurencję, (2) ci, którzy nie rozumieją rekurencji, (3) ci, którzy uważają, że na świecie są trzy typy ludzi:(1) ci, którzy rozumieją rekurencję, (2) ci, którzy nie rozumieją rekurencji, (3) ci, którzy uważają, że na świecie są trzy typy ludzi…
  • Nie w O(1) zbudowano Rzym
  • Na świecie są tylko dwa rodzaje programistów SQL: (*) ci, którzy wiedzą, jak COUNT(*) traktuje NULLe, (*) ci, którzy nie wiedzą, (*) ci, którzy mają to gdzieś
  • niezupełnie informatyczny: Werner Heisenberg zostaje zatrzymany przez patrol na autostradzie, policjant mówi: „panie kierowco, ma pan pojęcie, jak szybko pan pędził?” a Heisenberg na to: „nie, ale dokładnie wiem, gdzie jestem!”
  • Żona instruuje programistę przed wizytą w sklepie: „kup masło, jeśli będą jajka, to kup 10”. Programista wraca z dziesięcioma masłami i mówi: „mieli jajka”.
  • # unzip ; strip ; touch ; finger ; mount ; fsck ; more ; yes ; umount ; sleep
  • Nagrobek programisty: General protection fault 12.04.1962 – Runtime error 23.12.2008
  • Wchodzi maszyna Turinga do baru. Barman pyta: „Co podać?” Po chwili milczenia barman znów pyta: „Przepraszam, co podać?” A maszyna Turinga na to: „Nie mogę rozstrzygnąć”
  • Jeśli milion małp będzie stukało w milion klawiatur, jedna z nich w końcu wystuka program w Javie. Reszta wystuka programy w Perlu.
  • Rosyjska ruletka: [ $[ $RANDOM % 6 ] == 0 ] && rm -rf / || echo *Click*
  • Język C łączy w sobie moc asemblera z łatwością użytkownia asemblera

Terroryzm w Rudzie-Gwizdanowie 11/07/2009

Posted by Mikołaj Morzy in bazy danych, dataset, zbiór danych.
1 comment so far

terroristKto z Was wie, gdzie mieści się Ruda-Gwizdanów? Do dzisiaj też nie miałem pojęcia. W 1997 roku miał tam miejsce atak terrorystyczny, polegający na odpaleniu ładunków wybuchowych podczas spotkania weteranów. Niestety, Wikipedia milczy o ataku, podobnie jak Google. Więc skąd wiem, że terroryści zawitali do Gwizdanowa?

Od 2001 roku Uniwersytet Stanu Maryland gromadzi informacje o aktach terroryzmu na całym świecie. Niedawno baza danych o szumnej nazwie „Global Terrorism Database” została udostępniona publicznie. Baza zawiera informacje o ponad 80 000 aktach terroryzmu i oferuje możliwość wyszukiwania według regionu, kraju, typu ataku, czasu czy liczby ofiar. Serwis oferuje także kalendarium i proste narzędzia do wizualizacji. Wszystkie dane można uzyskać w surowej postaci po skontaktowaniu się z autorami. Baza danych może być swobodnie wykorzystywana do badań naukowych pod warunkiem zacytowania źródła danych. Wszystkie szczegóły znajdują się na głównej stronie projektu.

A tutaj można sprawdzić akty terroryzmu popełnione w Polsce na przestrzeni ostatnich 30 lat.

Bardzo ciekawa konferencja 11/06/2009

Posted by Mikołaj Morzy in nauka, teoria.
add a comment

W dniach 4-7 stycznia 2010 w Pekinie odbędzie się konferencja o nazwie The First Symposium on Innovations in Computer Science (ICS 2010). To jest bardzo ciekawy pomysł, który polega, z grubsza rzecz biorąc, na zebraniu artykułów typu position paper lub vision paper i zaprezentowaniu ich w jednym miejscu. Jak zauważają organizatorzy i pomysłodawcy konferencji, tego typu prace mają poważne trudności w przebiciu się podczas tradycyjnych konferencji. W cfp czytamy m.in.:

Innovations in Computer Science (ICS) is a new conference in theoretical computer science, broadly construed. ICS seeks to promote research that carries a strong conceptual message (e.g., introducing a new concept or model, opening a new line of inquiry within traditional or cross-disciplinary areas, or introducing novel techniques or novel applications of known techniques). ICS welcomes all submissions whether they are aligned with the current TCS research directions or transcend these boundaries.

Jest to pierwsza edycja tej konferencji i mam nadzieję, że będzie udana. Lista streszczeń artykułów przyjętych do prezentacji wygląda bardzo obiecująco! A najfajniejsze w tym wszystkim jest to, że znakomita większość artykułów prezentowanych na tej konferencji jest publicznie dostępna (podziękowania dla Shivy Kintali’ego za zebranie wszystkich linków). Szkoda tylko, że materiały konferencyjne są publikowane w lokalnym zeszycie a konferencja odbywa się tak daleko. I że w przyszłym roku też odbędzie się w Pekinie.

%d bloggers like this: