Comença amb Snowflake Openflow a la teva màquina local

Guia detallada per executar Snowflake Openflow en local amb Docker Compose i LocalStack: instal·lació, autenticació SPCS, rendiment, seguretat i bones pràctiques per pipelines de dades.

lunes, 18 de agosto de 2025 • 5 min de lectura • Equip Q2BSTUDIO

Intel·ligència-Artificial-

Introducció Snowflake Openflow és una plataforma per integrar i processar dades que permet dissenyar, provar i desplegar pipelines de dades. Executar-la de forma local facilita el desenvolupament i les proves abans de passar a producció. En aquest article s'explica com configurar l'entorn openflow-localforge usant Docker Compose i eines associades, amb consells pràctics i millors pràctiques.

Sobre Q2BSTUDIO Q2BSTUDIO és una empresa de desenvolupament de programari especialitzada en aplicacions a mida i programari a mida. Oferim solucions d'intel·ligència artificial, IA per a empreses, agents IA, ciberseguretat, serveis cloud AWS i Azure i serveis d'intel·ligència de negoci com Power BI per millorar la presa de decisions. Si necessites integració entre Snowflake, pipelines locals i solucions a mida, el nostre equip pot ajudar-te a implementar, assegurar i optimitzar els processos.

Repositori El projecte complet openflow-localforge està disponible a https://github.com/Snowflake-Labs/openflow-local-forge Clona el repositori i situa't a la carpeta del projecte.

Preparar l'entorn Crea directoris necessaris i exporta la variable OPENFLOW_LOCALFORGE_HOME apuntant a la carpeta clonada. Copia .env.example a .env i edita'l amb els teus valors locals. Mantén .env fora del control de versions per protegir secrets.

Requisits previs Instal·la Docker i Docker Compose amb almenys 8 GB de RAM assignats al motor. Instal·la Snowflake CLI per gestionar connexions i Snowpark Container Services SPCS. Instal·la LocalStack per simular serveis AWS localment, jq per processar JSON i Git per controlar versions de fluxos.

Requisits del sistema Memòria 8 GB mínim (16 GB recomanat), 5 GB lliures en disc, sistema Linux, macOS o Windows amb WSL2 i un compte Snowflake amb privilegis SPCS. Configura un perfil de connexió a ~/.snowflake/config.toml amb els paràmetres de account user database schema warehouse i role o bé autenticació per clau privada per a entorns de producció.

Autenticació SPCS i descàrrega d'imatges Usa Snowflake CLI per autenticar-se al registre SPCS: executa snow spcs image-registry login i obtén la URL amb snow spcs image-registry url. Llista imatges a la col·lecció snowflake_images i recupera les rutes més recents per a runtime-extensions i runtime-server usant jq. Afegeix les rutes obtingudes al fitxer .env com OPENFLOW_RUNTIME_EXTENSION_IMAGE i OPENFLOW_RUNTIME_SERVER_IMAGE i verifica que pots fer docker pull d'aquestes imatges.

Configuració addicional Genera una clau de propietats segura per xifrar valors sensibles, per exemple amb xxd sobre /dev/urandom i guarda properties.key fora del control de versions. Copia login-identity-providers.xml.example a login-identity-providers.xml i usa el script gen_password.py per generar la contrasenya segura que insereixis a la configuració d'autenticació local.

Descripció de serveis Docker Compose LocalStack simula S3 SQS Lambda i altres serveis AWS. El servei runtime-extensions copia biblioteques i extensions al volum compartit. El servei runtime-server executa el runtime principal d'Openflow i NiFi exposa la interfície HTTPS pel port 8443 i munta volums per a configuració flows i estat.

Iniciar l'entorn Des de l'arrel del projecte executa docker compose up -d i valida l'estat amb docker compose ps. Segueix els logs del runtime-server amb docker compose logs -f runtime-server fins veure que l'aplicació ha arrencat correctament. Si apareix un missatge indicant que Application Started significa que el servidor NiFi està llest.

Configurar LocalStack i dades de prova Dona permisos d'execució al script setup-localstack.sh i executa'l per crear un bucket S3 local i pujar dades d'exemple com WillShakespeare.zip. Verifica la salut de LocalStack amb curl https://localhost:4566/health i llista el contingut S3 amb aws --endpoint-url=https://localhost:4566 s3 ls s3://sample-data/

Accés a la interfície web Accedeix a la interfície NiFi a https://localhost:8443/nifi accepta el certificat autofirmat i inicia sessió amb les credencials definides a login-identity-providers.xml. Trobaràs un canvas amb fluxos d'exemple, per exemple Simple Flow adaptat per usar S3 amb LocalStack.

Control de versions de fluxos Els fluxos s'emmagatzemen a la carpeta flows muntada com a repositori Git. Inicialitza el repositori amb git init afegeix els fitxers i realitza commits. Opcionalment connecta un remot i push de la branca principal per mantenir versions i col·laboracions.

Resolució de problemes comuns Per errors de memòria augmenta la memòria assignada a Docker i monitoritza amb docker stats. Si hi ha conflictes de ports usa lsof -i :8443 o lsof -i :4566 per identificar processos i allibera els ports o canvia els ports a docker-compose.yml. Per problemes amb extensions assegura't d'estar autenticat al registre SPCS i torna a docker pull de les imatges. Per problemes d'autenticació amb SPCS valida la connexió amb snow connection test --connection i torna a executar snow spcs image-registry login.

Bones pràctiques Mai incloguis dades sensibles al repositori. Usa la plantilla .env.example i mantén el .env a .gitignore. Rota claus de xifrat en entorns productius, limita l'accés en xarxa per desplegaments reals i usa configuracions específiques per entorn copiant .env.example a dev staging prod.

Optimització i rendiment Reserva memòria adequada a Docker 8 GB mínim usa discs SSD per millorar I O monitoritza recursos amb docker stats i neteja volums no usats periòdicament per mantenir l'entorn àgil.

Neteja Quan acabis atura serveis amb docker compose down i si vols eliminar volums afegeix l'opció -v. Per alliberar espai executa docker system prune amb precaució.

Següents passos Explora els processadors incorporats per transformació de dades connecta sistemes externs mitjançant JDBC i REST implementa processadors personalitzats amb el framework d'extensions i configura monitorització i alertes. Per desplegaments productius contempla BYOC o l'ús de SPCS a Snowflake.

Recursos Repositori openflow-localforge a https://github.com/Snowflake-Labs/openflow-local-forge Documentació Snowflake Openflow a https://docs.snowflake.com i Snowpark Container Services a la documentació oficial, a més de guies de LocalStack i Docker Compose.

Conclusió Executar Snowflake Openflow localment amb LocalStack i Docker Compose ofereix un entorn consistent i segur per desenvolupar pipelines de dades sense costos de núvol. Si necessites suport per adaptar Openflow a les teves necessitats, integrar solucions d'intel·ligència artificial, agents IA, serveis d'intel·ligència de negoci o desplegar aplicacions a mida i programari a mida en entorns segurs al núvol AWS o Azure, contacta amb Q2BSTUDIO per una consultoria personalitzada en intel·ligència artificial ciberseguretat i solucions cloud.

Contacte Q2BSTUDIO ajuda a transformar idees en solucions reals mitjançant desenvolupament d'aplicacions a mida programari a mida intel·ligència artificial ciberseguretat serveis cloud aws i azure serveis intel·ligència de negoci agents IA i power bi per millorar la visibilitat i el valor de les dades a la teva empresa.

ELS NOSTRES SERVEIS

Com et podem ajudar

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.