vault backup: 2023-09-26 15:32:01

This commit is contained in:
Alice 2023-09-26 15:32:01 +01:00
parent b4bbe1ae12
commit 66ce1bb648
10 changed files with 150 additions and 106 deletions

4
.obsidian/app.json vendored
View file

@ -1 +1,3 @@
{}
{
"alwaysUpdateLinks": true
}

View file

@ -13,7 +13,7 @@
"state": {
"type": "markdown",
"state": {
"file": "4a1s/MFES/T - Aula 2.md",
"file": "4a1s/RAS/T - Aula 1.md",
"mode": "source",
"source": false
}
@ -85,7 +85,7 @@
"state": {
"type": "backlink",
"state": {
"file": "4a1s/MFES/T - Aula 2.md",
"file": "4a1s/RAS/T - Aula 1.md",
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
@ -102,7 +102,7 @@
"state": {
"type": "outgoing-link",
"state": {
"file": "4a1s/MFES/T - Aula 2.md",
"file": "4a1s/RAS/T - Aula 1.md",
"linksCollapsed": false,
"unlinkedCollapsed": true
}
@ -125,7 +125,7 @@
"state": {
"type": "outline",
"state": {
"file": "4a1s/MFES/T - Aula 2.md"
"file": "4a1s/RAS/T - Aula 1.md"
}
}
}
@ -150,15 +150,22 @@
},
"active": "4d5a457a9ab7159d",
"lastOpenFiles": [
"4a1s/RAS/PL - Aula 1.md",
"4a1s/MFES/T - Aula 2.md",
"4a1s/MFES/PL - Aula 2.md",
"4a1s/MFES/PL - Aula 1.md",
"4a1s/MFES/MFES - UC Details.md",
"4a1s/Excalidraw/MFES/Ficha1_ex2.excalidraw.md",
"4a1s/DAA/T - Aula 2.md",
"4a1s/DAA/T - Aula 1.md",
"4a1s/DAA/PL - Aula 1.md",
"4a1s/CP/T - Aula 2 - 19 Setembro.md",
"4a1s/CP/PL - Aula 2.md",
"4a1s/ASCN/T - Aula 2.md",
"4a1s/ASCN/T - Aula 1.md",
"4a1s/ASCN/Images.md",
"4a1s/index.md",
"My Digital Garden.md",
"4a1s/index.md",
"4a1s/Excalidraw/MFES/Ficha1_ex2.excalidraw.md",
"4a1s/Excalidraw/ASCN/client-server.excalidraw.md",
"4a1s/Excalidraw/ASCN/bus.excalidraw.md",
"4a1s/Excalidraw/ASCN/proxy.excalidraw.md",
@ -166,13 +173,9 @@
"4a1s/Excalidraw/ASCN/SOA.excalidraw.md",
"4a1s/Excalidraw/ASCN/server-group.excalidraw.md",
"4a1s/Excalidraw/ASCN/Drawing 2023-09-26 15.05.39.excalidraw.md",
"4a1s/MFES/T - Aula 2.md",
"4a1s/Excalidraw/ASCN/Partitioning.excalidraw.md",
"4a1s/Excalidraw/ASCN/multi-tier.excalidraw.md",
"4a1s/Excalidraw/ASCN/Monolithic system.excalidraw.md",
"4a1s/Excalidraw/ASCN/master.excalidraw.md",
"4a1s/CP/T - Aula 2 - 19 Setembro.md",
"4a1s/CP/PL - Aula 2.md",
"-.32118",
"4a1s/ASCN/T",
"4a1s/ASCN/T.32118",
@ -180,9 +183,6 @@
"script.sh",
"header",
"script",
"Excalidraw/ASCN/bus.excalidraw.md",
"4a1s/RAS/T - Aula 2.md",
"4a1s/RAS/T - Aula 1.md",
"4a1s/RAS",
"4a1s/MFES",
"4a1s/Excalidraw/MFES",

View file

@ -1,27 +1,32 @@
---
dg-publish: true
---
🌫11 Setembro 2023 - #ASCN
🌫 11 Setembro 2023 - #ASCN
- ## Complex Structures: Challenges
- ### 1. Deployment
## Complex Structures: Challenges
### 1. Deployment
- Multiple components with specific requirements
- Heterogeneous hardware, software and services (e.g., cloud computing services
- ### 2. Management + Configuration
### 2. Management + Configuration
- Specific to each software/hardware component
- Optimal configurations will change over time...
- ### 3. Monitoring + Benchmarking
id:: 65120d55-d904-4ef5-bbbb-647bf02e05c9
### 3. Monitoring + Benchmarking
- Finding anomalies (performance, failures, ...) in complex applications and infrastructures
- ## Agile Development
**Quick reaction to frequent small changes!**
## Agile Development
**Quick reaction to frequent small changes!**
- Rests on formal (versioned) source, binary and documentation repositories
- Unambiguous current state
- Ability to back track
- Automated build and test
- Fast feedback
- Fast iterations
- ## Operations
## Operations
- Manual provisioning and configuration
- Informal communication between qualification and production stages
- Consequences:
@ -29,20 +34,26 @@ dg-publish: true
- Configuration drift
- “Snowflake” servers (don't even look at it…)
- Subjective monitoring
- ## Infrastructure as Code
**Include infrastructure scripts in agile process!**
## Infrastructure as Code
**Include infrastructure scripts in agile process!**
- Hardware provisioning with scripts
- In contrast to: physically unboxing and plugging
- Software provisioning with scripts
- In contrast to: clicking through setup wizards
- Configuration with scripts
- In contrast to: clicking through control panels
- ## DevOps
**Supports fast, frequent, small changes!**
## DevOps
**Supports fast, frequent, small changes!**
- Development and deployment are self-documenting and versioned
- Deployment is reproducible and repeatable
- Servers are disposable and consistent
- ## Roadmap
## Roadmap
- Distributed systems architectures & deployment
- Common distribution patterns
- Reliability and scalability
@ -53,7 +64,11 @@ dg-publish: true
- Monitoring and evaluation
- Monitoring frameworks and metrics
- Benchmarking
- ## Evaluation
## Evaluation
- **50%** - project
- min: 10 values
- checkpoint 1: 17/11/2023
@ -63,11 +78,13 @@ dg-publish: true
- **50%** - written exam
- min: 8 values
- 12/12/2023
- ## Team
## Team
- João Paulo - jtpaulo@di.uminho.pt
- Francisco Maia - fmaia@di.uminho.pt
- Tânia Esteves - d12729@di.uminho.pt
- Cláudia Brito d13235@di.uminho.pt
[[ASCN/T - Aula 2|Next class: T - Aula 2]]
[[ASCN/T - Aula 2|Next class: T - Aula 2]]

View file

@ -3,71 +3,81 @@ dg-publish: true
---
🌫 18 Setembro 2023 - #ASCN
- ## Why distributed systems?
## Why distributed systems?
- Modularity, decoupling different concerns.
- Performance.
- Dependability
- ## How to distribute?
- ### 1. Monolythic system
## How to distribute?
### 1. Monolythic system
- Architecture: [[Monolithic system.excalidraw]]
- Multiple services for multiple targets in the same server
- ## 2. Distributed systems
id:: 65120d55-6bed-47db-bd53-cc4f627c33dc
## 2. Distributed systems
- Main distribution concerns:
1. Replication
2. Partitioning
3. Service-orientation
- All of these address scaling out a service/application.
- Not mutually exclusive, can be combined.
- ### 2.1 Replication
### 2.1 Replication
- Architecture: [[Replication.excalidraw]]
- Multiple copies of the same data and functionality
- Addresses resilience and scale-out
- ### 2.2 Partitioning
### 2.2 Partitioning
- Architecture: [[Partitioning.excalidraw]]
- A server is split horizontally (Sharding).
- Addresses scale-out.
- Can be applied to computation, data, ...
- ### 2.3 SOA - Service-Oriented Architecture
### 2.3 SOA - Service-Oriented Architecture
- Architecture: [[SOA.excalidraw]]
- Addresses scale-out and modularity.
- Example: micro-services.
- #### 2.3.1 Microservices
#### 2.3.1 Microservices
- Each service implements specific functionality.
- Services can scale independently.
- Decomposition may be troublesome: how micro is micro?
- Consistency.
- Complex deployment and testing
- ## Distributed architectures
- ### 1. Client-server
## Distributed architectures
### 1. Client-server
- Architecture: [[client-server.excalidraw]]
- Functionality and data are in the server.
- A stub runs embedded in the client.
- The stub is part of the server software package
- E.g., the Web (“protocol” is HTTP)
- ### 2. Proxy Server
### 2. Proxy Server
- Architecture: [[proxy.excalidraw]]
- Multiple servers can be used transparently.
- The proxy is a performance and availability bottleneck.
- E.g. MongoDB
- ### 3. Master Server
### 3. Master Server
- Architecture: [[master.excalidraw]]
- Scale out!
- E.g. HDFS
- ### 4. Server Group
### 4. Server Group
- Architecture: [[server-group.excalidraw]]
- All servers can process requests.
- Coordination may be necessary.
- Resiliency!
- E.g. ZooKeeper
- ### 5. Bus
### 5. Bus
- Architecture: [[bus.excalidraw]]
- The bus routes messages.
- Participants publish and consume messages to/from the bus.
- Decouples producers from consumers.
- **Flexibility!**
- E.g. Kafka
- ### 6. Multi-tier
### 6. Multi-tier
- Architecture: [[multi-tier.excalidraw]]
- Each server acts as a client of the next tier.
- Allows independent deployment and scaling of different functionality.
@ -75,7 +85,7 @@ dg-publish: true
- “protocol A” == Web (e.g.)
- “Stub B” == Database Driver!
- “protocol B” uses SQL
- #### 6.1 State in multi-tier
#### 6.1 State in multi-tier
- Persistent state is harder to replicate and shard.
- Computation is easier to replicate and shard.
- No state in upper tiers:

View file

@ -1,55 +1,64 @@
21 Setembro 2023 - #DAA
- ## Types of Data
## Types of Data
-Numerical
-Numerical
- Discrete Data ({1,2,3,...})
- Continuous Data (\[1, +$\infty$])
- *Categorical* (binary, languages, ...)
- **Ordinal** (ratings of 1 to 5)
*not-scaled
**scaled
*not-scaled
**scaled
>[!example]- Qual o tipo de dado que representa a quantidade de gasóleo?
>Numérico: continuous data
>[!example]- Qual o tipo de dado que representa a quantidade de gasóleo?
>Numérico: continuous data
>[!example]- Qual o tipo de dado que representa a nacionalidade?
>Categórico
>[!example]- Qual o tipo de dado que representa a nacionalidade?
>Categórico
>[!example]- Qual o tipo de dado que representa a idade?
>Numérico: discreto
- ## Mean, Median & Mode
- #+BEGIN_TIP
A mean in math is the average of a data set, found by adding all numbers together and then dividing the sum of the numbers by the number of numbers
#+END_TIP
- >[!hint]+
>A **mean** in math is the average of a data set, found by adding all numbers together and then dividing the sum of the numbers by the number of numbers.
- ## Standard Deviation & Variance
- ## Probability Density functions
- ## Percentiles
>[!example]- Qual o tipo de dado que representa a idade?
>Numérico: discreto
There are 3 important percentiles:
## Mean, Median & Mode
>[!hint]+
>A **mean** in math is the average of a data set, found by adding all numbers together and then dividing the sum of the numbers by the number of numbers.
## Standard Deviation & Variance
## Probability Density functions
## Percentiles
There are 3 important percentiles:
- 50% - median
- 25% - 1st percentile
- 75% - 3rd percentile
>[!note]+
>These 3 percentiles allow the creation of box plot graphs. These specific graphs allow the discovery and presentation of outliers.
- ## Covariance & Correlation
>[!note]+
>These 3 percentiles allow the creation of box plot graphs. These specific graphs allow the discovery and presentation of outliers.
>[!hint]+
>**Covariance** measures the direction of a relationship between two variables, while **correlation** measures the strength of that relationship.
## Covariance & Correlation
Covariance is hard to interpret, thus correlation is used instead.
In a dataset, correlations >0.5 are considerable.
>[!hint]+
>**Covariance** measures the direction of a relationship between two variables, while **correlation** measures the strength of that relationship.
>[!caution] Correlation does not mean causation!
- ## Practical session of the class: miniconda
IDEs: PyCharm, VS Code, (Jupyter - not recommended)
Covariance is hard to interpret, thus correlation is used instead.
In a dataset, correlations >0.5 are considerable.
Depois de instalar o miniconda, correr os seguintes comandos:
>[!caution] Correlation does not mean causation!
## Practical session of the class: miniconda
IDEs: PyCharm, VS Code, (Jupyter - not recommended)
Depois de instalar o miniconda, correr os seguintes comandos:
- conda create --name daaEnv python=3.10
- conda activate daaEnv
- python --version
@ -61,7 +70,8 @@
- conda install scikit-learn
- conda install jupyterlab
- conda list
- ## Resource links
## Resource links
- https://en.wikipedia.org/wiki/Average
- https://en.wikipedia.org/wiki/Median
- https://en.wikipedia.org/wiki/Mode_(statistics)

View file

@ -1,7 +1,7 @@
---
dg-publish: true
---
🌫 18 Setembro 2023 - #MFES
🌫 18 Setembro 2023 - #MFES
## Ficha 1
@ -90,5 +90,9 @@ dg-publish: true
>
> Escreve um conjunto de fórumlas proposicionais adequado à modelação destas regras.
>
> >[!tip]- Resolução
> > [[Ficha1_ex2.excalidraw]]
> >[!tip]- Resolução (por passos)
> >**Cada pessoa ocupa só um único gabinete.**
> > 1. para cada pessoa p = 1..4
> > 2. pelo menos um gabinete: $x_{p1} \lor x_{p2} \lor x_{p3}$
> > 3. no máximo 1 gabinete: $x_{p1} \implies \neg x_{p2} \land x_{p3} \equiv x_{p1} \implies \neg (x_{p2} \lor x_{p3} ) \equiv x_{p2} \implies \neg x_{p3}$
> > 4.

View file

@ -98,4 +98,3 @@
>>In terms of verifiability:
>>What is a trained person? That is debatable. Is it a person with 1h of experience, 3h, 5h? This needs to be defined. Also, what is easy? Is it defined by the number of errors this person commits (commit less than 3 errors in this determined feature - this is considered "easy")? Use correctly 80% of the software and it's "easy" and intuitive for the tester? This also needs defining.
>

View file

@ -6,7 +6,7 @@ Basicamente, isto é uma sopa de letras com alguma lógica por detrás (mas não
## Conteúdo
### Ano 1 (Mestrado)
1. [[MFES - UC Details| (MFES) Métodos Formais de Engenharia de Software]]
2. [[ASCN/T - Aula 1|(ASCN) Aplicações e Serviços de Computação em Nuvem]]
2. [[4a1s/ASCN/T - Aula 1|(ASCN) Aplicações e Serviços de Computação em Nuvem]]
3. [[RAS/T - Aula 2|(RAS) Requisitos e Arquiteturas de Software]]
4. (CP) Computação Paralela
5. [[DAA/T - Aula 1|(DAA) Dados e Aprendizagem Automática]]

View file

@ -3,6 +3,8 @@ dg-publish: true
dg-home: true
---
This is just my digital garden :)
- Uni notes