Wprowadzenie
Cześć! Uruchamiasz projekt local-ai-packaged na Ubuntu Desktop (np. na laptopie z AMD Ryzen 9 5900HS i NVIDIA RTX 3060, serwer 192.168.76.171) i zauważyłeś w wyniku polecenia docker ps kontener localai-clickhouse-1, działający na portach 127.0.0.1:8123 (HTTP) i 127.0.0.1:9000 (TCP)? Zastanawiasz się, czym jest ClickHouse i jakie pełni funkcje w Twoim środowisku AI? Ten idiotoodporny poradnik wyjaśni, czym jest ClickHouse, do czego służy w local-ai-packaged i jak wspiera lokalne wdrożenia AI, takie jak Flowise, Supabase czy Ollama. Artykuł jest po polsku, z gotowymi komendami i opisami zrzutów ekranu, idealny dla klientów agencja-ai.com!
Czym jest ClickHouse?
ClickHouse to open-source’owy, kolumnowy system zarządzania bazą danych (DBMS) zaprojektowany do przetwarzania analitycznego online (OLAP). Został stworzony przez Yandex, początkowo do obsługi Yandex.Metrica, a od 2016 roku jest dostępny na licencji Apache 2.0 ‽web:1. ClickHouse przechowuje dane w formacie kolumnowym, co pozwala na efektywną kompresję i szybkie wykonywanie zapytań analitycznych na dużych zbiorach danych w czasie rzeczywistym. Jest znany z wysokiej wydajności, zdolności do obsługi petabajtów danych i łatwości skalowania ‽web:7.
W projekcie local-ai-packaged, ClickHouse jest uruchomiony jako kontener Docker (localai-clickhouse-1) i dostępny na portach 127.0.0.1:8123 (interfejs HTTP) oraz 127.0.0.1:9000 (protokół TCP), co umożliwia wykonywanie zapytań SQL i integrację z innymi usługami.
Kluczowe cechy ClickHouse:
- Kolumnowy format przechowywania: Dane są przechowywane w kolumnach, co zwiększa kompresję i przyspiesza zapytania analityczne ‽web:14.
- Wysoka wydajność: Obsługuje miliardy wierszy na sekundę, idealny dla analiz w czasie rzeczywistym ‽web:21.
- Skalowalność: Umożliwia skalowanie poziome przez dodawanie serwerów do klastra ‽web:24.
- SQL: Wspiera rozszerzony język SQL z funkcjami do agregacji, analizy i przetwarzania danych ‽web:2.
- Integracje: Współpracuje z narzędziami takimi jak Apache Kafka, Superset czy Grafana ‽web:16.
Do czego służy ClickHouse w local-ai-packaged?
W projekcie local-ai-packaged, ClickHouse pełni rolę magazynu danych analitycznych dla aplikacji AI, takich jak Flowise, Supabase czy Ollama. Jego zadaniem jest przechowywanie i szybkie przetwarzanie dużych ilości danych generowanych przez te aplikacje, np. logów, metryk czy wyników analiz AI. Oto szczegółowe funkcje ClickHouse:
- Analiza logów AI: Przechowuje i analizuje logi generowane przez aplikacje AI, np. zapytania do Ollama czy dane wejściowe/wyjściowe Flowise ‽web:5.
- Metryki aplikacji: Umożliwia przechowywanie metryk wydajności, np. czasu odpowiedzi modeli AI czy użycia GPU NVIDIA RTX 3060.
- Integracja z Supabase: Przechowuje dane analityczne z Supabase, np. statystyki użytkowania aplikacji, które mogą być używane do optymalizacji.
- Wsparcie dla Flowise: Umożliwia analizę przepływów pracy Flowise, np. statystyk dotyczących wywołań modeli językowych.
- Real-time analytics: Dzięki wysokiej wydajności ClickHouse, zapytania analityczne są wykonywane w czasie rzeczywistym, co wspiera dynamiczne aplikacje AI.
Zrzut ekranu: Interfejs HTTP ClickHouse otwarty w przeglądarce na http://127.0.0.1:8123, pokazujący wyniki przykładowego zapytania SQL.
Jak ClickHouse działa w local-ai-packaged?
W local-ai-packaged, ClickHouse jest skonfigurowany w pliku docker-compose.yml i uruchamiany za pomocą skryptu start_services.py. Przykładowa konfiguracja w docker-compose.yml wygląda następująco:
services:
clickhouse:
image: clickhouse/clickhouse-server:latest
ports:
- "127.0.0.1:8123:8123"
- "127.0.0.1:9000:9000"
environment:
- CLICKHOUSE_USER=admin
- CLICKHOUSE_PASSWORD=password
volumes:
- clickhouse-data:/var/lib/clickhouse
volumes:
clickhouse-data:
Wyjaśnienie:
ports: Mapuje porty hosta127.0.0.1:8123(HTTP) i127.0.0.1:9000(TCP) na porty kontenera.environment: Ustawia dane logowania (np. użytkownik:admin, hasło:password).volumes: Przechowuje dane w wolumenieclickhouse-datadla trwałości.
Zrzut ekranu: Edytor tekstu z otwartym plikiem docker-compose.yml, pokazującym konfigurację ClickHouse.
Kroki do przetestowania ClickHouse
- Uruchom
local-ai-packagedz profilem GPU: - Sprawdź dostępność ClickHouse:
- Przetestuj zapytanie SQL za pomocą
clickhouse-client:
cd ~/local-ai-packaged
python3 start_services.py --profile gpu-nvidia --environment public
curl http://127.0.0.1:8123
Otwórz przeglądarkę i wejdź na http://127.0.0.1:8123. Powinieneś zobaczyć komunikat powitalny ClickHouse.
docker exec -it localai-clickhouse-1 clickhouse-client -u admin --password password
CREATE TABLE test (id UInt32, name String) ENGINE = MergeTree() ORDER BY id;
INSERT INTO test VALUES (1, 'Jan'), (2, 'Anna');
SELECT * FROM test;
Jeśli używasz Konga, przetestuj przez trasę (np. /clickhouse):
curl -H "apikey: my-key" http://192.168.76.171:8000/clickhouse
Zrzut ekranu: Terminal z wynikiem zapytania SELECT * FROM test w clickhouse-client.
Dlaczego ClickHouse jest ważny w local-ai-packaged?
ClickHouse jest kluczowym komponentem w local-ai-packaged, ponieważ:
- Wysoka wydajność: Obsługuje zapytania na miliardach wierszy w milisekundach, idealny dla analityki w czasie rzeczywistym ‽web:21.
- Integracja z AI: Przechowuje i analizuje dane generowane przez aplikacje AI, takie jak logi Ollama czy metryki Flowise.
- Skalowalność: Umożliwia łatwe skalowanie na serwerze
192.168.76.171z GPU NVIDIA RTX 3060 ‽web:24. - Kompresja danych: Kolumnowy format pozwala na efektywną kompresję, oszczędzając miejsce na dysku ‽web:14.
- Łatwość użycia: Rozszerzony język SQL ułatwia integrację z narzędziami wizualizacyjnymi, np. Superset czy Grafana ‽web:8.
Uwaga: Jeśli napotykasz problemy z GPU, sprawdź nasz poradnik o sterownikach NVIDIA dla Dockera.
Najlepsze praktyki
- Bezpieczeństwo: Skonfiguruj Konga z wtyczką
key-authdla ClickHouse: - Monitorowanie: Sprawdzaj logi ClickHouse:
- Trwałość danych: Regularnie twórz kopie zapasowe wolumenu
clickhouse-data: - Firewall: Otwórz tylko potrzebne porty:
# Edytuj kong.yaml
services:
- name: clickhouse
url: http://clickhouse:8123
routes:
- name: clickhouse-route
paths:
- /clickhouse
plugins:
- name: key-auth
config:
key_names:
- apikey
docker logs localai-clickhouse-1
cp -r /var/lib/docker/volumes/clickhouse-data /var/lib/docker/volumes/clickhouse-data-backup
sudo ufw allow 8123
sudo ufw allow 9000
Rozwiązywanie problemów
- ClickHouse niedostępny: Sprawdź, czy porty
8123i9000są otwarte: - Błąd logowania: Upewnij się, że używasz poprawnych danych logowania z
docker-compose.yml(np.admin:password). - Problemy z siecią: Sprawdź sieć Docker:
- Problemy z GPU: Upewnij się, że sterowniki NVIDIA działają:
- Kontakt: Napisz na agencja-ai.com/kontakt.
sudo netstat -tuln | grep -E '8123|9000'
docker network inspect localai
Zobacz nasz poradnik o widoczności usług.
docker run --rm --gpus all nvidia/cuda:12.2.2-base-ubuntu22.04 nvidia-smi
Zobacz nasz poradnik o NVIDIA dla Dockera.
Zwiększanie sprzedaży instrukcji
- Polski język: Proste instrukcje po polsku przyciągają użytkowników.
- Demo: Pokaż interfejs ClickHouse na
http://127.0.0.1:8123lub przez Konga nahttps://clickhouse.agencja-ai.com. - PDF: Udostępnij ten artykuł jako PDF na agencja-ai.com.
Podsumowanie
ClickHouse w local-ai-packaged to wysokowydajna, kolumnowa baza danych OLAP, która przechowuje i analizuje duże ilości danych generowanych przez aplikacje AI, takie jak Flowise czy Ollama, na serwerze 192.168.76.171 z GPU NVIDIA RTX 3060. Dostępny na portach 127.0.0.1:8123 (HTTP) i 127.0.0.1:9000 (TCP), wspiera real-time analytics i integracje z Supabase czy Grafana. Ten poradnik zwiększy atrakcyjność Twoich instrukcji na agencja-ai.com. Potrzebujesz więcej poradników, np. o optymalizacji zapytań SQL w ClickHouse lub integracji z Flowise? Napisz do nas! 😄
Źródła: ClickHouse, local-ai-packaged, Docker, Wikipedia, Decube, OpenMetal, Instaclustr