W poprzednim poście utworzyliśmy strumień danych lokalizacji pojazdów komunikacji miejskiej na jednym z topiców w Apache Kafka. Teraz dorwiemy się do tego strumienia z poziomu Apache Spark, zapiszemy trochę danych na HDFS i zobaczymy czy da się coś z nimi zrobić. Dla przypomnienia, wpis jest częścią mini projektu związanego z danymi lokalizacji pojazdów komunikacji miejskiej w Warszawie. Plan na dzień dzisiejszy poniżej, a zastanawiamy się nad jego środkiem => Apache SparkOdczyt z Kafki Najszybszą meto...
Bazy danych i XML 2 dni, 22 godziny, 8 minut temu 21 źrodło rozwiń
Reading time ~25 minutes I need a document database. Why? There are areas in my problem generating (How to calculate 17 billion similarities) pet project cookit that are just asking for a document modelling approach. Most people will say that this is a straightforward problem to solve:Slap on MongoDB, and you are ready to go. It is NOT a good idea.Get email notifications about new posts: This article started as a way to structurize the comparison process but grew a bit more ( just like my previous ...
Bazy danych i XML 3 dni, 21 godzin, 50 minut temu 53 źrodło rozwiń
Dziś przyjrzymy się narzędziu, jakim jest Apache Airflow. Spróbujemy użyć dwóch operatorów i zasilić kafkę danymi z API. Przy okazji rozpoczynam taki „mini projekcik”. Nie wiem jak Tobie, ale najlepiej poznaję różne technologie poprzez praktykę. W tym wpisie wspomniałem o źródle, którym są otwarte dane Warszawy https://api.um.warszawa.pl/. Mój plan to wysyłanie takich danych na Kafkę i przetworzenie ich strumieniowo (np. w Sparku). Takie dane potem wylądują na HDFS, ELK (sprawdzimy czy da się sensownie ...
Bazy danych i XML 10 dni, 21 godzin, 50 minut temu 76 źrodło rozwiń
Korzystanie z HDFS bardzo przypomina korzystanie ze zwykłego systemu plików z użyciem terminala. Grupy, uprawnienia, pliki, foldery itp. Bawiąc się kolejnymi technologiami Big Data można zapomnieć się i potraktować HDFS jak zwykły dysk.Dane W ostanim wpisie wspomniałem kilkanaście źródeł danych. Na jednym z nich znalazłem Enron Email Dataset. Jest to zbiór maili przedsiębiorstwa energetycznego Enron. Co takiego charakteryzuje ten zbiór? Zawiera dużo małych plików.Jak dużo? Ściągnąłem, rozpakowałem i wy...
Bazy danych i XML 17 dni, 21 godzin, 56 minut temu 29 źrodło rozwiń
Bawiąc się różnymi bibliotekami, frameworkami itp. potrzebujemy danych. Możemy takie wygenerować, ale efekt nie będzie ten sam. Dane pochodzące z rzeczywistego źródła lepiej oddają różnorodność (jedna z V z której składa się Big Data). Są też po prostu ciekawsze, trudniejsze i mogą być związane naszymi zainteresowaniami (np. triathlon)
Bazy danych i XML 24 dni, 21 godzin, 46 minut temu 154 źrodło rozwiń
Zapytanie szybsze 40-krotnie? Czemu nie. A to wszystko przez dwie operacje w Apache Spark
Bazy danych i XML 31 dni, 21 godzin, 54 minuty temu 39 źrodło rozwiń
Gdzie jest Json? Porównanie CSV, JSON, Parquet i ORC.
Bazy danych i XML 34 dni, 21 godzin, 55 minut temu 38 źrodło rozwiń
Wpis poświęcony HierarchyID w najnowszym EF.
Bazy danych i XML 34 dni, 21 godzin, 55 minut temu 76 źrodło rozwiń
Mieliście kiedyś taką sytuację przy Apache Cassandra, że aplikacja robi UPDATE na bazie danych ale nigdzie nie ma śladu po tym UPDATE? Jak już jej trochę poużywałeś, to prawdopodobnie znasz temat. Jak dopiero z nią zaczynasz… W projekcie używamy Cassandry która, póki co, na każdym ze środowisk składa się z jednego node-a. Każdy z serwisów ma swój keyspace. Wszystko pięknie działało. Nie było problemów. Do czasu. Była potrzeba przepisania jednego z serwisów i tymczasowo dwa serwisy (a czasami jeden ser...
Bazy danych i XML 48 dni, 23 godziny, 55 minut temu 70 źrodło rozwiń
Czyniąc długą historię krótką- jeśli osql nie wspiera ficera- sprawdź czy z nazwą pliku wszystko w porządku (np czy nie ma spacji) - case study.
Bazy danych i XML 65 dni, 22 godziny, 57 minut temu 138 źrodło rozwiń
Już kiedyś opisywałem na tym blogu, że jednym z większych problemów, które widzę w projektach moich kursantów, są migracje bazy danych. Kilka miesięcy temu opisywałem trzy różne podejścia: migrację w Entity Framework, Fluent Migratora oraz DbUp. Podejścia te, jak sądzę, pokrywają większość przypadków, które możesz mieć w swojej aplikacji. Kolejnym problemem związanym z migracjami jest ich uruchamianie. O ile w jakimś projekcie jest już użyty jakiś mechanizm (n...
Bazy danych i XML 81 dni, 45 minut temu 84 źrodło rozwiń
W poprzednim wpisie pokazałem Ci, jak użyć Sql Server Snapshots do resetowania stanu bazy w automatycznych testach. Innym podejściem, które możemy wykorzystać podczas pracy, jest po prostu usuwanie z bazy danych, które zostały dodane podczas wykonywania testów. Tytułowa biblioteka Respawn umożliwia realizację czegoś takiego w bardzo prosty sposób, ale ma również niestety swoje wady. Zobacz, co umożliwia i gdzie może Ci się ona przydać.Respawn Respawn (https://...
Bazy danych i XML 87 dni, 23 godziny, 26 minut temu 94 źrodło rozwiń
In several recent posts, we discussed two ways to trade off correctness for performance in database systems. In particular, I wrote two posts (first one and second one) on the subject of isolation levels, and one post on the subject of consistency le...
Bazy danych i XML 104 dni, 22 godziny, 52 minuty temu 102 źrodło rozwiń
Reading time ~4 minutes NoSQL PaaS databases like AWS DynamoDB or Cosmos DB offer incredible capabilities in scale, speed, and availability. There is also a dark side to those databases. They will punish anyone greatly for mistakes. And no mistakes are punished more than choosing the wrong partition key. Below is an ORDERED list on how to approach selecting the partition key.1. Transaction boundary I can’t stress this enough.This is the most critical factor. If our transaction boundary is wrong, pleas...
Bazy danych i XML 111 dni, 22 godziny, 32 minuty temu 20 źrodło rozwiń
Reading time ~6 minutes This article is Part 2 in a 2-Part Series. Part 1 - How to model hierarchical data in noSQL databasesPart 2 - This Article The problem of storing draft state and auditing is not limited to noSQL databases, and as previously, below patterns can be applied to SQL modeling. But because noSQL databases are, in most cases, lacking transactionality over multiple partitions, the problem is harder there. Making it more interesting :) Additionally, smart use of neet features of noSQL ...
Bazy danych i XML 136 dni, 23 godziny, 6 minut temu 35 źrodło rozwiń
Najbardziej popularnym ORMem w świecie .NETu jest bez wątpienia Entity Framework. Posiada on wiele wbudowanych mechanizmów ułatwiających pracę z bazą danych, ale odpokutowuje to pewnymi niedogodnościami. Nie należy on do najwydajniejszych ORMów, generuje czasami pokrętne zapytania, oraz łatwo można wpaść w tarapaty, np. przez problem N+1. Istnieją również alternatywy, jak np. nHibernate, czy Dapper! Jak sami twórcy wskazują, a są to ludzie od StackOverflow, Dapper jest królem wśród micro ORMów pod wzgl...
Bazy danych i XML 160 dni, 22 godziny, 55 minut temu 240 źrodło rozwiń
Ciężko czyta się grafy w postaci tekstowej. Znacznie lepsze jest do tego pismo pierwotne jakim są obrazki. Jeśli miałeś kiedyś problem z wizualizacją grafu w bibliotece GraphFrames na Apache Zeppelin to zapraszam do zerknięcia w kod.
Bazy danych i XML 206 dni, 23 godziny, 19 minut temu 32 źrodło rozwiń
Tak jak zapowiedziałem w poprzednim wpisie, w tym również będę kontynuował opisywanie biblioteki Entity Framework Plus, która rozszerza Entity Framework o przydatne funkcjonalności. Tym razem skupimy się na dwóch. Pierwszą będzie cache drugiego poziomu, natomiast drugą grupowanie wykonywania zapytań w jednej operacji na bazie z wykorzystaniem funkcji Future. W przykładzie będziemy bazowali na demie z poprzedniego wpisu o filtrowaniu w Entity Framework Plus. Dl...
Bazy danych i XML 248 dni, 23 godziny, 10 minut temu 72 źrodło rozwiń
Entity Framework jest dość przyjemnym narzędziem do pracy z danymi w aplikacji. Prawie każdy, kto spróbował w nim pracy, nie ma za dużej ochoty wracać do pisania zapytań w czystym SQLu. Ale niestety Entity Framework ma też swoje problemy, o których już nieraz pisałem. Na szczęście mamy takie firmy jak np. ZZZ Project, które tworzą biblioteki rozwiązujące te problemy. W tym wpisie chciałbym przedstawić Ci kolejną funkcjonalność darmowej biblioteki Entity Framew...
Bazy danych i XML 255 dni, 22 godziny, 29 minut temu 168 źrodło rozwiń
Bazy danych SQL LIKE – Kiedy Twój serwer płonie cz. 1 Większość projektów, w których brałem udział posiadało funkcjonalność wyszukiwania tekstowego. We wszystkich z nich było to zrealizowane klauzulą LIKE w SQL. Często ten element aplikacji stawał się wąskim gardłem i redukował responsywność aplikacji. Kiedy serwery Więcej…
Bazy danych i XML 257 dni, 22 godziny, 12 minut temu 141 źrodło rozwiń