생계/DA2023. 12. 9. 21:49



1. 이력모델 개념

데이터 모델링에서 '이력', '이력데이터' 는 많이 사용되는 용어 인데 그 개념이 모호하거나 
이력이 아닌것을 이력이라고 부르는 등 이치에 맞지 않게 사용되는 경우가 종종 보인다. 

어느 글에서 이력은 '시간에 따라 발생하는 데이터 형식' 이라고 정의한 것을 보았는데, 
이것은 일반적인 트랜잭션과도 차이점이 없다. 

주문과 같은 일반적인 트랜잭션을 '발생내역' 이라고 한다면 변경된 속성값을 일자에 따라 관리하는 "이력" 을 '변경이력' 이라고 구별 할 수 있다. 
변경이력을 다시 정의하면 현재 유효하지 않은 과거 데이터 라고 할수 있다. 
이력모델 이라고 부를수 있는것은 '변경이력' 이고, 원천모델이 나오고 나서야 이력모델이 도출되는 것이다. 
즉, 원천모델이 없는데 이력엔터티라고 부르고 있다면 엔터티의 정의를 다시 한번 살펴볼 필요가 있다. 


2. 발생내역 vs 변경이력 

- 발생내역(트랜잭션)
  insert 의 형태 (ex. 주문, 접속ip로그..)
  pk변경, 데이터변경 

- 변경내역 (찐 이력)
  update & insert 형태 (ex. 비밀번호변경 이력)
  pk동일, 데이터변경 
 
ex) 개인경력 엔터티가 있다면..
사번
일자
소속
경력상세 
=> 시간에 따른 경력쌓인 것(발생내역)

    과거의 경력데이터가 변경된 경우(변경내역 발생) -> 변경전 데이터를 관리할거면 이력엔터티 도출, 아니면 업데이트하고 완료


3. 이력엔터티와 원천엔터티 분리 or 통합

- 분리가 원칙 
엔터티 순수성이 유지 되어야 확장이 가능 -> 원천모델이 자식엔터티가 있다면 분리가 원칙 
잘못된 데이터 하나가 전체 엔터티의 데이터 신뢰도를 떨어트림 

이력+원천 통합 모델의 자식은 일자속성은 상속되지 않는 이상한 케이스 발생 => '$'


- 통합하는 경우 
업무적으로 이력/원천데이터가 빈번히 같이 사용된다면 한곳에 사용할수도 있다 
=> 원천에 일시 속성이 추가되어 사용하는것. 성능적 관점. 반정규화 일종 

이력+원천을 통합해서 쓴다면 해당 엔터티의 이름은 '~이력' 이라고 쓰지 않는다. 
오직 이력데이터만 있는 엔터티에게만 ~이력 이라고 명명한다. 


4. 이력관리 모델 형태/유형

- 이력관리 유형(레벨)
 1) 엔터티 레벨 (스냅샷)
   *장: 변경 시점의 다른 속성 값 파악 쉽다, 설계가 쉽다. 
   *단: 공간낭비, 어떤속성이 변경되었는지 1row 만 가지고 알수없다
   원천 형상 바뀌면 이력도 변경 해줘야 함
   자식이 있다면 스냅샷 

 2) 속성 레벨
   *장: 공간 절약, 무엇이 변경된 속성인지 파악 쉽다, 원천형상에 독립적 => 컬럼추가 필요 X
   *단: 변경시점의 다른속성값 알기 어려워. 원천테이블의 이력요건 속성이 추가되면 비효율 증가 

* 추가적 방식(vertical) 
 - 종(vertical)테이블 방식
    
 - 통합이력 
   *장: 업무변경에 유연하다
   *단: 구조가 데이터가 되어 파악 쉽지않다 

 3) 속성그룹 레벨
   같이사용되는 속성들 묶어서 관리 
   *장: 비교적 공간 절약, 
  
* 원천이 종속이면 이력도 종속 
 
 
- 이력관리 형태 
  1) 점이력 
변경시점만 관리 
특정시점의 값 찾기 어려움 

ex)   
SELECT A.기관코드, A.기관거래등급
  FROM 기관정보 A, 
     ( SELECT 기관코드, MAX(적용일자)
 FROM 기관정보 
WHERE 적용일자 <='20080701'
GROUP BY 기관코드 
  )B
 WHERE A.기관코드 = B.기관코드 
   AND A.적용일자 = B.적용일자 
;   

  2) 선분이력
시작시점/종료시점 관리 
특정시점의 값 찾는 것에 유리 

SELECT 기관코드, A.기관거래등급
 FROM 기관정보 A
WHERE '20081201' BETWEEN 시작일자 AND 종료일자 
;

선분이라는 것은 시작점,끝점이 이어진 2차원 형태인데 현재의 RDB 에서는 이를 구현할수 없다
(xmltype 도 있는데 선분타입이라는 것을 못만들 이유는 없을것 같다)
편의상 시작점, 끝점을 속성으로 만들어 선분을 구현했으나(흉내냈으나) unique 제약조건 등을 걸수가 없다.
이력에서 사용하는 선분은 겹치는 지점없이 이어져야(unique 해야) 하지만 이를 DB에선 표현 못함.
겹치거나 누락되는 지점이 발생되는것을 제약조건 등으로 막을수 없다. 
 
 * 선분이력의 자식 => 상속되지 않는 시작/종료일자 속성
 pk에 컬럼추가를 할때 시작 vs 종료  무엇을 추가를 할까 => 종료 : only 성능관점 
 
  - pk결정
  부모pk + 1) 종료일자
                 2) 시작일자 
                 3) 순번

논리적으로는 부모pk속성 + 시작,종료속성 모두를 상속해야 함  
 * 중복 row 는 존재하지 않는다. => 부모에 존재한 row 는 자식에 나오지 말아야함
   

반응형

'생계 > DA' 카테고리의 다른 글

모델링에 대한 생각  (0) 2023.12.27
RDBMS 에서의 관계 라는 것  (0) 2023.12.12
엔터티 통합과 분리  (0) 2023.12.09
엔터티 유형 분류  (0) 2023.11.29
논리 데이터 모델링 절차  (0) 2021.10.16
Posted by 돌고래트레이너
생계/DA2023. 12. 9. 21:33


데이터 모델링에서 엔터티 통합과 분리는 다음과 같은 경우에 수행한다 

# 엔터티 통합

1. 데이터의 성격(주제)이 유사한 경우
2. 식별자가 동일하면서 유사한 속성이 존재하는 경우
3. 식별자는 다르지만 기초 속성이 유사한 경우

통합을 고려할 때는 다음 조건을 모두 만족해야 한다
- 별개의 요건으로 사용되지 않고 주로 같이 조회된다
- 통합해서 성능 문제를 일으키지 않는다
- 현행 데이터가 존재하며 마이그레이션하는 데 문제가 없다

# 엔터티 통합의 주요 장점

1. 확장성 향상: 비슷한 유형의 업무 발생시 스키마 변경을 최소화하면서 코드 값 등의 인스턴스 추가로 업무 수용 가능
2. 유지보수 효율성: 엔터티 개수가 감소하여 데이터베이스의 유지보수가 쉬워집니다
3. 개발 용이성: 엔터티 통합에 따른 배타 관계 해소로 액세스 경로의 효율성이 향상되고, 단순한 SQL 작성 가능
4. 모델의 단순성, 가독성 향상: 슈퍼타입, 서브타입에서 발생하는 비즈니스 요건(관계)를 명확히 표현할 수 있다
5. 조인 발생 최소화: 정보가 한 곳에 집약되어 있어 조인 발생을 최소화하여 성능 저하를 예방 가능


# 엔터티 분리

1. 속성에 대한 제약 조건을 정확하게 지정해야 하는 중요한 데이터 값을 입력해야 할 경우
2. 엔터티에 속한 속성이 많아 성능이나 관리 측면에서 좋지 않은 영향을 미칠 때
3. 사용 빈도에 따라 자주 사용되지 않는 속성이나 덜 중요한 속성을 분리할 때
 

반응형

'생계 > DA' 카테고리의 다른 글

RDBMS 에서의 관계 라는 것  (0) 2023.12.12
이력 모델  (0) 2023.12.09
엔터티 유형 분류  (0) 2023.11.29
논리 데이터 모델링 절차  (0) 2021.10.16
데이터 표준화 관련 (용어 단어 도메인 코드)  (0) 2020.01.30
Posted by 돌고래트레이너
정보/블로그 IT 팁2023. 12. 6. 00:38

최근 쿠팡에서 구매한 Free DOS 레노버 노트북 에  윈도우즈 11 설치하기

 

 

원래는 전에 사용하던 윈도우10 부팅디스크가 있어서 그걸 설치하려고 했으나,

레노버 공홈에서 내가 구매한 모델이 윈도우10 드라이버를 제공하지 않는 것이 많아서 11설치로 변경하기로 함.

아래 글을 따라가면서 설치하는 것을 알아보자.

 

1. 공홈에서 윈도우즈 11 다운받아 부팅디스크 만들기

 

부팅디스크 용으로 사용할 USB 를 준비하고 포맷하기. (최소 10G 이상)

- 마이크로 소프트 공홈에서 win11 설치미디어 다운받기.

https://www.microsoft.com/ko-kr/software-download/windows11
Windows 11 설치 미디어 만들기 => 지금 다운로드 클릭

다운받은 파일 "MediaCreationTool_Win11_23H2.exe" 를 실행

 

2. lenovo 랜드라이버 다운받기 

아래 레노버 홈페이지 링크로 가서 모델명을 입력하자
https://pcsupport.lenovo.com/kr/ko
pc서포트 보기 => 제품명보기 16IAH8 => 다운로드 => 수동업데이트 => 드라이버선택
=> 네트워킹:무선랜 

 


윈도우 설치후 무선랜만 잡히면 나머지 드라이버들은 인터넷 연결된 상태에서 설치할수 있으니 

일단은 무선랜 드라이버만 다운받자. 

 

3. 설치미디어(USB) 로 부팅시키기

 1번 과정에서 만든 부팅디스크를 새로 설치할 노트북에 꽂고 재부팅을 한다. 

 F1 키를 여러번 눌러서 BIOS 화면으로 진입하자.

configuration 에서 화면을 밑으로 쭉 내리면 부팅순서를 바꿀수있다. 

부팅순서를 USB 로 변경을 하고 빠져나온다.

** 추가로 Hotkey mode 로 되어있다면 disable 로 바꿔준다.

키보드 상단의 F로 시작하는 키들을 누르면 기능들이 동작해서 불편하다. 

hotkey disable 모드에서는 Fn 키와 F1/2/3.. 키를 같이 눌러야 동작한다.  

 

4. 윈도우 설치 

윈도우 설치는 간단하다. 

라이센스가 있으면 입력하고, 없으면 넘어가자. 나중에 입력하면 된다. 

인터넷 연결이 안된상태로 계속 설치를 진행한다. 

 

5. 파티션 나누기

윈도우 설치가 완료되었다. 

만약 디스크가 한개로만 구성이 되었다면 파티션 나누기로 디스크를 나누자.

C 드라이브는 윈도우, 프로그램 파일 용으로 사용하고 

D 드라이브는 개인적, 업무적 용도의 파일들을 보관하는 용도로 사용하자. 

윈도우는 2~30 GB 정도면 충분한데 C 드라이브 공간이 부족해지면 컴퓨터가 느려질수 있다.

여유있게 100G 이상을 잡는게 좋다.  

화면 하단의 윈도우 표시에 마우스를 올려놓고 우클릭을 하면 메뉴가 나오는데 "디스크 관리"를 선택한다.

 

나의 경우는 500G 를 하나의 디스크가 사용중이었는데  C 드라이브를 축소하고 할당되지 않은 볼륨을 

새 단순볼륨으로 만들어 주는것으로 디스크 파티션 작업은 끝난다. 

 

 

6. 드라이버 설치

 

  아까 무선랜만 설치했는데 다시 레노버 공홈에서 나머지들을 다운받자. 

https://pcsupport.lenovo.com/kr/ko

이번에는 자동업데이트를 선택 한다. 

어플리캐이션이 알아서 필요한 드라이버들을 설치해준다. 

 

이상 끗. 도움이 되었다면 따봉을 눌러주자. 

반응형
Posted by 돌고래트레이너
생계/DA2023. 11. 29. 17:54

엔터티는 모델링에서 기본에 해당하고 상당히 중요한 부분이다.

 

엔코아 식 분류
 - key : 최초부터 창조된 엔터티, 주로 데이터 발생의 주체나 목적어
 - main : 업무의 주요 행위 데이터를 발생시키는 주체
 - action : 실제 발생하는 내역 업무
 
김기창DA 님 분류
 - 기준엔터티
    업무의 기준이 되는 데이터를 관리하는 엔터티
    환율·우편번호·이자율·코드 등의 업무적으로 참조되는 데이터를 관리하는 엔터티
    RI 제약이 존재하는지 숙고해야.
    ex) 기준데이터가 바뀌면 참조하던 것들이 바뀌어야 하는가? 과거시점이니 놔두는가?
       
 - 실체엔터티
   실체의 존재(Existence)와 연관된 데이터를 관리
   실체가 발생시킨 데이터를 관리하지는 않는다. (ex. 실체가 고객일때 계약, 출금 등의 이벤트)
   인조 식별자가 집합의 성격을 더 직관적, 명확하게 해줌 ex) 고객번호 
 - 행위엔터티
   어떤 실체의 업무 행위나 활동에 의해서 생긴 원천(Raw) 데이터
   특징은 주 식별자가 복잡하다. 주로 업무식별자 
   하위 엔터티가 소수로 존재, 굳이 인조 식별자를 사용할 필요X
 - 가공엔터티
    원천데이터를 가공하여 생긴 데이터를 관리하는 엔터티. 집계, 요약, 임시 데이터를 관리하는 엔터티

출처: https://dataprofessional.tistory.com/21 

반응형

'생계 > DA' 카테고리의 다른 글

RDBMS 에서의 관계 라는 것  (0) 2023.12.12
이력 모델  (0) 2023.12.09
엔터티 통합과 분리  (0) 2023.12.09
논리 데이터 모델링 절차  (0) 2021.10.16
데이터 표준화 관련 (용어 단어 도메인 코드)  (0) 2020.01.30
Posted by 돌고래트레이너
생계/AWS2023. 11. 21. 15:07

 

 

인스턴스 유형 명명 규칙

Amazon EC2는 요구 사항에 가장 적합한 유형을 선택할 수 있도록 다양한 인스턴스 유형을 제공합니다. 
인스턴스 유형 이름은 패밀리, 세대, 프로세서 패밀리, 추가 기능 및 크기를 기준으로 지정됩니다. 
인스턴스 유형 이름의 첫 번째 자리는 인스턴스 패밀리를 나타냅니다(예: c). 
두 번째 자리는 인스턴스 세대를 나타냅니다(예: 7). 예를 들어 세 번째 위치는 프로세서 패밀리를 나타냅니다(예: g). 
마침표 앞의 나머지 문자는 인스턴스 스토어 볼륨과 같은 추가 기능을 나타냅니다. 마침표(.) 뒤는 인스턴스 크기(예: small 또는 4xlarge, 베어 메탈의 경우 metal)입니다.




# 인스턴스 패밀리
C – 컴퓨팅 최적화
D - 고밀도 스토리지
F - FPGA
G - 그래픽 집약적
Hpc – 고성능 컴퓨팅
I – 스토리지 최적화
Inf – AWS Inferentia
M – 범용
Mac – macOS
P – GPU 가속
R – 메모리 최적화
T – 버스트 가능한 성능
Trn – AWS Trainium
U – 고용량 메모리
VT - 비디오 트랜스코딩
X – 메모리 집약적

# 프로세서 패밀리
a - AMD 프로세서
g – AWS Graviton 프로세서
i - 인텔 프로세서

# 추가 기능
d – 인스턴스 스토어 볼륨
n - 네트워크 및 EBS 최적화
e - 추가 스토리지 또는 메모리
z - 고성능
flex – Flex 인스턴스

 

 

참조 : https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/instance-types.html#instance-type-names

 

Amazon EC2 인스턴스 유형 - Amazon Elastic Compute Cloud

Amazon EC2 인스턴스 유형 인스턴스를 시작할 때 지정하는 인스턴스 유형에 따라 인스턴스에 사용되는 호스트 컴퓨터의 하드웨어가 결정됩니다. 각 인스턴스 유형은 서로 다른 컴퓨팅, 메모리, 스

docs.aws.amazon.com

 

AWS instance class 에 따른 제약 사항 (r7g) 

https://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Managing.Performance.html 기반 편집

반응형
Posted by 돌고래트레이너
생계/MySQL2023. 11. 6. 17:50

mysql 자주쓰는 함수 정리해보자 

1) 문자열 

SELECT SUBSTR(STMT,2,3)                  -- 문자열 자르기
            , CHAR_LENGTH(STMT)            -- 문자열길이
            , LENGTH(STMT)                         -- 문자열길이 (byte)
            , REVERSE(STMT)                      -- 거꾸로 출력
            , CONCAT(STMT,'AAA','!@#')      -- 문자열 붙이기 ||
  FROM (
               SELECT 'ABC테스트123!@#' STMT FROM DUAL;
              )A;

2) 날짜 

- 현재시간 

select now()                  -- sysdate
  , curdate()                    -- trunc(sysdate)
 , date_add(now(), interval 1 second)   -- 기준시간 + 1초 
 , date_add(now(), interval 1 minute)    -- 기준시간 + 1분  
 , date_add(now(), interval 1 hour)        -- 기준시간 + 1시간  
 , date_add(now(), interval 1 day)        -- 기준시간 + 1일
 , date_add(now(), interval 1 month)    -- 기준시간 + 1달 
 , date_add(now(), interval 1 year)       -- 기준시간 + 1년
 , date_sub(now(), interval 1 second)
 , date_sub(now(), interval 1 minute)
 , date_sub(now(), interval 1 hour)
 , date_sub(now(), interval 1 day)
 , date_sub(now(), interval 1 month)
 , date_sub(now(), interval 1 year)
 , date_format(now(), '%Y%m%d%H%i%s')  -- 시간을 문자열로
 , str_to_date('20241119', '%Y%m%d%H%i%s')   -- 문자열을 시간으로 
  from dual
;
  

반응형
Posted by 돌고래트레이너
생계/AWS2023. 11. 6. 11:18

 

EC2 : Elastic Compute Cloud. Iaas 로 AWS에서 제공하는 서버형태

RDS : Relational Database Service. DBaas 로 AWS에서 제공하는 DB서비스  

EBS : (Elastic Block Store) : EC2용으로 제공하는 확장 가능한 고성능 블록 스토리지 서비스. 
AMI : (Amazon Machine Image)  EC2에 연결된 모든 EBS volume 의 동시 백업
Snapshot : 선택한 EBS volume 만을 백업 

프로비저닝 : 사용자 요구에 맞게 시스템 자원을 할당, 배치, 배포 해두었다가 필요시 즉시 사용가능 상태로 미리 준비해두는것 
S3 : (simple storage service)
AWS IAM : aws Identity and Access Management)
WAP : (wireless application protocol)
WAF : (web application firewall) 

ELB : elastic load balancer
 

베어메탈 : 가상화 기술을 사용하지 않고 물리적으로 분리된 CPU, 메모리 등의 컴퓨팅 자원을 단독으로 할당 받아 사용할 수 있는 고성능 클라우드 컴퓨팅 서비스

Elastic 이란 말이 자주 나오는데 찰랑이는 머릿결로 유명한 카피문구 "엘라스틴 했어요" 라는 말처럼

탄력있고 유연하게 서비스를 제공한다는 것이 클라우드 컴퓨팅의 가장 큰 레거시 환경과의 차이점이다. 

blue-green-deployment (블루그린 배포) : AWS에서 제공하는 무중단 배포 기법 (blue : product / green : staging)

cut-over : 신규 시스템으로 전환

리전(Region) : AWS 를 서비스 하는 단위 지역  ex) 서울

AZ (Availability Zone) : 가용영역, 하나의 리전 내에 위치한 IDC  ex) seoul 리전의 목동, 일산 등

Edge location : AWS의 CDN 서비스인 CloudFront 를 위한 캐시서버들의 모음

반응형
Posted by 돌고래트레이너
생계/MySQL2023. 10. 23. 18:01

mysql 에서 DB정보들 확인하는 법 

1) TABLES  
- show tables from dbname like '%ABC' => 테이블 리스트 
- show create table TABLE_NAME; => DDL 확인
- show columns from TABLE_NAME; == desc TABLE_NAME
- show table status from dbname like '%ABC' => table info
 * 참조제약조건
 select constraint_name, table_name
   from information_schema.referential_constraints
  where constraint_schema='SCHEMA_NAME'
    and referenced_table_name='TABLE_NAME';


2) USER 
- select * from mysql.user => 유저리스트 
- show grants for 'user'@'ip'; => 권한 확인 

3) DB 
- show variables like '%server%'
- select database(); => 현재접속 DB
- select user();    => 현재접속 user 
- select version(); => 버전정보 == show variables like 'version'.
- show processlist => select * from performance_schema.processlist;

- show events => select * from information_schema.events;

 

반응형
Posted by 돌고래트레이너
생계/Oracle2023. 9. 20. 15:01

1) test 유저 생성

create user test identified by "Passw0rd";
grant connect to test;

2) wallet 용 tns alias 추가 
cd $ORACLE_HOME/network/admin
vi tnsnames.ora

WAL_TEST = 
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=xxx.xx.xx.xxx)(PORT=1521))
)
(CONNECT_DATE=
(SERVICE_NAME=DFS)(SERVER=DEDICATED)
)
)


3) conn script 

cd /home/oracle/

-- vi p_test.sql
conn test/"Passw0rd" @WAL_TEST
show user;
select count(*) from all_objects;
exit;

-- vi np_test.sql
conn /@WAL_TEST
show user;
select count(*) from all_objects;
exit;


4) make wallet

-- wallet 저장 디렉토리 생성
mkdir $ORACLE_HOME/network/admin/wallet

-- wallet 생성, wallet 패스워드 입력
orapki wallet create -wallet "wallet 디렉토리" -auto_login_local

-- credential 생성, alias, 계정/비번 wallet 패스워드 입력 
mkstore -wrl "wallet 디렉토리" -createCredential WAL_TEST test Passw0rd

=> wallet 비밀번호 입력 

-- sqlnet.ora 에 wallet dir 추가 

cd $ORACLE_HOME/network/admin

vi sqlnet.ora

WALLET_LOCATION=
(SOURCE=
(METHOD=FILE)
(METHOD_DATA=
(DIRECTORY= "wallet 디렉토리")
))

SQLNET.WALLET_OVERRIDE = TRUE
SSL_CLIENT_AUTHENTICATION = FALSE
SSL_VERSION = 0

5) 실행

cd /home/oracle/

ss
@p_test

@np_test


-- ### wallet 관리 #######

select *
  from v$encryption_wallet
;


-- credential list 확인 

mkstore -wrl "wallet 디렉토리" -listCredential


-- credential list 삭제 
mkstore -wrl "wallet 디렉토리" -deleteCredential WAL_TEST


-- credential 비번 수정 
mkstore -wrl "wallet 디렉토리" -modifyCredential WAL_TEST test pass1234

-- wallet 비번 수정 
orapki wallet change_pwd -wallet "wallet 디렉토리" -oldpwd "Passw0rd" -newpwd "oracle123"


-- wallet 삭제 
rm *wallet*

반응형
Posted by 돌고래트레이너
정보/블로그 IT 팁2023. 9. 9. 18:08

 
 
최근에 또 다시 애드센스 수익이 100불을 달성하여 수익화(출금)했습니다. 
그래서 이를 기념하고자.. 이런저런 생각과 함께 갈무리 해 봅니다.


 
아래는 저의 애드센스 이력입니다..  

 - 2017년  9월 6일 첫 게시글 작성,
 - 2017년 11월 애드고시 패스 
 - 2018년  4월 애드센스 주소인증 
 - 2020년 01월 애드센스 100불 달성
 - 2023년 08월 애드센스 100불 달성
 - 2023년 09월 한국통장에 126333 원 입금 
아시는 분은 아시겠지만 병아리 눈물을 수년간 모아 100 불 만드는 하층민 블로거입니다.
 

  •  최근 블로그 운영 

블로그 개설 후 초기에는 열정적으로 글을 썼던것 같습니다. 
그 당시에는 IT 보다는 일상, 리뷰가 주된 내용 이었던 것 같습니다. 
그 중에는 스스로도 '글 잘썼네.' 라는 생각이 들면서 반복해서 보게되는 글도 있었습니다. 
그러다가 내가 쓰고 싶은 글과 사람들이 보고싶어하는 글이 다르다는걸 깨닫게 된 순간도 있었구요..
2018년 즈음에는 유튜브 붐이 일면서 많은 유명블로거들도 그쪽으로 넘어갔던것 같습니다. 
저도 한때 잠깐 고민해봤지만.. 결국 귀차니즘을 이기지 못하고 계속 글만 쓰고 있네요..
1차 수익을 내고 난 후로는 새글을 쓰는 빈도도 줄고 열정도 많이 감소한것에 비하면
애드센스의 수익속도는 별 차이가 없는것 같네요. 
구글신이 잘하는 사람에게는 채찍질을 한다고 하는데 저처럼 뒤처진 학생은 포기안하게 붙잡아놓는듯한 느낌입니다. 

최근에는 IT 관련 글들을 주로 업로드 했더니 어느덧 조회수 상위도 일상이 아닌 IT 글들이 대부분이네요.. 
수익과 상관없이 나에게도 도움이 되는 방향으로 에너지를 쓰자는 생각을 하니 이렇게 운영되고 있습니다. 
 

  •  향후 운영에 대한 생각

그냥 저라는 사람은 글쓰는것을 좋아하는 사람인것 같습니다. 
이전에도 글을 써왔고, 돈을 준다니까 티스토리에 글을 썼고, 
언젠간 티스토리가 운영을 중단할거 같긴한데 그전까진 쭉 이곳에 글을 쓰지 않을까 싶습니다. 
아마추어 블로거인 저의 글들을 읽기 위해 방문해주신 모든 방문객들에게 감사드립니다. 
특히 광고를 클릭해주신 모든 분들! 앞날에 축복과 행운만 가득하기를 기도드리며 급하게 글을 마무리합니다. 



반응형
Posted by 돌고래트레이너